2016-10-25 87 views
0

我有很多excel文件,我合并到1 excel文件中,我需要将列名称或标题放在第一行。我有3列:customerid,日期,预测。如何在VBA代码中的单元格A1,B1和C1上放置列名?谢谢。VBA excel列标题

Sub simpleXlsMerger() 
Dim bookList As Workbook 
Dim mergeObj As Object, dirObj As Object, filesObj As Object, everyObj As Object 
Application.ScreenUpdating = False 
Set mergeObj = CreateObject("Scripting.FileSystemObject") 

'change folder path of excel files here 
Set dirObj = mergeObj.Getfolder("directory\path") 
Set filesObj = dirObj.Files 
For Each everyObj In filesObj 
Set bookList = Workbooks.Open(everyObj) 

'change "A2" with cell reference of start point for every files here 
'for example "B3:IV" to merge all files start from columns B and rows 3 
'If you're files using more than IV column, change it to the latest column 
'Also change "A" column on "A65536" to the same column as start point 
Range("A2:C" & Range("A65536").End(xlUp).Row).Copy 
ThisWorkbook.Worksheets(1).Activate 

'Do not change the following column. It's not the same column as above 
Range("A65536").End(xlUp).Offset(1, 0).PasteSpecial 
Application.CutCopyMode = False 
bookList.Close 
Next 
End Sub 
+0

您只希望在A,B和C柱,即使你列A复制到每个工作簿中的IV? – Kyle

+0

@Kyle是的,只需要列A1,B1和C1。我只是将代码范围更改为A2:C – sharp

+4

Ummmm ... Range(“A1”)。Value =“customerid”'等等? – Comintern

回答

1

考虑:

Sub whatever() 
    Range("A1:C1").Value = Array("customerid", "date", "prediction") 
End Sub