我需要复制不同列中的数据,这些列不相邻并且行数可变(但该变量的每列值相同)。
到目前为止,我的代码如下:
Set MyXL = CreateObject("Excel.Application")
MyXL.Workbooks.Add
MyXL.Worksheets(1).Name = SheetName
Set shtData = Worksheets("Data")
rngDataRowCount = shtData.Range("A1048576").End(xlUp).Row
Set rngData = shtData.Range("A1:I" & rngDataRowCount)
rngData.Copy
MyXL.Worksheets(SheetName).Activate
MyXL.Worksheets(SheetName).Paste
Range("A1").Select
只要列彼此相邻但不允许我添加其他列,它就可以正常工作。
我希望我可以做类似的事情:
Set rngData = shtData.Range("A1:I, N1:N, P1:R" & rngDataRowCount)
但这个说法失败了。或者有什么方法可以设置多个范围然后附加到剪贴板?当然,任何帮助都会受到赞赏。
编辑:为了澄清我想要实现的目标,假设我有下表:
_________________________________________________________
| col1 | col2 | col3 | col4 | col5 | col6 | col7 | col8 |
_________________________________________________________
| q | w | e | r | t | y | u | i |
_________________________________________________________
| q | w | e | r | t | y | u | i |
_________________________________________________________
我希望能够选择一个范围,比如 col1、col2、col5 和 col8,以便它一次性复制这些列中的所有填充单元格,以便粘贴给我这个:
_____________________________
| col1 | col2 | col5 | col8 |
_____________________________
| q | w | t | i |
_____________________________
| q | w | t | i |
_____________________________