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

Aus einer Liste Sheets generieren

Aus einer Liste Sheets generieren
04.02.2019 18:11:02
Daniel
Hallo :-)
Ich hab eine Herausforderung...
Die Sache ist die:
Ich habe eine Tabelle, in der verschiedene Werte stehen und ich hab eine Vorlage, in die diese Werte müssen.
Und zwar für jeden Namen der in der Ausgangstabelle steht.
Ich weiß nicht, ob ich das korrekt erklären kann...
Ich hänge ohnehin noch eine Bsp.-Datei an.
Grundsituation:
Es existiert ein Sheet "Werte" mit einer Tabelle mit 4 Spalten:
Name, Name2, Nr. und Code
Es existiert ein zweites Sheet "Vorlage", das bereits bestimmte Vorgaben enthält, wo die entsprechenden Werte aber ergänzt werden müssen.
Franz fra 12 556987
Xaver xav 25 223698
Braun bra 98 136984
Maria mar 77 889655
Jetzt soll für "Franz" ein Sheet generiert werden, dass "fra" heißt und in dem die entsprechenden Werte, die zu "Franz" gehören an den vordefinierten Stellen des Sheets abgelegt werden sollen.
Wenn das fertig ist, soll ein Sheet "xav" erstellt werden für Xaver und so weiter...
Ich hab hier 4 Namen genommen - tatsächlich sind das aber sehr viel mehr.
Das Ziel soll sein, dass ich am Ende alle diese Sheets als PDF in einem bestimmtem Ordner abspeichern kann.
Kann mir jemand helfen?
Danke schon im Voraus...
MfG
Daniel
https://www.herber.de/bbs/user/127414.xlsx

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Aus einer Liste Sheets generieren
04.02.2019 18:33:03
Werner
Hallo Daniel,
da solltest du vielleicht nochmal darüber nachdenken.
Du wirst sicher viel Freude bekommen, wenn da dann noch z.B. ein Martin oder ein Markus oder ein Marcel dazukommt.
Gruß Werner
AW: Aus einer Liste Sheets generieren
04.02.2019 18:38:20
Daniel
Hallo Werner,
dass ist schon durchdacht ;-)
Das sind nur Beispiele.
In der echten Tabelle kann es keine zwei identischen Namen oder identischen Name2 geben ;-)
Da sind sowohl alle Namen als auch alle Kurzformen einzigartig - es kann niemals zweimal das gleiche drin stehen...
MfG
Daniel
AW: Aus einer Liste Sheets generieren
04.02.2019 19:05:08
Werner
Hallo Daniel,
so:
Option Explicit
Public Sub Blatt_anlegen()
Dim loLetzte As Long, i As Long
Application.ScreenUpdating = False
With Worksheets("Werte")
loLetzte = .Cells(.Rows.Count, 2).End(xlUp).Row
For i = 2 To loLetzte
Worksheets("Vorlage").Copy after:=ThisWorkbook.Worksheets(Sheets.Count)
With ActiveSheet
.Name = Worksheets("Werte").Cells(i, 2)
.Range("A1, B34:B36") = Worksheets("Werte").Cells(i, 1)
.Range("E10") = Worksheets("Werte").Cells(i, 2)
.Range("G10,C34:C36") = Worksheets("Werte").Cells(i, 3)
.Range("E20,E27") = Worksheets("Werte").Cells(i, 4)
End With
Next i
End With
End Sub
Gruß Werner
Anzeige
AW: Aus einer Liste Sheets generieren
04.02.2019 19:44:33
Daniel
Hallo Werner,
das ist ziemlich klasse :-)
Danke dir.
Ich hab das jetzt angepasst für mich...und mir kam schlagartig ein Gedanke:
Ich muss jetzt ja alle Sheets als PDF speichern...
Wäre es da nicht klüger, anstelle des anlegens der Sheets direkt als PDF zu speichern?
Und wäre das überhaupt möglich?
Aber dann habe ich halt keine Möglichkeit mehr, noch was an den Sheets zu ändern...
Das verwirrt mich jetzt...
Danke trotzdem - es ist eine geniale Sache :-)
MfG
Daniel
AW: Aus einer Liste Sheets generieren
05.02.2019 07:24:15
Werner
Hallo Daniel,
dann halt ein zweites Makro.
Mit dem ersten Makro erstellst du deine Blätter. Anschließend kannst du dann ja an den Blättern deine Änderungen durchführen.
Bist du damit fertig, dann lässt du die Blätter als PDF speichern und löschst dabei die zuvor erstellten Blätter gleich wieder.
Public Sub PDF_erzeugen()
Dim ws As Worksheet
Application.ScreenUpdating = False
For Each ws In ThisWorkbook.Worksheets
Select Case ws.Name
Case "Werte", "Vorlage"
'nix machen
Case Else
ws.ExportAsFixedFormat Type:=xlTypePDF, Filename:=ThisWorkbook.Path & "\" _
& ws.Name & ".pdf", Quality:=xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:=False, OpenAfterPublish:=False
Application.DisplayAlerts = False
ws.Delete
Application.DisplayAlerts = True
End Select
Next ws
End Sub
Hinweis:
-die PDF-Dateien werden im gleichen Verzeich gespeichert in der auch die Excel-Datei ist
-die PDF-Dateien erhalten den gleichen Namen wie das jeweilige Tabellenblatt
-hast du noch weitere Blätter, die nicht als PDF gespeichert werden sollen dann mußt du sie hier
Case "Werte", "Vorlage"

noch zusätzlich mit aufführen
-lässt du das Makro erneut laufen und erzeugst wieder Blätter mit den gleichen Namen, dann werden beim Erzeugen der PDF die bereits vorhandenen PDF kommentarlos überschrieben
Gruß Werner
Anzeige
AW: Aus einer Liste Sheets generieren
05.02.2019 18:04:47
Daniel
Hallo Werner
Danke schön :-)
So ähnlich hab ich es auch gemacht.
Ich hab mich dann aber dazu entschlossen, dass ich die Sheets nicht lösche nach dem erstellen der PDF, weil ich ggf. noch Änderungen daran vornehmen will/muss...
Entschuldige - das letzte war eher eine Überlegung gewesen, was wohl sinnvoller wäre als eine Aufforderung ein Makro dafür zu bauen :-(
Tut mir leid das ich dir noch diese Arbeit gemacht hatte...
Aber ich danke dir für deine Hilfe und eben diese Arbeit :-)
MfG
Daniel
Gerne u. Danke für die Rückmeldung. o.w.T.
05.02.2019 19:46:21
Werner

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige