如下因素代码可以让我浏览多个不同的Excel文件,并将其粘贴在每个other.the低于单张excel文件具有相同的列名,但对他们有不同的数据和工作正常,我问题是我需要它时,它粘贴一个文件,它必须写它的每个文件的文件的名称它的粘贴。我的excel文件的名称被称为Familycar和其他excel的文件名称被称为smartcar如何插入文件名
例如
EG1 CarName,燃料,颜色
宝马,汽油,红
福特,柴油,绿色
马自达,汽油,灰色
EG2 CarName,燃料,颜色
奥斯汀,汽油,蓝
大众,柴油,白
奥迪,汽油,黑色
结果
CarName,燃料,颜色,文件名
宝马,汽油,红色,的FamilyCar
福特,柴油,绿色的FamilyCar
Mazda,Petrol,Grey,Familycar
奥斯汀,汽油,蓝色,smatrtcar
大众,柴油,白,智能车
奥迪,汽油,黑色,智能车
Sub Button5_Click()
Dim fileStr As Variant
Dim wbk1 As Workbook, wbk2 As Workbook
Dim ws1 As Worksheet
fileStr = Application.GetOpenFilename(FileFilter:="microsoft excel files (*.xlsx), *.xlsx", Title:="Get File", MultiSelect:=True)
Set wbk1 = ActiveWorkbook
Set ws1 = wbk1.Sheets("Sheet3")
'handling first file seperately
MsgBox fileStr(1), , GetFileName(CStr(fileStr(1)))
Set wbk2 = Workbooks.Open(fileStr(1))
wbk2.Sheets(1).UsedRange.Copy ws1.Cells(ws1.Range("A" & Rows.Count).End(xlUp).Row + 2, 1)
wbk2.Close
For i = 2 To UBound(fileStr)
MsgBox fileStr(i), , GetFileName(CStr(fileStr(i)))
Set wbk2 = Workbooks.Open(fileStr(i))
wbk2.Sheets(1).UsedRange.Offset(1, 0).Copy ws1.Cells(ws1.Range("A" & Rows.Count).End(xlUp).Row + 2, 1)
wbk2.Close
Next i
由于它的工作...但它不会离开文件名文件之间的空白空间... – Cwala