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

Datei verschwindet trotz manuellem Save

Datei verschwindet trotz manuellem Save
18.02.2021 18:48:33
Robin
Hallo zusammen,
folgendes Problem hat sich bei mir eingeschlichen und ich weiß nicht weiter.
Situation ist Folgende:
Ich habe eine Tabelle, deren Inhalt sich ändert, je nachdem was in einem Dropdown-Menü ausgewählt wurde.
Nun möchte ich für manche dieser Auswahlen eine Kopie des Arbeitsblatts in einer eigenen Datei abspeichern.
Hierfür habe ich mir ein Macro zusammengeschrieben, welches genau dies tut und die Datei auch _
direkt richtig benennt und abspeichert und danach sofort schließt.

Sub speichern()
Dim Dateiname As String
On Error GoTo Fehler
Dateiname = Range("F4")
'Stellt sicher, dass wir uns im aktuellen Ordner befinden
ChDrive ThisWorkbook.Path
ChDir ThisWorkbook.Path
ActiveSheet.Copy
ActiveWorkbook.SaveAs (Dateiname)
ActiveWorkbook.Close SaveChanges:=True
Exit Sub
'Fehlermeldungs-Fenster
Fehler:
MsgBox "Name enthält Sonderzeichen, manuelles Speichern unter abgeändertem Namen nötig."
End Sub
Wenn nun ein Fehler auftritt, dann wird das Fenster mit der Meldung angezeigt und die kopierte (aber nicht gespeicherte) "extrahierte" Tabellenblatt ist zusätzlich zur Originaldatei offen. Hier würde ich nun auf "Speichern unter..." gehen und es unter einem normalen Namen speichern. Anschließend die Datei schließen und weiterarbeiten.
Problem:
1) Er schließt mir dann meine Hauptdatei (weil er ja denke ich versucht im Code weiterzukommen und dann das aktive Arbeitsblatt schließt, welches dann meine ActiveWorksheet ist).
2) Die manuell abgespeicherte Datei, welche den Fehler aufgrund des ungültigen Dateinamens hervorgerufen hat, ist nicht auffindbar.
Woran liegt das? Nur mit Problem 1 könnte ich leben, aber Problem 2 macht mich ratlos.
Per Workaround könnte man natürlich alle Dateinamen entsprechend "richtig" machen (suchen und ersetzen von ungültigen Zeichen mit gültigen Zeichen), aber ich würde gerne das Problem und eine mögliche Lösung verstehen :)
Vielen Dank!
Robin

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datei verschwindet trotz manuellem Save
18.02.2021 19:40:07
Tobias
Hallo Robin,
die Programmierung mit dem einfach abfangen des Fehlers ist definitiv nicht sauber. Deinen Fehler 1 kannst du abwenden indem du den beiden Workbooks mit denen du Arbeiten willst, Variablen zuweist.
Dim wbHaupt as Workbook
Dim wbNeu as Workbook
Set wbHaupt = ThisWorkbook
' Nach deinem Copy Befehl dann
Set wbNeu = Workbooks(Workbooks.Count) 'Setzt wbNeu auf das neuste Workbook
' Weiterer Code danach freigeben der Variablen
Set wbHaupt = Nothing
Set wbNeu = Nothing
Jetzt kannst du über wbNeu und wbHaupt deine beiden Workbooks einzeln ansprechen. Deinen Fehler 2 kann ich nicht reproduzieren, eventuell irgendwelche Einstellungen die aufgrund des unsauberen Verlassens deiner Subs nicht korrekt zurückgestellt wurden? Bei einfachen Testmappen hatte ich das Problem allerdings nicht.
Schöne Grüße
Tobias
Anzeige
AW: Datei verschwindet trotz manuellem Save
19.02.2021 09:59:56
Robin
Hallo zusammen,
vielen Dank für die Tipps, leider hat es denke ich die Datei oder mein Excel zerschossen, denn beide Tipps führen nicht zum gewünschten Ergebnis. Habe auch nochmal die BackUp-Datei genommen und dort nur den "sauberen" Code eingefügt und es gibt die gleichen Probleme. Andere User haben sogar einen ganz anderen Fehler als ich (Fehlermeldung beim speichern, dass die Datei beschädigt ist und deshalb ein Reparaturversuch gestartet wird...dieser schlägt fehl und es ist dann auch nix gewonnen). Irgendwas ist dort also massiv in die Brüche gegangen (ich konnte gestern gegen 16 Uhr noch die fehlerhaften Dateien speichern z. B., erst nachdem ich den ErrorHandler eingebaut habe dann nicht mehr)...
Ich habe das ganze jetzt per Workaround gelöst, indem ich die Bezugszeile für den Namen direkt per WECHSELN-Formel richtigstelle, indem alle nicht erlaubten Zeichen durch ein "-" ersetzt werden.
Ich gehe davon aus, dass man mein Excel einfach mal zurücksetzen muss, spinnt eh seit ein paar Wochen ohne erkennbaren Grund.
Vielen Dank für eure Mühen!
Anzeige
AW: Datei verschwindet trotz manuellem Save
18.02.2021 19:44:23
onur
Mach es doch so:
...
Fehler:
MsgBox "Name enthält Sonderzeichen, manuelles Speichern unter abgeändertem Namen nötig."
ActiveWorkbook.SaveAs ("FEHLERHAFT.xlsm")
...

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige