3k Aufrufe
Gefragt in Tabellenkalkulation von
Hallo,
ich habe folgendes Problem zu lösen:

In nach Jahren unterschiedenen Verzeichnissen, liegen jeweils ca. 100 Workbooks die als "Name_Vorname_Jahr.xls" abgespeichert sind. Der Aufbau des 1. Tabellenblattes (Kostenbeitrag) ist in allen Dateien identisch.

Ich möchte nun immer bestimmte Zellen aus diesen Dateien auslesen in einer neuen Datei in Listenform zusammenführen. Benötigt werden nur die Zellen C3, E3, B33 und B34. Deren Inhalte sollen in der neu erstellten Datei zeilenweise ausgegeben werden:

Name|Vorname|Summe|Durchschnitt
_C3____E3_____B33_____B34___ des 1. Workbooks
_C3____E3_____B33_____B34___ des 2. Workbooks
_C3____E3_____B33_____B34___ des letzten Workbooks im Verzeichnis

Leider reichen meine VBA-Kenntnisse nicht aus, die hier im Forum beschriebenen Beispiele (z. B. https://supportnet.de/t/2243223) für meine Bedürfnisse umzustricken. Vielleicht ist jemand so nett, mir dabei behilflich zu sein?

Vielen Dank
Uwe

15 Antworten

0 Punkte
Beantwortet von coros Experte (4k Punkte)
Hallo Uwe,

lösche den Unterstrich hinter dem Wort Copy.

MfG,
Oliver
[sub]Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du[/sub]
[sup] ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.[/sup]
0 Punkte
Beantwortet von zulu_01 Einsteiger_in (33 Punkte)
Läuft jetzt zwar wieder ohne Fehler durch, jedoch stehen in den Ergebniszellen trotzdem keine Werte drin, sondern "=#BEZUG!"-Fehler.

Soll ich dir den Beispielordner vielleicht einmal gezipt schicken? Sind 831 KB.
0 Punkte
Beantwortet von coros Experte (4k Punkte)
Hallo Uwe,

sorry, Flüchtigkeitsfehler von mir. Schreibe überall dort, wo

.PasteSpecialsteht

.PasteSpecial Paste:=xlPasteValueshin, dann sollte es funktionieren.

MfG,
Oliver
[sub]Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du[/sub]
[sup] ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.[/sup]
0 Punkte
Beantwortet von zulu_01 Einsteiger_in (33 Punkte)
Icjh glaube, nun habe ich es, es fehlte noch "xlPasteValues"

wkbQuelldatei.Sheets(strQuellSheet).Range("C3").Copy
ThisWorkbook.Sheets(strZielSheet).Cells(lngFirstFreeRow, 1).PasteSpecial xlPasteValues

wkbQuelldatei.Sheets(strQuellSheet).Range("E3").Copy
ThisWorkbook.Sheets(strZielSheet).Cells(lngFirstFreeRow, 2).PasteSpecial xlPasteValues

wkbQuelldatei.Sheets(strQuellSheet).Range("B33").Copy
ThisWorkbook.Sheets(strZielSheet).Cells(lngFirstFreeRow, 3).PasteSpecial xlPasteValues

wkbQuelldatei.Sheets(strQuellSheet).Range("B34").Copy
ThisWorkbook.Sheets(strZielSheet).Cells(lngFirstFreeRow, 4).PasteSpecial xlPasteValues
0 Punkte
Beantwortet von zulu_01 Einsteiger_in (33 Punkte)
Uuups, habe es ähnlich herausgefunden. *lach* Nun scheint es zu schnackeln!

Vielen Dank für deine Ausdauer!

Schönes Wochenende,
Uwe
...