Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1016to1020
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

neue Datei erzeugen und einbinden

neue Datei erzeugen und einbinden
22.10.2008 08:52:18
Jana
Guten Morgen liebes Forum!!
Ich habe ein Anliegen..
Aus einer bestehenden Excel-Datei heraus möchte ich folgendes:
1. eine neue Excel-Datei erstellen
2. der neuen Datei ein zusätzliches Tabellenblatt geben
3.Tabellenblätter sortieren
4.Tabellenblätter umbenennen
5. Datei unter best. Datum speichern.
Dazu habe ich mir folgenden Code erstellt:

Public Sub neue_Excel_Datei()
Dim WS As Worksheet
Dim WB As Workbook
Dim Zähler As Integer
Set WB = Workbooks.Add(1)
Set WS = ActiveWorkbook.Worksheets.Add
AnzahlRegister = Sheets.Count
For i = 1 To AnzahlRegister - 1
X = i
For Zähler = i + 1 To AnzahlRegister
If UCase$(Sheets(Zähler).Name)  i Then Sheets(X).Move Sheets(i)
Next i
Sheets("Tabelle1").Select
Sheets("Tabelle1").Name = "X_Y"
Sheets("Tabelle2").Select
Sheets("Tabelle2").Name = "X_XX"
Sheets("Tabelle3").Select
Sheets("Tabelle3").Name = "Y_X"
Sheets("Tabelle4").Select
Sheets("Tabelle4").Name = "YY_X"
DateS = Sheets("X_Y").Range("ZZ1")
ActiveWorkbook.SaveAs Filename:="A:\XX\YY\" & Format(DateS, "YYYYMMDD") & ".xls"
End Sub


Wie kann ich also nach der "Set WB = Workbooks.Add(1)" sagen, dass der Rest des Codes auf diese neu erzeugte Datei Anwendung findet?
Für Tipps bin ich ganz doll dankbar!!
Gruß Jana

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: neue Datei erzeugen und einbinden
22.10.2008 09:21:00
Luschi
Hallo Jana,
die Objekte, die in der neuen Datei liegen, einfach den Präfix WB. vorranstellen; also so:

Public Sub neue_Excel_Datei()
Dim WS As Worksheet
Dim WB As Workbook
Dim Zähler As Integer
Set WB = Workbooks.Add(1)
Set WS = WB.Worksheets.Add
AnzahlRegister = WB.Sheets.Count
For i = 1 To AnzahlRegister - 1
X = i
For Zähler = i + 1 To AnzahlRegister
If UCase$(WB.Sheets(Zähler).Name)  i Then WB.Sheets(X).Move WB.Sheets(i)
Next i
WB.Sheets("Tabelle1").Name = "X_Y"
WB.Sheets("Tabelle2").Name = "X_XX"
WB.Sheets("Tabelle3").Name = "Y_X"
WB.Sheets("Tabelle4").Name = "YY_X"
DateS = WB.Sheets("X_Y").Range("ZZ1")
WB.SaveAs Filename:="A:\XX\YY\" & Format(DateS, "YYYYMMDD") & ".xls"
End Sub

Gruß von Luschi
aus klein-Paris

Anzeige
AW: neue Datei erzeugen und einbinden
22.10.2008 09:30:00
Jana
Hallo Luschi
Ach ja.. es kann doch manchmal so einfach sein...
Vielen Dank!!
@ Luschi - Speichervorgang verzögern
22.10.2008 10:31:00
Jana
Hallo Luschi!
Wie gesagt, vielen Dank für die schnelle Hilfe!!
Eines habe ich nicht bedacht: bevor die neu erzeugte Datei gespeichert wird, muss sie natürlich erst einmal Inhalt bekommen, da der Inhalt im Speichernamen vorkommt...
kann man da eine Verzögerung zum speichervorgang von 5min einbauen, es sei denn, die Daten werden schneller als gedacht importiert und der automatische Speichervorgang kann abgebrochen werden.
Also sinngemäß:
WB.Sheets("Tabelle1").Name = "X_Y"
~f~ WB.Sheets("Tabelle2").Name = "X_XX"~f~
~f~ WB.Sheets("Tabelle3").Name = "Y_X"~f~
~f~ WB.Sheets("Tabelle4").Name = "YY_X"~f~
~f~ Select Case WB.Sheets("Tabelle1").Name = "X_Y"~f~
~f~ Case A1 = ""~f~
~f~ '30 Minuten warten~f~
~f~ Case D1 <> ""~f~
~f~ DateS = WB.Sheets("X_Y").Range("ZZ1")~f~
~f~ End Select~f~
~f~WB.SaveAs Filename:="A:\XX\YY\" & Format(DateS, "YYYYMMDD") & ".xls"~f~
Für dieses 30min warten habe ich im Forum dieses gefunden:
~f~s = Timer~f~
~f~Do While Timer < (s + zeit)~f~
Loop
kann man mir bitte noch einmal für die Einbindung in den Code helfen?
Dankeschön!!
Jana
Anzeige
vielen Dank
22.10.2008 10:53:00
Jana
Hallo Forum
habe es hinbekommen. Schlichte While-DoEvents-Went-Schleife; also ohne timeout...in meinem Falle die scheinbar beste Lösung.
While IsEmpty(Range("A1"))~f~
~f~ DoEvents~f~
~f~Wend
Vielen Dank für die Hilfe!!!
Gruß Jana

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige