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

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

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


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.

302 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige