Ich habe versucht, Daten aus anderen Arbeitsmappen in ein Master-Arbeitsmappe zu extrahieren. Alle diese Arbeitsmappen wurden in einem Ordner gespeichert. Und ich wollte andere Arbeitsmappen automatisch nicht manuell öffnen. Die Daten, die ich extrahieren muss, sind nicht benachbarte Zellen und ich möchte, dass die aus jeder Quellarbeitsmappe extrahierten Daten in Zeilen in der Hauptarbeitsmappe angezeigt werden (weil ich eine Kopfzeile in Zeile 1 habe, also nach dem Extrahieren von Daten aus der ersten Arbeitsmappe und Einfügen in Zeile 2, die Daten aus der zweiten Arbeitsmappe extrahiert werden in Zeile 3 und so weiter)Bei der Verwendung von Transponieren festgefahren
Wie auch immer, wenn ich das Makro lief, blieb ich in Transpose stecken.
Unten ist mein Code
Sub LoopThroughDirectory()
Dim MyFile As String
Dim wkbSource As Workbook
Dim wkbTarget As Workbook
Dim erow As Single
Dim Filepath As String
Dim copyRange As Range
Dim cel As Range
Dim pasteRange As Range
Filepath = "C:\xxxxx\"
MyFile = Dir(Filepath)
Do While Len(MyFile) > 0
If MyFile = "Import Info.xlsm" Then GoTo NextFile
Set wkbTarget = Workbooks("Import Info.xlsm")
Set wkbSource = Workbooks.Open(Filepath & MyFile)
Set copyRange = wkbSource.Sheets("sheet1").Range("c3,f6,f9,f12,f15,f19,f21,f27,f30,f33,f37,f41")
Set pasteRange = wkbTarget.Sheets("sheet1").Range("a1")
For Each cel In copyRange
cel.Copy
ecolumn = wkbTarget.Sheets(1).Cells(1, Columns.Count).End(xlToLeft).Offset(0, 1).Column
wkbTarget.Worksheets("Sheet1").Paste Destination:=wkbTarget.Worksheets("Sheet1").Range(Cells(1, ecolumn).Address)
pasteRange.Cells(1, ecolumn).PasteSpecial xlPasteValues
Next
Application.CutCopyMode = False
wkbSource.Close
NextFile:
MyFile = Dir
Loop
End Sub
Was ich bisher getan haben:
- ich die Daten transponiert ich von der Quelle Arbeitsmappe extrahiert, aber sie waren in der Master-Arbeitsmappe nicht gezeigt wie das, was ich erwartet hatte . Alle von ihnen sind in Zeile 1
- Ich habe nicht viel Erfahrung in VBA und ich fühle mich wie der Code, den ich schrieb, um nicht benachbarte Zellen kopieren und transponieren in der Master-Arbeitsmappe macht die Schleife viel komplizierter. Aber ich weiß nicht, wo ich falsch gelaufen bin oder wie ich das beheben kann.
Bitte helfen Sie mir. Ich danke dir sehr!
Sie nie das 'row' Argument in Ihrem pasterange erhöhen. Wenn Sie möchten, dass die Informationen aus jedem Arbeitsblatt in einer eigenen Zeile stehen, sollten Sie das Argument 'row' jedes Mal erhöhen, wenn Sie eine neue Datei einlesen. –