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

Excel Makro abgelegte Datei überschreiben verhindern.

Excel Makro abgelegte Datei überschreiben verhindern.
01.04.2024 06:34:55
Bernd_
Hallo an Alle,

in dem unten stehenden Excel Makro werden aus einer xlsm Datei zwei Blätter als eine Datei mit dem Namen der xlsm Datei abgelegt. Blatt Test1und Blatt Test2
.
Dieses Makro wird durch einen Mensch ausgelöst, per Button. Es kommt nun vor das der Mensch den Button ein zweites Mal benutzt.
Dann wird die bereits abgelegte Datei überschrieben.

Kann man das Makro so ändern , damit wenn die DAtei bereits im Ordern liegt das Makro abgebrochen wird ?
Das Makro stammt nicht von mir.

Sub neuer_Monat()

Dim rngZelle As Range
Dim intFrage As Integer
intFrage = MsgBox("Möchten Sie einen neuen Monat anlegen?", vbYesNo)
If intFrage = 6 Then
intFrage = MsgBox("Sind Sie sicher das ein neuer Monat ist?", vbYesNo)
If intFrage = 6 Then

Sheets("Test1").Select

Application.Calculation = xlCalculationManual
frmLoad.Show (0)
Application.Wait Now + TimeValue("00:00:01")
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Worksheets(Array("Test1", "Test2")).Copy
Sheets("Test1").Select
Range("A1:AA1805").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.DisplayAlerts = False
With ActiveWorkbook
.SaveAs Filename:="\\XXXXXXXXXX\XXXXX\XXXXXXXXXXX\01-XXXXXXXXX_XXXXXXXXXX\XXXXXXXXXX\" _
& Format(Range("D1"), "MM") & "-" & Format(Range("D1"), "YYYY") & "_" & Format(Range("D1"), "MMMM") & "\" _
& Application.Substitute(ThisWorkbook.name, ".xlsm", "") _
& ".xlsx", FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
.Close
End With

Application.DisplayAlerts = True
With Worksheets("Test1")
For Each rngZelle In .Range("A5:AA1865")
If rngZelle.Locked = False Then rngZelle.MergeArea.ClearContents
Next rngZelle
End With


Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
Call Calculate

Unload frmLoad
End If
End If
End Sub



Gruß Bernd_

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

Betreff
Datum
Anwender
Anzeige
AW: Excel Makro abgelegte Datei überschreiben verhindern.
01.04.2024 07:32:34
Oberschlumpf
Hi Bernd,

füg in einem allgemeinen Modul diese Funktion ein:


Function fcOK(ByVal datei As String) As Boolean

Dim FSO As Object '//FileSystemObject
Dim f As Object '//File Object

Set FSO = CreateObject("Scripting.FileSystemObject")
If FSO.fileexists(datei) Then
fcOK = True
End If

End Function


Änder in deinem Code diese Zeilen...


Dim intFrage As Integer
intFrage = MsgBox("Möchten Sie einen neuen Monat anlegen?", vbYesNo)

...um in...


Dim intFrage As Integer

If fcOK("\\XXXXXXXXXX\XXXXX\XXXXXXXXXXX\01-XXXXXXXXX_XXXXXXXXXX\XXXXXXXXXX\" _
& Format(Range("D1"), "MM") & "-" & Format(Range("D1"), "YYYY") & "_" & Format(Range("D1"), "MMMM") & "\" _
& Application.Substitute(ThisWorkbook.name, ".xlsm", "") _
& ".xlsx") = True Then
MsgBox "Datei ist schon vorhanden"
Exit Sub
End If

intFrage = MsgBox("Möchten Sie einen neuen Monat anlegen?", vbYesNo)


Als Parameter wird in fcOK("...") der gleiche Dateiname erwartet, der auch in deinem .SaveAs-Code verwendet wird - vllt musst du den Code etwas anpassen...ich kann ja nix testen.

Hilfts?

Ciao
Thorsten
Anzeige
AW: Excel Makro abgelegte Datei überschreiben verhindern.
01.04.2024 08:00:28
Bernd_
Guten Morgen Thorsten,

Deine Änderungen haben sofort das gewünschte Ergebnis gebracht.

Herzlichen Dank

Gruß Bernd_
Anmerkung
01.04.2024 10:53:28
Uduuh
Hallo,
& Format(Range("D1"), "MM") & "-" & Format(Range("D1"), "YYYY") & "_" & Format(Range("D1"), "MMMM") & "\" _
kannst du auf
& Format(Range("D1"), "MM-YYYY_MMMM") & "\" _
eindampfen, was die Übersichtlichkeit erhöht.

Gruß aus'm Pott
Udo

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige