创build一个macros来复制列中的特定数据,并将数据粘贴到不同工作簿中的不同列中

我正在尝试创build一个macros,它在一个工作簿中select特定的列,然后在另一个工作簿中根据数据粘贴的列进行,因为这两个工作簿中的列是不同的。

我可以在工作簿1中select; 列C和工作簿2列Z3中并粘贴值; 但为此,我必须突出显示Workbook 1:C列中的所有值,然后运行macros。

我不知道如何创build一个macros,它可以自动执行,也可以用于多列。 下面我已经包含了select这些值的代码,

Range("C47:C581").Select Selection.Copy Windows("Workbook2.xls").Activate Range("Z3").Select Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False Windows("Workbook1.xlsm").Activate 

我不能够包含图像,所以我会在下面用示例来解释。 以下是练习册1表1。

 Column A Column B Column C Column 1 1 11 5555 2 2 22 4444 2 3 33 3333 

我想要创build一个macros来查找列A中的单元格数目(不包括标题)并将其粘贴到工作簿2列C中。 上面的代码只适用于指定的范围, 我已经尝试了NumberOfCells,但我不知道为什么这不起作用

你的代码和你的解释不匹配,所以这是你想要的猜测。 先备份你的文件。

这将从工作簿1,工作表1(不包括标题)中获取A列,并将其从工作簿C2复制到工作簿2,工作表1,C列。

 Sub SO() Dim lastRow As Long Dim ws1 As Worksheet Dim ws2 As Worksheet Set ws1 = Workbooks("workbook1.xlsm").WorkSheets("Sheet1") Set ws2 = Workbooks("workbook2.xlsm").WorkSheets("Sheet1") lastRow = ws1.Cells(ws1.Rows.Count, "A").End(xlUp).Row ws1.Range(Cells(2, 1), Cells(lastRow, 1)).Copy ws2.Range("C2").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False End Sub