gpt4 book ai didi

vba - 创建一个宏,复制列中的特定数据并将数据粘贴到不同工作簿的不同列中

转载 作者:行者123 更新时间:2023-12-04 20:13:44 25 4
gpt4 key购买 nike

我正在尝试创建一个宏,该宏选择一个工作簿中的特定列,然后根据粘贴数据的列在另一个工作簿中选择,因为两个工作簿中的列不同。

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

我不知道如何创建一个宏,它在点击时自动执行此操作,也适用于多列。下面我包含了在选择值时起作用的代码,

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

我无法包含图像,因此我将在下面使用示例进行解释。
以下是 Workbook 1 Sheet 1 的内容。
Column A    Column B    Column C    Column 
1 1 11 5555
2 2 22 4444
2 3 33 3333

我想创建一个宏来查找 A 列中的单元格数量(不包括标题)并将它们粘贴到 Workbook 2 Column C 中。我描述中的上述代码仅适用于指定范围;我已经尝试过 NumberOfCells 但我不确定为什么这不起作用

最佳答案

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

这从工作簿 1、工作表 1(不包括标题)中获取 A 列,并将其复制到工作簿 2、工作表 1、从单元格 C2 开始的 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

关于vba - 创建一个宏,复制列中的特定数据并将数据粘贴到不同工作簿的不同列中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32635771/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com