Wie mehrere Zellen aus mehreren Excel-Dateien auslesen und in eine neue Datei untereinander einfügen?
Hallo liebes Forum,
Ich möchte ein Excel Makro basteln, das in eine Datei Zeileninhalte aus mehreren Excel-Dateien einfügt. Nach langem Probieren und Abgleichen mit vorhandenen Makros habe ich noch keine Lösung gefunden... Ich hoffe hier kann mir jemand helfen.
Die einzelnen Excel-Dateien sehen so aus, dass sie Werte von H7 bis H24, einen Wert in C5 und evtl Werte von J7 bis unbestimmt haben.
Diese Werte sollen dann in einer neuen Tabelle jeweils untereinander aufgelistet werden ab Zeile 3.
Wenn möglich die Werte von Spalte H in Spalte A, die Werte von Spalte C in Spalte B und die Werte von Spalte J in Spalte C anzeigen lassen.
Für eure Unterstützung wäre ich euch sehr sehr dankbar!
Vielen Dank!
Grüße
Stacko22
Ich möchte ein Excel Makro basteln, das in eine Datei Zeileninhalte aus mehreren Excel-Dateien einfügt. Nach langem Probieren und Abgleichen mit vorhandenen Makros habe ich noch keine Lösung gefunden... Ich hoffe hier kann mir jemand helfen.
Die einzelnen Excel-Dateien sehen so aus, dass sie Werte von H7 bis H24, einen Wert in C5 und evtl Werte von J7 bis unbestimmt haben.
Diese Werte sollen dann in einer neuen Tabelle jeweils untereinander aufgelistet werden ab Zeile 3.
Wenn möglich die Werte von Spalte H in Spalte A, die Werte von Spalte C in Spalte B und die Werte von Spalte J in Spalte C anzeigen lassen.
Für eure Unterstützung wäre ich euch sehr sehr dankbar!
Vielen Dank!
Grüße
Stacko22
Please also mark the comments that contributed to the solution of the article
Content-Key: 562636
Url: https://administrator.de/contentid/562636
Printed on: April 26, 2024 at 03:04 o'clock
5 Comments
Latest comment
Kein Thema das man groß diskutieren müsste .
Fertig.
Sub Kopiere_von_Mappen()
On Error GoTo Failure
Const QUELLE = "D:\quelle"
Set wsTarget = Sheets(1)
With Application
.ScreenUpdating = False
.DisplayAlerts = False
End With
file = Dir(QUELLE & "\*.xlsx")
While file <> ""
With GetObject(QUELLE & "\" & file).Sheets(1)
.Range("H7:H24").Copy
wsTarget.Cells(Rows.Count, "A").End(xlUp).Offset(1, 0).PasteSpecial xlPasteValuesAndNumberFormats
.Range("C5").Copy
wsTarget.Cells(Rows.Count, "B").End(xlUp).Offset(1, 0).PasteSpecial xlPasteValuesAndNumberFormats
set rngEnd = .Cells(Rows.Count, "J").End(xlUp)
if rngEnd.Row > 6 then
.Range("J7",rngEnd).Copy
wsTarget.Cells(Rows.Count, "C").End(xlUp).Offset(1, 0).PasteSpecial xlPasteValuesAndNumberFormats
End if
.Parent.Close False
End With
file = Dir
Wend
Failure:
With Application
.CutCopyMode = False
.ScreenUpdating = True
.DisplayAlerts = True
End With
If Err.Number <> 0 Then
MsgBox "Error: " & Err.Description & " | " & Err.Source
End If
End Sub
Nach langem Probieren und Abgleichen mit vorhandenen Makros
Vielleicht wäre es besser VBA gleich vernünftig zu erlernen, statt sich nen Wurm zu suchen, dann erübrigen sich auch zukünftige Suchorgien weil man es beherrscht .Zitat von @stacko22:
Hallo cabrinha,
vielen Dank für die Antwort! Makro funktioniert super!
Im Wertebereich H7:H24 und J7:J24 variiert die Zeilenanzahl ab und zu. Also manchmal hab ich Werte von H7 bis H24 und manchmal nur von H7 bis H23 oder weniger! Gibt es eine Möglichkeit auch leere Wertebereiche einfach auszulassen und mit der nächsten Tabelle weiterzumachen?
Macht das Skript doch schon . Es ermittelt die letzte belegte Zelle in diesen Spalten und übernimmt nur die den Bereich bis zur letzten belegten Zelle. Wir wissen ja nicht wie deine Tabellen sonst aussehen.Hallo cabrinha,
vielen Dank für die Antwort! Makro funktioniert super!
Im Wertebereich H7:H24 und J7:J24 variiert die Zeilenanzahl ab und zu. Also manchmal hab ich Werte von H7 bis H24 und manchmal nur von H7 bis H23 oder weniger! Gibt es eine Möglichkeit auch leere Wertebereiche einfach auszulassen und mit der nächsten Tabelle weiterzumachen?
Zitat von @stacko22:
Ja das stimmt schon, aber manchmal steht in J7 bis J24 garnichts drin! Wird dieser Wertebereich in einer Tabellen dann einfach übersprungen?
Jepp!Ja das stimmt schon, aber manchmal steht in J7 bis J24 garnichts drin! Wird dieser Wertebereich in einer Tabellen dann einfach übersprungen?