Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1484to1488
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Datei öffnen, Tabellen vergleichen, Werte übernehm

Datei öffnen, Tabellen vergleichen, Werte übernehm
01.04.2016 00:48:44
Knecht74
Hallo,
ich habe folgendes vor.
Ich öffne die Exceldatei "A" ganz normal. Jetzt soll im Hintergrund automatisch die Exceldatei "B" geöffnet werden, dann soll jedes Tabellenblatt (Name des Tabellenbattes) der Datei "A" mit jedem Tabellenblatt der Datei "B" verglichen, oder gesucht werden und bei Übereinstimmung des Tabellenblattnamen soll der Inhalt der Zellen "M60" von Datei "B" in die Zelle "A2" der Datei "A" übertragen werden. Danach den nächsten Tabellenblattnamen usw. Nach dem letzten Tabellenblatt soll die Datei "B" automatisch wieder geschlossen werden.
Ist so etwas mit VBA möglich, und wann ja, könnte mir jemand so etwas schreiben?
Danke im voraus.
Gruß, Mike

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datei öffnen, Tabellen vergleichen, Werte über
01.04.2016 08:23:09
Michael
Hallo!
In der Mappe A muss folgender Code in das Klassenmodul der Mappe, d.h. Mappe A öffnen, Alt + F11 um den VB-Editor aufzurufen, oben links im Explorer DoKlick auf DieseArbeitsmappe, Code dort einfügen.
Im Code musst Du den Pfad auf Mappe B noch selbständig anpassen:
Set MappeB = Workbooks.Open("DeinPfad\DeineMappe.xlsx") 'anpassen
Falls erforderlich kannst Du auch ganz einfach die Ziel- und Quellzelle (aktuell A1 in Mappe A, bzw. M60 in Mappe B) anpassen, hier:
Const ZielZelle As String = "A1" 'anpassen
Const QuellZelle As String = "M60" 'anpassen
Gesamter Code:
Private Sub Workbook_Open()
Dim MappeA As Workbook
Dim MappeB As Workbook
Dim BlattA As Worksheet
Dim BlattB As Worksheet
Const ZielZelle As String = "A1" 'anpassen
Const QuellZelle As String = "M60" 'anpassen
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Set MappeA = Me
Set MappeB = Workbooks.Open("DeinPfad\DeineMappe.xlsx") 'anpassen
For Each BlattA In MappeA.Worksheets
For Each BlattB In MappeB.Worksheets
If BlattA.Name = BlattB.Name Then
BlattA.Range(ZielZelle).Value = BlattB.Range(QuellZelle).Value
Exit For
End If
Next BlattB
Next BlattA
MappeB.Close False
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
End Sub
Klappt?
LG
Michael

Anzeige
AW: Datei öffnen, Tabellen vergleichen, Werte über
01.04.2016 11:27:06
Knecht74
Hallo Michael,
Danke für Deine Antwort. Habe das ganze jetzt mal eingegeben und es kam folgender Fehler:"Laufzeitfehler '1004': Die Methode 'Range' für das Objekt'_Worksheet' ist fehlgeschlagen".
Ich habe Dir aber vergessen zu sagen, dass das erste Tabellenblatt eine Übersicht ist und nicht mit betrachtet werden darf. Außerdem müssen nicht alle Tabellenblattnamen in beiden Dateien vorhanden sein. Liegt es etwa daran?
Wenn ich den Fehler mit Debuggen suche, springt er in folgende Zeile:
"BlattA.Range(ZielZelle).Value = BlattB.Range(QuellZelle).Value"
Ich hätte noch eine andere Frage. Wäre es auch möglich, das es den Pfad für die Datei "B" automatisch anpasst, wenn die Dateien z.B. folgendermaßen heißen: 1.Datei heißt "Datei2016" und die 2. Datei heißt "Datei2015". So dass es mir immer die Werte des letzten Jahres ausliest, egal ob ich jetzt die Datei "Datei2016" öffne, dann die Werte aus 2015 auslesen, wenn ich die Datei "Datei2017" öffne aus 2016 usw.?
Danke.
Gruß Mike

Anzeige
AW: Datei öffnen, Tabellen vergleichen, Werte über
01.04.2016 11:44:39
Werner
Hallo,
Blitzschutz drin?
Gruß Werner

AW: Datei öffnen, Tabellen vergleichen, Werte über
01.04.2016 11:46:49
Knecht74
Hallo Werner,
das sagt mir leider gar nichts, was ist "Blitzschutz"?
Gruß Mike

AW: Datei öffnen, Tabellen vergleichen, Werte über
01.04.2016 11:55:27
Werner
Hallo,
immer das Leid mit der Autokorrektur.
Blattschutz
Werner

AW: Datei öffnen, Tabellen vergleichen, Werte über
01.04.2016 11:58:45
Knecht74
Hallo Werner,
nein, ich habe kein Blattschutz aktiviert.
Gruß Mike

AW: Dann offen
01.04.2016 12:09:36
Werner

AW: Datei öffnen, Tabellen vergleichen, Werte über
01.04.2016 14:42:20
Knecht74
Hallo Michael,
es tut mir leid, ich hatte einen Schreibfehler in der QuellZelle, deshalb hat es nicht geklappt. Also danke für dein Makro. Ist der zweite Teil mit automatisch die Datei vom letzten Jahr öffnen trotzdem irgendwie möglich?
Gruß Mike

Anzeige
Hätte mich gewundert...
01.04.2016 23:59:27
Michael
... Wenn der Code nicht funktioniert hätte 😉...
Bzgl der Anpassung wegen des Dateinamens:
Liegen Mappe A und B im gleichen Verzeichnis? Dann ist das kein Thema!
Kann ich aber erst Di oder Mi anpassen... Bin übers Wochenende nicht im Forum!
Lg
Michael

AW: Hätte mich gewundert...
02.04.2016 09:53:23
Knecht74
Hallo Michael,
habe alles hinbekommen und läuft super. Brauchst Dir keine Arbeit mehr machen. Danke für alles.
Schönes Wochenende.
Gruß Mike

Ok, passt! Danke für die Rückmeldung owT
03.04.2016 17:55:13
Michael

303 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige