Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
508to512
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
508to512
508to512
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Gleiche tabelle öffter speichern?

Gleiche tabelle öffter speichern?
mayk
moin moin,
ich habe eine tabelle welche ich mit daten beschreibe. diese tabelle wird über einen macro gedruckt und der inhalt wieder gelöscht, nun möchte ich gerne diese tabelle speichern und das mehrmals, egentlich kein problem, da sie aber immer den gleichen namen behält überspeichert sie sich, gibt es da einen Weg sie in einen extra Ordner mit laufenden nummern abzulegen ohne sie umzubenennen so das die daten nach dem druck gelöscht werden aber durchs speichern erhalten bleiben?
mfG mayk
AW: Gleiche tabelle öffter speichern?
Ulf
So ganz verstehe ich das ja nicht. Wenn du die Datei mit einer laufenden Nummer speicherst, wird sie ja zwangsläüfig umbenannt. Du kannst bei jedem Speichern einen
neuen Ordner erzeugen und die Datei darin immer unter dem selben Namen ablegen.
Ulf
AW: Gleiche tabelle öffter speichern?
mayk
wie kann ich die tabelle fortlaufend nummerieren und über den macro speichern?
mayk
AW: Gleiche tabelle öffter speichern?
Ulf
Ich hab das so verstanden, dass du die Datei nicht umbenennen willst? Wenn du sie
mit fortlaufender Nummer speicherst, hat sie doch einen anderen Namen.
Ulf
AW: Gleiche tabelle öffter speichern?
mayk
stimmt
und wie automatisiere ich das ?
mayk
AW: Gleiche tabelle öffter speichern?
Ulf
Ich passe mal, da ich dir nicht folgen kann.
Ulf
Anzeige
kaum excel keine vba wer hilt trotzdem
mayk
3 fragen von mir und 3x Antworten von dir "geht nicht" kann nicht folgen! kaum vba und kaum excel so wie ich?
Danke noch mal an Sepp! Genial
mayk
AW: kaum excel keine vba wer hilt trotzdem
Ulf
Kann dir schon wieder nicht folgen?
Ulf
AW: kaum excel keine vba wer hilt trotzdem
K.Rola
Hallo,
ich vermeide es eigentlich, mich in solche Sachen einzumischen, aber deine Fragen sind
wirklich kaum zu deuten. Ich hab nach dreimaligem Lesen noch immer nicht begriffen, was
du eigentlich willst. Allerdings sind meine Excelkenntnisse auch nicht so gut.
Gruß K.Rola
AW: Vorschlag
mayk
moin moin,
ich bin noch etwas müde,
danke für die antwort, beim ablauf hängt der macro sich hier auf.
ActiveWorkbook.SaveAs Filename:=strFile
' "C:\Dokumente und Einstellungen\ich\Eigene Dateien\inv.xls", FileFormat:= _
' xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
' , CreateBackup:=False
mayk
Versuch doch mal Makro 2 - o. T.
Björn
AW: Versuch doch mal Makro 2 - o. T.
mayk
hab ich das kommt doch aus macro 2 oder wie meinst du das
läuft es bei dir ?
ActiveWorkbook.SaveAs Filename:=strFile
' "C:\Dokumente und Einstellungen\ich\Eigene Dateien\inv.xls", FileFormat:= _
' xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
' , CreateBackup:=False
mayk
Anzeige
AW: Vorschlag
Erich
Hallo mani,
Du musst
1. den Pfad in meinem Makro2 anpassen
2. das Makro2 starten
mfg
Erich
danke, es läuft prima Gruß mayk
mayk
es geht also doch nur zu erklären ist es auch nicht immer einfach
mfG mayk
eine frage noch
mayk
kann mann die datei auch automatisch benennen lassen zB. fortlaufend nummerieren?
AW: eine frage noch
Erich
Hallo mani,
geht sicherlich, ich würde in einer Tabelle in Spalte A die Name hinterlegen und dann das makro jeweils auf die nächste Zeile zugreifen lassen.
mfg
Erich
AW: eine frage noch
mayk
hört sich gut an und wie sage ich dem macro das er zum benennen Spalte a zelle 1 nimmt und beim nächsten mal zelle 2 und so weiter?
mayk
Anzeige
ignoriert oder ? o.T
mayk
o.T.
AW: ignoriert oder ? o.T
Sven
Kennzeichne die Frage als noch offen!
mfg Sven
automatische Dateinummerierung
Björn
Hallo Mayk,
versuch's mal hiermit:

Sub Makro2()
'Funktioniert mit bis zu 99.999 Dateien
Dim strPath As String
Dim strName As String
Dim strFile As String
Dim Dateiname_ohne_Endung As String
Dim datei As String
Dim letzte_datei As String
Dim Version As Long
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
strPath = "C:\Daten\" 'Pfad bitte anpassen
Dateiname_ohne_Endung = "Hallo" 'Dateiname_ohne_Endung bitte anpassen
datei = Dir(strPath & "\" & Dateiname_ohne_Endung & "_?" & ".xls")
letzte_datei = datei
If datei <> "" Then
Versionsnummer = Left(Right(letzte_datei, 9), 5)
Else
Versionsnummer = 0
End If
While datei <> ""
datei = Dir
If Left(Right(datei, 9), 5) > Left(Right(letzte_datei, 9), 5) Then
letzte_datei = datei
Versionsnummer = Left(Right(datei, 9), 5)
End If
Wend
strName = Dateiname_ohne_Endung & "_" & Format(Versionsnummer, "00000")
strFile = strPath & strName & ".xls"
ActiveWorkbook.SaveAs Filename:=strFile
Range("B5:E16").Select
Selection.ClearContents
Range("E4").Select
Selection.ClearContents
End Sub

Denke bitte daran den Pfad und den Dateinamen ohne Endung an Deine Verhältnisse anzupassen.
Gruß
Björn
Anzeige
AW: automatische Dateinummerierung
mayk

Sub Makro2()
Er macht eine Fehlermeldung in der ersten zeile = Versionsnummer
'Funktioniert mit bis zu 99.999 Dateien
Dim strPath As String
Dim strName As String
Dim strFile As String
Dim Dateiname_ohne_Endung As String
Dim datei As String
Dim letzte_datei As String
Dim Version As Long
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
strPath = "C:\Daten\" 'Pfad bitte anpassen
Dateiname_ohne_Endung = "Hallo" 'Dateiname_ohne_Endung bitte anpassen
datei = Dir(strPath & "\" & Dateiname_ohne_Endung & "_?" & ".xls")
letzte_datei = datei
If datei <> "" Then
Versionsnummer = Left(Right(letzte_datei, 9), 5)  `hier macht er eine fehlermeldung (Kompilieren
Else
Versionsnummer = 0
End If
While datei <> ""
datei = Dir
If Left(Right(datei, 9), 5) > Left(Right(letzte_datei, 9), 5) Then
letzte_datei = datei
Versionsnummer = Left(Right(datei, 9), 5)
End If
Wend
strName = Dateiname_ohne_Endung & "_" & Format(Versionsnummer, "00000")
strFile = strPath & strName & ".xls"
ActiveWorkbook.SaveAs Filename:=strFile
Range("B5:E16").Select
Selection.ClearContents
Range("E4").Select
Selection.ClearContents
End Sub

Anzeige
AW: automatische Dateinummerierung
Björn
Sorry Mayk,
hatte die Variable umbenannt.
Mache bitte aus Dim Version
Dim Versionsnummer
Gruß
Björn
AW: automatische Dateinummerierung
mayk
habe ich getan, aber gleicher Fehler
ich habe die datei noch mal hoch geladen https://www.herber.de/bbs/user/12799.xls
wo habe ich den fehler gemacht?
mfG mayk
sssssssssssssssssssssssssssssssss
Björn
Hallo Mayk,
du musst schon Versionsnummer schreiben. Versionnummer reicht da nicht.
Gruß
Björn
1x noch
mayk
bitte bleib ruhig.
ich gebe mir ja mühe aber ich muß lernen und das alles ohne Vorkenntnisse
wo muß ich die nummern eintragen ?
mfg mayk
Anzeige
Welche Nummern?
Björn
Hallo Mayk,
du solltest die Dim-Anweisung ändern und zwar von "Dim Versionnummer as String" auf "Dim Versionsnummer as String".
Nummern musst du nirgends eintragen. Du wolltest doch, dass die Dateien automatisch nummeriert werden. So passiert es auch.
Gruß
Björn
AW: Welche Nummern?
mayk
Das habe ich doch getan!?
aber sie selbst
mayk
AW: Welche Nummern?
Björn
Hallo Mayk,
1. sehe ich níchts.
2. wenn du das geändert hast, funktioniert es dann?
3. wo ist dein Problem? Du musst dich schon etwas deutlicher äußern.
Gruß
Björn
....fortlaufend....
Erich
Hallo Björn,
das einzige was noch fehlt, ist die fortlaufende Numerierung der Dateien. Derzeit
wird immer unter _00000.xls gespeichert. Es wird nicht hochgezählt.
mfg
Erich
Anzeige
DANKE FÜR DIE ERKLÄRUNG, ERICH!!!
Björn
Danke Erich,
ich glaub' ich hätt' sonst nie begriffen, woran es hapert.
Aus irgendeinem mir unbekannten Grund ist da eine alte Zeile in den Code gerutscht. Deshalb also nochmal alles neu:

Sub Makro2()
'Funktioniert mit bis zu 99.999 Dateien
Dim strPath As String
Dim strName As String
Dim strFile As String
Dim Dateiname_ohne_Endung As String
Dim datei As String
Dim letzte_datei As String
Dim Versionsnummer As Long
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
strPath = "C:\Daten\" 'Pfad bitte anpassen
Dateiname_ohne_Endung = "Hallo" 'Dateiname_ohne_Endung bitte anpassen
datei = Dir(strPath & "\" & Dateiname_ohne_Endung & "_?" & ".xls")
letzte_datei = datei
If datei <> "" Then
Versionsnummer = Left(Right(letzte_datei, 9), 5)
Else
Versionsnummer = 0
End If
While datei <> ""
datei = Dir
If Left(Right(datei, 9), 5) > Left(Right(letzte_datei, 9), 5) Then
letzte_datei = datei
Versionsnummer = Left(Right(datei, 9), 5)
End If
Wend
strName = Dateiname_ohne_Endung & "_" & Format(Versionsnummer + 1, "00000")
strFile = strPath & strName & ".xls"
ActiveWorkbook.SaveAs Filename:=strFile
Range("B5:E16").Select
Selection.ClearContents
Range("E4").Select
Selection.ClearContents
End Sub

Gruß
Björn
Anzeige
AW: ....fortlaufend....
Erich
Hallo Björn,
danke - funktioniert perfekt!
mfg
Erich
Danke für die Rückmeldung, Erich! - o. T.
Björn
AW: ....fortlaufend....
mayk
er läuft auch bei mir fehlerfrei durch,
doch fragt er beim zweiten mal ob er die datei überschreiben soll
ich weiß auch nich ich glaub ich bin zu bl.
mayk
... noch 'n Versuch
Björn
Hallo Mayk,
schau dir doch mal diese Datei an:
https://www.herber.de/bbs/user/12805.xls
Ich habe Makro1 gelöscht und STRG+a ruft nun das Makro2 auf. Lade dir die Datei runter, lege im Explorer den Ordner C:\Daten an, starte die Datei, drücke dann doch 3 oder 4 mal STRG+a und schau, ob nicht doch jedes mal 'ne neue Dateinummer erzeugt wird.
Wenn das nicht klappt, schmeiß die Tastatur in die Ecke und genieße den Rest des Wochenendes.
Gruß
Björn
P.S.: Du bist nicht zu bl., VBA ist eben nicht so einfach.
Vergiss den Versuch, das Problem ist ein anderes
Björn
Hallo Mayk,
das Problem liegt in folgendem:
Wenn ich den Pfad angegeben habe, dann war am Ende ein "\", bei dir nicht.
Wenn nun nach einer bestehenden Datei gesucht wird, dann wurde im Code zwischen Pfad und Dateiname ein "\" eingefügt. Wenn die Datei aber gespeichert wurde, dann wurde kein "\" eingefügt.
Das hatte folgende Auswirkungen:
Bei mir wurde die Datei im Pfad C:\Daten\\ gesucht, das ist von der Wirkung her identisch mit C:\Daten\, dem Pfad in dem bei deiner Version gesucht werden würde. Hier also kein Unterschied.
Beim Speichern jedoch wurde bei mir die Datei unter C:\Daten\Hallo_00001.xls abgespeichert, bei dir jedoch (auf Grund des fehlenden "\" beim Speichern) unter C:\DatenHallo_00001.xls.
Die Datei Hallo_0001.xls wurde bei der zweiten Ausführung des Makros bei dir nun natürlich nicht im Verzeichnis C:\Daten gefunden, die Versionsnummer auf 0 gesetzt und dann beim Speichern wieder um 1 erhöht. Der Speichervorgang ging dann wieder auf die Datei C:\DatenHallo_00001.xls und daher die Abfrage.
Wie du siehst, bist du nicht zu bl. sondern hast einen üblen Programmierfehler aufgedeckt.
Bitte ersetzte die Zeile
strFile = strPath & strName & ".xls"
durch
strFile = strPath & "\" & strName & ".xls"
Den Pfad brauchst du dann auch nicht mit einem "\" zu beenden.
Gruß
Björn
AW: eine frage noch
mayk
kann sich bitte jemand meine frage ansehen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige