Live-Forum - Die aktuellen Beiträge
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

Für jede Zeile ein neues Tabellenblatt

Für jede Zeile ein neues Tabellenblatt
12.04.2016 15:21:54
Markus
Hi Leute
Ich lasse mir per vba Makro Firmendaten in eine Tabelle schreiben. Pro Zeile eine Firma. Nun möchte ich für jeden dieser Datensätze ein Tabellenblatt in einer anderen Mappe haben. Dort sollen dann Grafiken erstellt werden.
Ich habe somit Ausgansmappe mit Tabelle 2 und 4
und Zielmappe. So sollten die Werte übertragen werden:
(Ausgangsmappe Tabelle 2) - (Zielmappe neues Tabellenblatt)
Spalte 1 - Name des neuen Tabellenblattes
Spalte 3 - B1
Spalte 5 - B2
Spalte 7 - B4
Spalte 10 - B12
Spalte 12 - B13
In die Zeile B3 soll dann die Formel B1-(B2+B4)
Nun sollte ja der Name der Tabelle bereits angelegt sein. Die meisten Firmen sind nun aber in Tabelle 4 nocheinmal vorhanden. Dafür soll aber nicht noch eine eigene Tabelle angelegt werden, sondern wenn der Inhalt von Spalte 1 in Tabelle 4 bereits in einem Tabellenblatt vorhanden ist, dann soll er dort so hinzugefügt werden:
(Ausgangsmappe Tabelle 4) - (Zielmappe)
Spalte 3 - B6
Spalte 5 - B7
Spalte 7 - B9
Spalte 10 - B16
Spalte 12 - B17
in die Zelle B8 soll dann die Formel B6-(B7+B9)
Ausgeführt sollte diese Schleife solange werden, bis das erste mal der Wert von Spalte 1 keine Nummer mehr ist.
Ich wär so dankbar wenn hierfür jemand eine Lösung hat und ich das nicht manuell eintippen muss.

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: nur ein Anfang
12.04.2016 16:10:08
Fennek
Hallo Marcus,
als Start kann dieser Code helfen, die Fleißarbeit alle Werte zu übertragen kannst du hoffenhlich übernehmen.
Das Prüfen auf Duplikate in Tab4 ist sicher noch einmal eine Aufgabe.

Sub sMarkus()
Dim WBQ as workbook
Dim WBZ as workbook
Set wbq = thisworkbook
Set wbz = workbooks.add ' später durch open ersetzen
Lr = wbq.sheets("Tabelle2").cells(rows.count, "A").end(xlup).row
For i = 2 to lr
Wbz.sheets.add after:=wbz.sheets(sheets.count)
Wbz.sheet(sheets.count).name = wbq.sheets("Tabelle2").cells(i, "A")
Next i
End sub
Mfg
[abgetipt, Fehler möglich]

Anzeige
AW: nur ein Anfang
13.04.2016 14:59:39
Markus
Vielen Dank schon mal Fennek! Ich werde damit versuchen zu arbeiten und mal schauen wie weit ich komme.

303 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige