2016-10-25 134 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