Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Werte aus neu eingefügtem Tabellenblatt entnehmen

Werte aus neu eingefügtem Tabellenblatt entnehmen
26.02.2019 16:11:58
Matthäus
Hallo zusammen,
ich benötige erneut eure Hilfe ...
An dieser Stelle liebe Grüße an Beverly, die mir schon des öfteren geholfen kann.
Diesmal habe ich (eventuell) ein Makro-Problem.
Zielsetzung ist es, dass mir Excel automatisch immer vom zuletzt eingefügten Tabellenblatt den Wert auf ein "Main-Tabellenblatt" kopiert.
Diejenigen Tabellenblätter die eingefügt werden, sind alle gleich aufgebaut (nur mit anderen Werten eben).
Beispiel in Datei:
https://www.herber.de/bbs/user/127947.xlsx
Das Tabellenblatt KW03 wurde neu eingefügt. Jetzt soll mir das Makro (oder die Formel) aus diesem Tabellenblatt die Werte die in den Zeilen B2:D2 stehen in das Tabellenblatt "Main" ebenfalls in die Zeilen B2:D2 kopieren.
Zielsetzung soll es halt sein, dass ich im Grund nur noch die neuen Tabellenblätter einfügen muss uns vorne dann den aktuellen Wert angezeigt bekomme.
Vorab vielen Dank für eure Hilfe.
Viele Grüße
Matthäus
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
VBA-Lösung
26.02.2019 16:24:33
Beverly
Hi Matthäus,
der Code übernimmt immer die Daten aus dem letzten Tabellenblatt:
Sub Uebernehmen()
Worksheets("Main").Range("B2:D2") = Worksheets(Worksheets.Count).Range("B2:D2").Value
End Sub
Beachte: das zuletzt eingefügte Tabellenblatt muss sich dabei an letzter Stelle in der Reihenfolge der Tabellenblätter befinden. Könnte man allerdings auch anders lösen, indem man den Namen des Tabellenblattes anhand der KW ermittelt.
Eventuell kannst du es auch per Formel lösen, indem du den Namen des zuletzt eingefügten Blattes in eine Zelle schreibst und dann per INDIREKT die Daten holst.


Anzeige
AW: VBA-Lösung
27.02.2019 10:26:36
Matthäus
Hallo Beverly,
vielen Dank dafür.
Mein Code sieht nun so aus:

'Leere Zelle in Zeile suchen
Set rngBereich = Range(Cells(111, 5), Cells(111, Columns.Count))
For Each c In rngBereich
If c.Value = "" Or IsEmpty(c) Then Exit For
Next c
'Werte vom zuletzt eingefügten Tabellenblatt in das Main-Tabellenblatt
'einfügen
Cells(111, c.Column) = "=VLOOKUP(R111C1,'KW05'!C3:C16,13,0)"
Mit Hilfe des ersten Teil werden innerhalb einer Zeile die letzten leeren Zellen gesucht.
Der zweite Teil schreibt dann einen SVerweis, um diese letzte leere Zelle zu füllen.
Mein Problem ist nun, dass der SVerweis sich immer auf die Datenquelle des Tabellenblatt "KW05" bezieht. Diese Datengrundlage soll sich jedoch immer auf das zuletzt eingefügte Tabellenblatt ändern. Hast du eine Ahnung wie ich diese Bedingung in den SVerweis einbau?
Normalerweise sucht man das letzte Tabellenblatt mit .Count oder?
Anzeige
AW: VBA-Lösung
27.02.2019 10:56:33
Matthäus
Habs nun doch mit ner INDIREKT Formel gelöst.
Ist glaub einfacher als mit nem Makro :)
Wozu fügst du eine Formel...
27.02.2019 10:59:56
Beverly
Hi Matthäus,
...per VBA ein? Wenn du eine Formellösung bevorzugst kannst du sie doch gleich von Hand eintragen. Sie bleibt doch immer dieselbe, nur der Blattnamen ändert sich - und das kannst du mit INDIREKT lösen wie ich bereits geschrieben hatte.


Anzeige
AW: Wozu fügst du eine Formel...
27.02.2019 13:39:37
Matthäus
Hallo Beverly,
ja, ich hab bemerkt wie doof das mit dem Makro war.
Hab vor lauter Bäumen den Wald nicht mehr gesehen ... :D
Vielen Dank für den hinweis mit der INDIREKT-Formel. Hat 1A funktioniert.
;

Forumthreads zu verwandten Themen

Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige