VBA代码,用于根据列标题将数据从一张图纸复制和粘贴到另一张图纸

VBA代码,用于根据列标题将数据从一张图纸复制和粘贴到另一张图纸,vba,header,match,copy-paste,Vba,Header,Match,Copy Paste,在工作表1中,workbook1单元格A1:E1有列标题,但没有数据。在工作簿2的第1页上,数据范围为A1:AC5000。我想在此工作簿中挑出与workbook1上的标题匹配的列,将它们复制并粘贴到workbook1中的列标题下。有人能帮我把c调暗吗 变暗Rng As范围 作为整数的Dim i Dim r As Range With wsCopyFrom1.Range("a1").CurrentRegion For Each r In wsCopyTo1a.Rang

在工作表1中,workbook1单元格A1:E1有列标题,但没有数据。在工作簿2的第1页上,数据范围为A1:AC5000。我想在此工作簿中挑出与workbook1上的标题匹配的列,将它们复制并粘贴到workbook1中的列标题下。有人能帮我把c调暗吗 变暗Rng As范围 作为整数的Dim i

     Dim r As Range
     With wsCopyFrom1.Range("a1").CurrentRegion
     For Each r In wsCopyTo1a.Range("a1:g1")
      Set c = .Rows(1).Find(r.Value, , , xlWhole, , 0)
            If Not c Is Nothing Then
                .Columns(c.Column).Copy
                r.PasteSpecial xlPasteValues

            End If
        Next
        Application.CutCopyMode = False
     End With

这很管用

我是VBA新手,因此我提出的问题对精通VBA的人来说似乎很糟糕,但对我来说却不是。但是你似乎没有做过任何研究或付出过很多努力?相反,我整个上午都在浏览这些论坛,以找到一个可以解决问题的代码。但是,它们都不起作用这是最后一次尝试:Dim header As Range,headers As Range Set headers=wsCopyFrom1.RangeA1:AR1,如果GetHeaderColumnheader.Value>0,则为HeaderColumnHeader.Offset1,0,header.EndxlDown.Copy Destination:=wsCopyTo1a.Cells2,GetHeaderColumnheader.Value End If Next End子函数GetHeaderColumnheader As String As Integer Dim headers As Range Set headers=wsCopyTo1a.RangeA1:E1 GetHeaderColumn=IIFisNumericaApplication.Matchheader,headers,0,Application.Matchheader,headers,0,0 End函数