我需要使用VBScript将一个Excel工作表的两列复制到另一个Excel工作表的相同列。这些列彼此相邻 我正在使用以下代码,我通过一些搜索获得并改为我的需要。如果要复制一列但它没有将两列从一个Excel复制到另一个列,它工作正常。
Set objExcel = CreateObject("Excel.Application")
objExcel.Visible = True
Set objWorkbook = objExcel.Workbooks.Open("C:\Desktop\Customer.xlsx")
Set objWorkbook2 = objExcel.Workbooks.Open("C:\Documents\Folder1\Test.xlsx")
Set objWorksheet = objWorkbook.Worksheets(1)
objWorksheet.Activate
Set objRange = objWorkSheet.Range("A1").EntireColumn
Set objRange = objWorkSheet.Range("B1").EntireColumn
objRange.Copy
Set objWorksheet2 = objWorkbook2.Worksheets(1)
objWorksheet.Activate
Set objRange = objWorkSheet2.Range("A1")
Set objRange = objWorkSheet2.Range("B1")
objWorksheet.Paste(objRange)
我的输入Excel文件是:
Customer Number Customer Name 1001 Wendy 1002 Subway 1003 McDonalds
我的输出Excel文件具有相同的列名,但目前在这些列中没有值。从输入Excel复制后,我应该与第二个Excel文件中的这些列具有相同的值。
答案 0 :(得分:0)
Set objRange = objWorkSheet.Range("A1").EntireColumn Set objRange = objWorkSheet.Range("B1").EntireColumn
以上两个语句首先选择A列,然后选择B列。要选择2列,请使用以下内容:
Set objRange = objWorkSheet.Range("A:B").EntireColumn
您甚至不需要将选择分配给变量。只需调用对象上的方法:
objWorkSheet.Range("A:B").EntireColumn.Copy
objWorkSheet2.Paste objWorkSheet2.Range("A1")