我正在编写一个宏来打开用户选择的文件,复制其中的所有数据并将其粘贴到已打开的另一个工作簿中 . 代码片段如下所示:
Windows(fileToClose).Activate
ActiveSheet.Range("A1").EntireRow.Delete
ActiveSheet.Range("A1:G1", Selection.End(xlDown)).Select
Selection.Copy
ActiveWindow.Close SaveChanges:=False
Windows(fileKeepOpen).Activate
Sheets("DATA").Select
ActiveSheet.Range("B2:H2", Selection.End(xlDown)).Clear
ActiveSheet.Range("B2").Select
ActiveSheet.Paste
它对选择的第一列起作用很好:它只获取第一个值并将其粘贴到目标列的任何位置 . 例如,如果选择的第一列中的第一个单元格包含“A”而第二个单元格包含“B”,则目标列将填充“A” . 但对于第二列,没有任何问题 .
PasteSpecial根本不起作用(每列都有不同的数据格式,看起来Excel不希望我将所有内容都粘贴为值,因为它一直给我1004错误) .
有任何想法吗 ?
1 回答
我不知道你有什么样的数据,但这应该可以解决问题:
如果不能正常工作,请告诉我们原因! ;)