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

automatisches überschreiben der xls Datei

automatisches überschreiben der xls Datei
26.03.2008 13:37:00
Fred
Hallo zusammen.
Ich habe da ein Problem und weis nicht wie ich dieses lösen kann. Ich habe eine Tabelle die heist "Schichtübergabe.xls" und diese möchte ich gerne automatisch Durch eine andere Tabelle die genau so heist, aber in einem anderen Ordner liegt ersetzten.Und zwar sollte das an einem Bestimmten Datum passieren z.B. am 01.04.2008. Die neue Tabelle liegt im Ordner C:\Schichtübergabe\Tagesprotokoll . Die Datei die überschrieben werden soll liegt in C:\Schichtübergabe.
Ist soetwas möglich und wenn ja wie sollte soetwas gehen.
Grüße Fred

16
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: automatisches überschreiben der xls Datei
26.03.2008 13:51:34
dirk
Hallo!
Du kannst die Zieldatei ueberschreiben, indem du vorher application.screenupdating = False setzt,
z.b.
OrigFile = "Schichtübergabe.xls"
Origpath = "C:\Schichtübergabe\Tagesprotokoll\"
TargetFile = Origfile "selber Dateiname wie Originaldatei
Targetpath = "C:\Schichtübergabe\"
application.screenupdating = False
filecopy Origpath & OrigFile, targetpath & Targetfile
application.screenupdating = true
Sollte so gehen.
Gruss
Dirk

AW: automatisches überschreiben der xls Datei
26.03.2008 13:59:41
Fred
Hallo Dirk
vielen Dank für Deine schnelle Antwort. Leider bin ich m VBA nicht so bewandert, weisst Du vieleicht auch wie ich es anstellen kann, das der Code automatisch am 01.04.2008 ausgeführt wird. Und nur da und nicht an einem anderen Tag.
fred

Anzeige
Nicht ganz...
26.03.2008 14:01:54
Ramses
Hallo
Es muss korrekt heissen
Application.DisplayAlerts = False
Gruss Rainer

AW: Nicht ganz...
26.03.2008 14:07:00
dirk
Sorry! Natuerlich richtig. War mit meinen Gedanken woanders.
;-)
Dirk

AW: automatisch überschreiben der Orginal Datei
26.03.2008 14:08:15
Fred
Hallo Ramses
das verstehe ich alles nicht. Ich bin da absolut behindert in VBA und verstehe nur Kauderwelsch. Kann mir jemand nen vernünftigen Code Posten?.
Vielen dank für eure Mühe
Fred

AW: automatisch überschreiben der Orginal Datei
26.03.2008 14:12:00
dirk
Hallo!
Nochmal zum Verstaendniss: Um die Datei an einem bestimmten Datum zu kopieren muss Excel geoeffnet sein, damit VBA laeuft. Ist das der Fall?
Dirk

AW: automatisch überschreiben der Orginal Datei
26.03.2008 14:19:40
Fred
Ja die Datei ist geöfnet, Sie soll aber erst am z.B.01.04.2008 überschrieben werden.
Grüße Fred

Anzeige
AW: automatisch überschreiben der Orginal Datei
26.03.2008 14:39:24
dirk
Hallo Fred,
Dann sollte folgendes Macro gehen:
In Thisworkbook musst Du folgendes Macro einfuegen:

Private Sub Workbook_Open()
Application.OnTime Now + TimeValue("00:5:00"), "XLTransfer"  'started das Macro XLTransfer 5  _
minuten nach oeffnen des workbooks
End Sub


Dann die definitionen und das folgende Macro in ein Standardmodul einfuegen
Public dTime As Date, Transferdate as Date


Private Sub XLTransfer()
TransferDate = "1/4/2008"   'Transferdatum hier setzen
dTime = TransferDate + TimeValue("00:2:00")  'stated das kopieren 2 minuten nach oeffnen der  _
Excelmappe. Falls Mappe staendig offen, 2 minuten nach erreichtem Datum
Application.OnTime dTime, "XLTransfer"
OrigFile = "Schichtübergabe.xls"
Origpath = "C:\Schichtübergabe\Tagesprotokoll\"
TargetFile = Origfile 'selber Dateiname wie Originaldatei
Targetpath = "C:\Schichtübergabe\"
application.displayalerts= False
filecopy Origpath & OrigFile, targetpath & Targetfile
application.DisplayAlerts= true
MsgBox "Schichtuebergabe wurde kopiert!"
End Sub


Sollte so gehen.
Melde mal, ob ok.
Dirk

Anzeige
AW: automatisch überschreiben der Orginal Datei
26.03.2008 15:45:01
Fred
Hallo Dirk
Das Makro scheint soweit zu funktionieren, auser an einer stelle geht es in Debuggfehler, (70) zugriff verweigert.
Und zwar an dieser Stelle:
filecopy Origpath & OrigFile, targetpath & Targetfile
Obwohl die Datei nicht Passwort geschützt ist und das VBA Projekt auch offen ist.
Weisst Du Rat
Fred

AW: automatisch überschreiben der Orginal Datei
26.03.2008 15:59:10
Fred
Nachtrag nochmal. Kann es vieleicht daran liegendas die zu kopierende Datei geschlossen ist.Muss mann diese vieleicht imHintergrund einmal öffnen damit es geht.
fred

AW: automatisch überschreiben der Orginal Datei
26.03.2008 18:17:11
Jan
Hi,
dabei muss die zu überschreibende Datei geschlossen sein!
Machs mit SaveAs oder kill die geschlossene Datei zuerst.
mfg Jan

Anzeige
AW: automatisch überschreiben der Orginal Datei
26.03.2008 21:09:00
Fred
Hmm Das verstehe ich jetzt nicht, die geschlössene Datei soll ja die aktive Datei ersetzen. Und dann geöffnet werden.

AW: automatisch überschreiben der Orginal Datei
27.03.2008 06:20:18
dirk
Hallo Fred,
Du solltest nur eine Datei mit Namen Schichtuebergabe.xls offen haben. Diese Datei wird dann nach C:\Schichtuebergabe kopiert und ueberschreibt die dort (nicht geoeffnete) Datei Schichtuebergabe.xls
Du koenntest im Zielverzeichnis die Datei Schichtuebergabe.xls loeschen, bevor Du die aktuellere Datei kopierst.
Aendere dazu mal den folgenden Teil des Macros:
application.displayalerts= False
kill targetpath & targetfile 'loescht die Datei Schichtuebergabe.xls (targetfile) im Zielverzeichnis (Targetpath)
filecopy Origpath & OrigFile, targetpath & Targetfile
application.DisplayAlerts= true

Anzeige
AW: automatisch überschreiben der Orginal Datei
27.03.2008 08:21:00
dirk
Hallo!
Habe nochmal darueber nachgedacht. Es kann auch sein, das der Zugriff auf die zu kopierende Datei verweigert wird, da geoeffnet.
Aendere Mal den Code folgendermassen:
application.DisplayAlerts= False
ActiveWorkbook.SaveAs Filename:=origpath & "Tempfile.xls"
origfile = "Tempfile.xls"
filecopy Origpath & OrigFile, targetpath & Targetfile
application.DisplayAlerts= true
Gruss
Dirk

AW: automatisch überschreiben der Orginal Datei
27.03.2008 08:28:34
dirk
Hallo!
Habe nochmal darueber nachgedacht. Es kann auch sein, das der Zugriff auf die zu kopierende Datei verweigert wird, da geoeffnet.
Aendere Mal den Code folgendermassen:
application.DisplayAlerts= False
ActiveWorkbook.SaveAs Filename:=origpath & "Tempfile.xls"
origfile = "Tempfile.xls"
filecopy Origpath & OrigFile, targetpath & Targetfile
kill origpath & origfile 'Damit beim naechsten mal kein error kommt ;-)
application.DisplayAlerts= true
Gruss
Dirk

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige