我想从一个工作簿中选择特定的单元格,然后以特定的顺序将其粘贴到另一工作簿中。请原谅,因为这是我第一次使用excel进行编码。这看起来很琐碎。
Workbooks("201103 COST BREAKDOWN March 2011.xlsx").Worksheets("Summary").Range("D4,D8").Copy _
Workbooks("Classification Cost.xlsm").Worksheets("Sheet1").Range("D4,D8")
Workbooks("Classification Cost.xlsm").Worksheets("Sheet1").Range("G5,G11").Value = _
Workbooks("201103 COST BREAKDOWN March 2011.xlsx").Worksheets("Summary").Range("D4,D8").Value
我知道
“应用程序定义的错误或对象定义的错误”
答案 0 :(得分:0)
当.Copy
之类的多个非相邻单元格被多选时,您将无法"D4,D8"
进行复制,而您需要对D4执行复制操作,然后对D8执行另一个复制操作。
但是,如果您只想复制值(无格式),则可以执行以下操作:
Workbooks("Classification Cost.xlsm").Worksheets("Sheet1").Range("D4,D8").Value = _
Workbooks("201103 COST BREAKDOWN March 2011.xlsx").Worksheets("Summary").Range("D4,D8").Value
答案 1 :(得分:0)
对于第一行(复制),删除目标中的.Value
。预期范围
我认为您不能粘贴到不连续的范围。在这种情况下,每个单元格必须有1行。
第二个构造Range1.value = Range2.Value
也适用:没有不连续的范围,因此您必须将其设为2行