在第三个文件中写入两个Excel文件的内容

时间:2015-05-04 06:59:30

标签: vba excel-vba excel

我对vba编程非常陌生,我想知道执行以下操作的最佳方法是什么:从两个Excel文件(从每个文件的特定列)读取数据并将此数据写入第三个Excel文件,首先写入第一个文件中包含的数据,然后写入第二个文件中包含的数据。下图说明了我想要做的事情:

enter image description here

如何点击命令按钮,而不打开两个第一个文件(我的意思是我不希望用户看到它们)。

1 个答案:

答案 0 :(得分:0)

你需要这样做

Workbooks.Open Filename:= "c:\myfile\FILE1.xls"FILE1.xls"
Workbooks.Open Filename:= "c:\myfile\FILE2.xls"

打开FILE1.xls和FILE.xls后,您可以创建或打开FILE3.xls, 在这种情况下,我们创建FILE3.xls

Dim wb As Workbook
Set wb = Workbooks.Add

在此之后您读取FILE1.xls和FILE2.xls中的数据,您可以使用WHILE或其他LOOP读取,或者使用新文件中的COPY和PASTE数据读取。 在这种情况下,我们看到了LOOP策略。

Dim i as Integer
Dim value as String
i=0
value = value = Workbooks("FILE1.xls").Worksheets("sheet1")..Range("B:B").Cells(i, 1) 


Workbooks("FILE1.xls").Worksheets("sheet1").Activate
while value <> ""

   Workbooks("FILE1.xls").Worksheets(2).Range("A:A").Cells(i, 1) = value    

  value = value = Workbooks("FILE1.xls").Worksheets("sheet1")..Range("B:B").Cells(i, 1) 

Wend

对“FILE2.xls”重复ste读取数据并写入“FILE3.xls” 在你和你关闭

 wb.SaveAs "c:\myfile\"FILE3.xls""
 wb.Close

关闭读取数据文件

Workbooks("FILE1.xls").Close
Workbooks("FILE2.xls").Close