Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 1.创建从工作表2中查找工作表1中的值的宏的步骤_Excel_Vba - Fatal编程技术网

Excel 1.创建从工作表2中查找工作表1中的值的宏的步骤

Excel 1.创建从工作表2中查找工作表1中的值的宏的步骤,excel,vba,Excel,Vba,Q.创建从表2查找表1中的值的宏 要查找第1页第11行至1000000行的“F”列中的值。 第1页第11至1000000行“C”列中的查找值条件为“仅具有内部颜色索引红色的单元格” 第2页第4至1000000行“C&D”列中的表数组 在工作表1中创建按钮并将此宏指定给按钮 VBA代码 Sub VA01() ' CREATING SALES ORDER Worksheets("sheet1").Range("C11:C1000000").Select finalrow

Q.创建从表2查找表1中的值的宏

  • 要查找第1页第11行至1000000行的“F”列中的值。
    • 第1页第11至1000000行“C”列中的查找值条件为“仅具有内部颜色索引红色的单元格”
    • 第2页第4至1000000行“C&D”列中的表数组
  • 在工作表1中创建按钮并将此宏指定给按钮 VBA代码

    Sub VA01()
        ' CREATING SALES ORDER
        Worksheets("sheet1").Range("C11:C1000000").Select
        finalrow = Cells(Rows.Count, 3).End(xlUp).Row
        For x = 11 To finalrow
            If Cells(x, 3).Interior.ColorIndex = 3 Then
                Cells(x, 6).Select
                ActiveCell.FormulaR1C1 = "=VLOOKUP(R11C3:R1000000C3,Sheet2!R4C3:R1000000C4,2,0)"
            End If 
        Next x
    End Sub
    

    运行此宏会挂起Excel并花费更多时间执行,它无法创建按钮。

    首先,我会丢失“选择”方法,这将需要大量时间和资源。另外,当代码after不使用此选择时,为什么要选择(“C11:C1000000”)范围?那么我可能会保留vlookup部分,但只保留值,因为它们不需要更新。这大概是:

    Sub VA01()
    ' CREATING SALES ORDER
    'Worksheets("sheet1").Range("C11:C1000000").Select
    finalrow = Cells(Rows.Count, 3).End(xlUp).Row
    For x = 11 To finalrow
        If Cells(x, 3).Interior.ColorIndex = 3 Then
            Cells(x, 6).FormulaR1C1 = "=VLOOKUP(R11C3:R1000000C3,Sheet2!R4C3:R1000000C4,2,0)"
            Cells(x, 6)=Cells(x, 6).Value
        End If 
    Next x
    End Sub
    

    @PassKit先生,感谢您的回复,为什么我无法将此宏分配给按钮pl。advice@PassKit主席先生,删除范围(“C11:C1000000”)与代码一致,但我必须将工作表(“sheet1”)放入代码中,因为我想获取表1中的值。此代码为OK@PassKit先生如果使用MACROVA01或SALESORDERVA01而不是VA01,添加按钮和分配此宏的问题已得到解决。谢谢