Anzeige
Archiv - Navigation
1676to1680
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

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

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.


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.
Anzeige

302 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige