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

Speichern mit Bedingung

Speichern mit Bedingung
05.04.2016 14:43:59
chris58
Hallo !
Ich bitte höflichst um Hilfe.
Ich habe den u.a. Code von hier, von da und ein wenig gebastelt. Er kann folgendes:
Er speichert eine Datei unter einem anderen Namen die aus den Zellen H2 und F2 der Datei kommen, wenn in G2 das Wort "Speichern" eingetragen wird. Die Originaldat ei wird nach Speicherung der neuen Datei geschlossen.
Nun bin ich nach langem probieren draufgekommen, das, wenn der User, der diese Dat ei abspeichert, das ganze abbricht, dann hat er das Wort "Speichern" in der Originaldatei stehen und kann dann die Originaldatei verändern, unter dem Namen der Originaldatei speichern und was sonst noch was.....
Wie kann man den Code dahingehend verändern, das, wenn der User abbricht, das Wort Speichern nicht in der Originaldatei eintragen wird.
Bitte um Hilfe.
Danke
chris
Private Sub CommandButton2_Click()
Dim strVerzeichnis As String
Dim strDateiname As String
Range("G2").Value = "Speichern"
strVerzeichnis = "C:\Temp\"
strDateiname = Application.GetSaveAsFilename(InitialFileName:=strVerzeichnis & _
Format(Range("H2"), "mm") & " " & Range("F2") & ".xls", _
FileFilter:="Microsoft Excel-Arbeitsmappe (*.xls), *.xls")
Select Case strDateiname
Case False
Exit Sub
Case Else
ThisWorkbook.SaveAs Filename:=strDateiname
End Select
ThisWorkbook.Close True
End Sub

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

Betreff
Datum
Anwender
Anzeige
AW: Speichern mit Bedingung
05.04.2016 14:51:44
Steve
Hallo Chris,
hier wird erkannt dass "Abbrechen" gewählt wurde, nämlich wird "False" zurückgeliefert:
Select Case strDateiname
Case False
' ... deine Aktionen
Exit Sub
Case Else
ThisWorkbook.SaveAs Filename:=strDateiname
End Select
Du musst also für den Fall "False" deine weiteren Schritte angeben, z.B. lösche das eingetragene Speichern wieder aus der Zelle. Erst als letztes steht dann "Exit Sub", womit du dein Makro ja bendest.
Außerdem kann man verhindern dass die Originaldatei gespeichert wird indem man sie als Typ Vorlage (.xltm) abspeichert. Dann wird der Nutzer auch wenn er abbricht dazu gezwungen eine neue Datei anzulegen oder die Änderungen zu verwerfen.
lg Steve

Anzeige
AW: Speichern mit Bedingung
05.04.2016 15:07:16
chris58
Hallo Steve !
Bevor ich was einbaue......
So ?
Private Sub CommandButton2_Click()
Dim strVerzeichnis As String
Dim strDateiname As String
Range("G2").Value = "Speichern"
strVerzeichnis = "C:\Temp\"
strDateiname = Application.GetSaveAsFilename(InitialFileName:=strVerzeichnis & _
Format(Range("H2"), "mm") & " " & Range("F2") & ".xls", _
FileFilter:="Microsoft Excel-Arbeitsmappe (*.xls), *.xls")
Select Case strDateiname
Case False
Range("G2").Value = "Speichern"
Exit Sub
Case Else
ThisWorkbook.SaveAs Filename:=strDateiname
End Select
ThisWorkbook.Close True
End Sub

Anzeige
AW: Speichern mit Bedingung
05.04.2016 15:07:59
chris58
So meinte ich............verzeihung
Private Sub CommandButton2_Click()
Dim strVerzeichnis As String
Dim strDateiname As String
strVerzeichnis = "C:\Temp\"
strDateiname = Application.GetSaveAsFilename(InitialFileName:=strVerzeichnis & _
Format(Range("H2"), "mm") & " " & Range("F2") & ".xls", _
FileFilter:="Microsoft Excel-Arbeitsmappe (*.xls), *.xls")
Select Case strDateiname
Case False
Range("G2").Value = "Speichern"
Exit Sub
Case Else
ThisWorkbook.SaveAs Filename:=strDateiname
End Select
ThisWorkbook.Close True
End Sub

Anzeige
AW: Speichern mit Bedingung
05.04.2016 15:19:31
Steve
Nicht ganz,
du wolltest es beim Abbrechen doch NICHT in der Zelle haben. Also entweder packst du "Range("G2").Value = "Speichern" " in den Else-Teil
oder
wie ich vorhin meinte lässt du das "Range("G2").Value = "Speichern" " am Anfang deines Makros stehen und löscht im False-Teil die Zelle G2:
Range("G2").Value = ""
lg Steve

AW: Speichern mit Bedingung
05.04.2016 15:38:16
chris58
Hallo Steve !
Also so (es sind 10 Dateien) darum frag ich so dumm....
Ich glaub nun funktioniert es...........danke für Deine Hilfe (kannst nochmal bitte, bitte schauen, ob es so passt)
Danke im vorhinein
chris
Private Sub CommandButton2_Click()
Dim strVerzeichnis As String
Dim strDateiname As String
Range("G2").Value = "Speichern"
strVerzeichnis = "C:\Temp\"
strDateiname = Application.GetSaveAsFilename(InitialFileName:=strVerzeichnis & _
Format(Range("H2"), "mm") & " " & Range("F2") & ".xls", _
FileFilter:="Microsoft Excel-Arbeitsmappe (*.xls), *.xls")
Select Case strDateiname
Case False
Range("G2").Value = ""
Exit Sub
Case Else
ThisWorkbook.SaveAs Filename:=strDateiname
End Select
ThisWorkbook.Close True
End Sub

Anzeige
AW: Speichern mit Bedingung
05.04.2016 16:17:33
Steve
Sollte hinhauen.
lg Steve

AW: Speichern mit Bedingung
05.04.2016 17:09:55
chris58
Danke nochmal.............es geht nun einwandfrei
Schönen Abend noch
chris

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige