Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1760to1764
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

VBA Tabellenblatt nach Zellwert öffnen

VBA Tabellenblatt nach Zellwert öffnen
28.05.2020 08:53:12
Heiner
Hallo zusammen,
ich habe da eine VBA Aufgabe, die ich irgendwie aus zwei Threads zusammenkopiert habe, aber nicht zur Lösung kommen. Folgende Aufgabenstellung:
Ich habe zwei Excel Dateien: eine Quelldatei und eine Zieldatei, beide im Sharepoint. Ich möchte gerne aus der Quelldatei den Inhalt eines Tabellenblattes in ein Tabellenblatt in der Zieldatei kopieren. Die Quelldatei wird monatlich aktualisiert, d.h. für jeden Monat gibt es ein Tabellenblatt und je nach Monat wird halt das entsprechende Tabellenblatt gefüllt. Im Tabellenblatt "Start" in der Zelle AA18 steht die Formel "=VERKETTEN(GROSS(TEXT(AA15;"MMM"));"AJ")" und das aktuell Ergebniss lautet "APRAJ" (steht für April aktuelles Jahr). Dies ist der Name des Tabellenblattes mit den aktuellsten Werten, welches ich gerne kopieren möchte. Das Zieltabellenblatt heißt "Kennzahlen". Hier müsste der Inhalt vorher immer einmal gelöscht werden (fehlt noch in der VBA). Also, dazu folgende VBA
Sub Schaltfläche4_Klicken()
Application.ScreenUpdating = False
Application.EnableEvents = False
Dim strWks As String
Workbooks.Open "https:... /BLKZ Auswertung 2020.xlsm" ' Quelle, aus der die Tabelle kopiert _
werden soll
Worksheet.Activate "Start"                                          ' Das Tabellenblatt " _
Start" ansprechen
strWks = "AA18"              ' Der Versuch den zu öffnenden Tabellenblattnamen zu definieren
If strWks = "" Then Exit Sub
Dim QWB As Workbook, ZWB As Workbook
Set QWB = Workbooks("BLKZ Auswertung 2020")      ' Quelldatei
Set ZWB = Workbooks("Gesamtübersicht")                  ' Ziel, Workbook mit diesem Makro
Dim QWS As Worksheet, ZWS As Worksheet
Set QWS = strWks                                                     ' Quelletabellenblatt
Set ZWS = ZWB.Worksheets("Kennzahlen")             ' Zieltabellenblatt
QWS.Cells.Copy
ZWS.Cells(1, 1).PasteSpecial Paste:=xlPasteValues         ' Inhalt in Ziel-Tabelle einfügen
Workbooks("BLKZ Auswertung 2020.xlsm").Close
Application.EnableEvents = True
End Sub
Bin mir sicher, dieser VBA Text ist nicht schön, und vor allem funktioniert er nicht. Wahrscheinlich sind auch grobe schnitzer drin, ich hoffe er zeigt aber grob auf, was die Aufgabe sein soll. Danke für eure Hilfe!

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Tabellenblatt nach Zellwert öffnen
29.05.2020 08:37:08
MCO
Guten Morgen, Heiner!
Versuch das mal.
Leider konnte ich das nicht testen, da ich die Mappen nicht habe, aber die Fehler sind jetzt bestimmt kleiner geworden ;-)
Sub Schaltfläche4_Klicken()
Application.ScreenUpdating = False
Application.EnableEvents = False
Dim strWks As Worksheet
Dim QWB As Workbook, ZWB As Workbook
Dim QWS As Worksheet, ZWS As Worksheet
Workbooks.Open "https:... /BLKZ Auswertung 2020.xlsm" ' Quelle, aus der die Tabelle kopiert  _
werden soll
Set QWB = ActiveWorkbook
Set ZWB = ThisWorkbook
'Set QWB = Workbooks("BLKZ Auswertung 2020")      ' Quelldatei
'Set ZWB = Workbooks("Gesamtübersicht")                  ' Ziel, Workbook mit diesem Makro
Set QWS = QWB.Sheets("Start") ' Quelletabellenblatt
QWS.Activate  ' Das Tabellenblatt "Start " ansprechen"
If QWS.Range("AA18") = "" Then Exit Sub
strWks = QWB.Sheets(Range("AA18"))            ' Der Versuch den zu öffnenden  _
Tabellenblattnamen zu definieren
Set ZWS = ZWB.Worksheets("Kennzahlen") ' Zieltabellenblatt
QWS.Cells.Copy
ZWS.Cells.ClearContents 'löscht Inhalte
'ZWS.Cells.Clear        'löscht auch Formatierungen
ZWS.Cells(1, 1).PasteSpecial Paste:=xlPasteValues         ' Inhalt in Ziel-Tabelle einfügen
QWB.Close 0
Application.EnableEvents = True
End Sub
Viel Erfolg
Gruß, MCO
Anzeige

312 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige