Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Datei soll beim speichern nicht geöffnet werden

Datei soll beim speichern nicht geöffnet werden
07.09.2007 10:32:00
Benjamin
Hi,
ich habe ein Makro in Excel erstellt mit dem immer die geöffnete Datei nach einer Zeit neu abgespeichert wird.
Aber jedesmal beim Speichern wird das Dokument auch gleichzeitig geöffnet.
Gibt es eine Möglichkeit das Makro so zu verändern, dass die Datei gespeichert wird ohne dass sie nochmal geöffnet wird?
So sieht das Makro aus:

Sub dateizähler()
Dim datei As String, zähler As Byte
zähler = 0
datei = Dir("C:\Zusatz*.xls")
Do Until datei = ""
zähler = zähler + 1
datei = Dir()
Loop
If zähler = 0 Then
ActiveWorkbook.SaveAs "C:\Zusatz.XLS"
Else
ActiveWorkbook.SaveAs "C:\Zusatz" & zähler & ".XLS"
End If
End Sub


Mit freundlichen Grüßen
Benjamin

Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Datei soll beim speichern nicht geöffnet werden
07.09.2007 11:08:00
fcs
Hallo Benjamin,
verwende SaveCopyAs statt SaveAs, dann bleibt die geöffnete Datei (das Original) die aktive Arbeitsmappe.
Gruß
Franz

Sub dateizähler()
Dim datei As String, zähler As Byte
zähler = 0
datei = Dir("C:\Zusatz*.xls")
Do Until datei = ""
zähler = zähler + 1
datei = Dir()
Loop
If zähler = 0 Then
ActiveWorkbook.SaveCopyAs "C:\Zusatz.XLS"
Else
ActiveWorkbook.SaveCopyAs "C:\Zusatz" & zähler & ".XLS"
End If
End Sub


Anzeige
AW: Datei soll beim speichern nicht geöffnet werde
10.09.2007 14:43:00
Benjamin
Hallo,
wenn ich SaveCopyAs benutze öffnet Excel zwar keine neue Mappe, aber es kommt ein Hinweis den man jedesmal manuel bestätigen müsste. Und das Programm soll ja automatisch laufen.
Der Hinweis lautet wie folgt:
kanal_4.xls ist bereits geöffnet. Wenn Sie es erneut öffnen, verlieren Sie damit alle Änderungen, die Sie eingegeben haben. Soll kanal_4.xls erneut geöffnet werden?
Gibt es noch einen anderen Weg damit Excel nicht jedesmal eine neue Mappe aufmacht?
Hier nochmal das Programm:

Sub Test01()
Application.OnTime Now + TimeValue("00:00:5"), "Test02"
End Sub



Sub Test02()
ChDir "C:\Download\Excel Projekt"
Workbooks.Open Filename:="C:\Download\Excel Projekt\kanal_4.xls"
Range("F1").Select
ActiveCell.FormulaR1C1 = "=IF(RC[-3]>=1,1,0)"
Range("F1").Select
Selection.AutoFill Destination:=Range("F1:F500"), Type:=xlFillDefault
Range("F1:F44").Select
Range("H1").Select
ActiveCell.FormulaR1C1 = "=SUM(C[-2])"
Range("H2").Select
Application.OnTime Now, "dateizähler"
Application.OnTime Now + TimeValue("00:00:5"), "Test01"
End Sub



Sub dateizähler()
Dim datei As String, zähler As Byte
zähler = 0
datei = Dir("C:\Zusatz*.xls")
Do Until datei = ""
zähler = zähler + 1
datei = Dir()
Loop
If zähler = 0 Then
ActiveWorkbook.SaveCopyAs "C:\Zusatz.XLS"
Else
ActiveWorkbook.SaveCopyAs "C:\Zusatz" & zähler & ".XLS"
End If
End Sub


Mit freundlichen Grüßen
Benjamin

Anzeige
AW: Datei soll beim speichern nicht geöffnet werde
11.09.2007 03:12:59
fcs
Hallo Benjamin,
ergänze die Prozedur "Test02" um eine Pürfung of die Datei kanal_4.xls schon geöffnet ist. Dann ggf. die Open-Anweisung überspringen.
Gruß
Franz

Sub Test02()
Dim wb As Workbook, offen As Boolean
ChDir "C:\Download\Excel Projekt"
'Prüfung ob kanal_4.xls geöffnet ist
For Each wb In Application.Workbooks
If LCase(wb.Name) = LCase("kanal_4.xls") Then
wb.Activate
offen = True
Exit For
End If
Next
If offen = False Then
Workbooks.Open FileName:="C:\Download\Excel Projekt\kanal_4.xls"
End If
Range("F1").Select
ActiveCell.FormulaR1C1 = "=IF(RC[-3]>=1,1,0)"
Range("F1").Select
Selection.AutoFill Destination:=Range("F1:F500"), Type:=xlFillDefault
Range("F1:F44").Select
Range("H1").Select
ActiveCell.FormulaR1C1 = "=SUM(C[-2])"
Range("H2").Select
Application.OnTime Now, "dateizähler"
Application.OnTime Now + TimeValue("00:00:5"), "Test01"
End Sub


Anzeige
AW: Datei soll beim speichern nicht geöffnet werde
11.09.2007 11:42:00
Benjamin
Es funktioniert.
Vielen Dank.
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige