Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/performance/5.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
希望编写vba代码将两个Excel工作表中的数据合并到一个工作表中_Excel_Vba - Fatal编程技术网

希望编写vba代码将两个Excel工作表中的数据合并到一个工作表中

希望编写vba代码将两个Excel工作表中的数据合并到一个工作表中,excel,vba,Excel,Vba,我知道这个问题很广泛,但我很感激你能给予我的任何帮助 手头的任务是从一个非常凌乱的工作表(称为“Monkey”)中提取数据,并将其排序到另一个工作表(称为“Master”)中。有一列名为“name”,这是两个电子表格之间唯一的常量。我想写一个宏,它将取“constant”列的第一行,在Monkey的constant列中找到同一行,然后开始复制粘贴相关信息 到目前为止,我得到的是: Sub Test() Dim Rng As Range Dim i As Long i =

我知道这个问题很广泛,但我很感激你能给予我的任何帮助

手头的任务是从一个非常凌乱的工作表(称为“Monkey”)中提取数据,并将其排序到另一个工作表(称为“Master”)中。有一列名为“name”,这是两个电子表格之间唯一的常量。我想写一个宏,它将取“constant”列的第一行,在Monkey的constant列中找到同一行,然后开始复制粘贴相关信息

到目前为止,我得到的是:

Sub Test()
    Dim Rng As Range
    Dim i As Long

    i = 2
    Application.ScreenUpdating = True
    While i <= 133
        Set Rng = Range("E" & i)
        If Rng = Worksheets("Monkey").Rng(, -16) Then
            Range("E138").Select
            ActiveCell.FormulaR1C1 = "Success!"
        Else
            i = i + 1
        End If
    Wend
End Sub
子测试()
变暗Rng As范围
我想我会坚持多久
i=2
Application.ScreenUpdating=True

而我你可以这样开始:

  • 定义Master和Monkey的常量名称范围
  • 对于Master的每个值,搜索等效的monkey
  • 如果发现猴子等价物,做你想做的

    Public Sub Test()
        Dim cellMaster As Range, cellMonkey As Range
        Dim rngMasterCst As Range, rngMonkeyCst As Range
    
        ' Set constants columns from master and monkey
        Set rngMasterCst = Worksheets("master").Range("A1:A500")
        Set rngMonkeyCst = Worksheets("monkey").Range("A1:A500")
    
        ' For each constant of master
        For Each cellMaster In rngMasterCst
            ' Search for the value in Monkey
            Set cellMonkey = rngMonkeyCst.Find(cellMaster, LookIn:=xlValues)
    
            ' if the value is find
            If Not cellMonkey Is Nothing Then
                ' Here cellMaster and cellMonkey have the same "constant name"
                ' Navigate in the row with the help of .Offset()
            End If
        Next
    End Sub
    
改进:

  • 在范围上使用.end(xlDown)查找最后一行,而不是将其设置为静态

谢谢!我找到了另一份工作,但这些信息非常有用。干杯