我有一个文件,名为vegetables_fruits
和4个其他文件:apple
,banana
,tomato
,cucumber
。在文件vegetables_fruits
我有一个名为List
的工作表,其中我折叠所有4个文件的名称(例如,单元格A2 = apple
,单元格A3 = banana
,单元格A4 = tomato
,单元格A5 = cucumber
)。除表List
我有床单banana
,tomato
和cucumber
,但我没有apple
。Excel VBA循环用于
因此,有必要从各个这4个文件的column A
粘贴到每片在vegetables_fruits
(例如,从文件apple
有必要复制column A
到文件“vegetables_fruits”到工作表“banane”;从文件“香蕉”有必要将column A
复制到vegetables_fruits
文件tomato
等)非常感谢您的帮助!
P.S.它需要创建一个For,但我不知道如何描述所有这些条件。
Sub CopyPaste()
Dim r As Variant
Dim a As Variant
Dim b As Integer
Dim nbcells As Integer
Dim ws As Worksheet
Worksheets("List").Activate
nbcells = Application.WorksheetFunction.CountA(Range("A2:A" & Range("A65536").End(xlUp).Row))
' === Create a new sheet ===
For r = 2 To nbcells
Sheets.Add After:=Sheets(Sheets.Count - 1)
Worksheets(r).Name = Worksheets("List").Cells(r + 1, 1).Value
Next r
' === DATA ===
For Each ws In Sheets
If ws.Name Like "*.xls*" Then
For a = 2 To nbcells
Windows(a).Activate
Range("B:B").SpecialCells(2).Copy
Workbooks("vegetables_fruits.xlsm").Activate
b = a + 1
If ws.Name = Worksheets("List").Cells(b, 1).Value Then
ws.Select
Range("A2").Select
ActiveSheet.Paste
End If
Next a
End If
Next
End Sub
'对于工作表中的每个工作表'都对工作簿做同样的事情。编辑:'对于application.workbooks'中的每个wb。 – findwindow
你觉得呢?我不会用勺子喂你。请付出一些努力。 – findwindow
结果不正确。两张第一张“香蕉”和“番茄”具有相同的值。 – Maria