SaveCopyAs

Bild

Betrifft: SaveCopyAs
von: 83Rose
Geschrieben am: 12.04.2005 11:09:20
Hallo!
Ich möchte eine Datei sowohl an Ihrem aktuellen Ort als auch eine Kopie auf einem Server speichern.
Wenn ich nur über SaveAs zuerst am aktuellen Ort speichere und dann auf dem Server funktioniert es einwandfrei, allerdings wird dann die Datei auf dem Server zur aktuell geöffneten, das möchte ich jedoch nicht.
so wie ich es nicht möchte funktioniert es:


Sub Makro1()
' Datei an aktuellem Ort speichern
    ActiveWorkbook.Save
' Datei im Portal speichern
    Dim Datname
Datname = <a href=""http://bdtportal.bdt-rw.de/sites/azubi/Shared%20Documents/Formulare%20BDT/Reichweiten"">"http://bdtportal.bdt-rw.de/sites/azubi/Shared%20Documents/Formulare%20BDT/Reichweiten"</a>
    ActiveWorkbook.SaveAs Filename:=Datname & ".xls", FileFormat:=xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, CreateBackup:=False
'
End Sub


und so geht es nicht:

Sub Makro1()
' Datei an aktuellem Ort speichern
    ActiveWorkbook.Save
' Datei im Portal speichern
    Dim Datname
Datname = <a href=""http://bdtportal.bdt-rw.de/sites/azubi/Shared%20Documents/Formulare%20BDT/Reichweiten"">"http://bdtportal.bdt-rw.de/sites/azubi/Shared%20Documents/Formulare%20BDT/Reichweiten"</a>
    ActiveWorkbook.SaveCopyAs Filename:=Datname & ".xls", FileFormat:=xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, CreateBackup:=False
'
End Sub


Wo liegt mein Fehler, bzw. wie kann ich das Ganze anders lösen?
Gruß,
Ellen
Bild

Betrifft: AW: SaveCopyAs
von: 83Rose
Geschrieben am: 12.04.2005 11:14:29
bei beiden Codes kommt bei Datname natürlich das "a href"......"/a und die ganzen Dreieckchen weg, das liegt am html dieser Seite hier, das habe ich nicht miteingegeben.
Gruß,
Ellen
Bild

Betrifft: AW: SaveCopyAs
von: MichaV
Geschrieben am: 12.04.2005 12:24:08
Dim strAlterName As String
Hi,
ähnliches Problem hatte ich auch mal. Mit Savecopyas kannst Du nicht mehr als Filename angeben.
Speichere zuerst auf dem Server, und dann am alten Ort. Musst Dir nur alten Dateipfad merken lasssen. So würde es gehen:
With ActiveWorkbook
strAlterName = .Path & "\" & .Name
Application.DisplayAlerts = False 'vorhande Dateien werden ohne Rückfrage überschrieben!
.SaveAs Filename:="d:\test.xls" 'oder auf Deinem Server
.SaveAs strAlterName 'am alten Ort
Application.DisplayAlerts = True

End With
Gruß- Micha
PS: Rückmeldung wäre nett.
Bild

Betrifft: AW: SaveCopyAs
von: 83Rose
Geschrieben am: 12.04.2005 13:21:32
Hi!
Vielen Dank, da hätte ich auch selbst drauf kommen können.
Kleiner Tipp, für das
= .Path & "\" & .Name
verwende ich immer:
= Application.ActiveWorkbook.FullName
Gruß,
Ellen
Bild

Betrifft: AW: SaveCopyAs
von: MichaV
Geschrieben am: 12.04.2005 14:09:03
Hi,
danke für die Rückmeldung und für den Tip, hätt ich auch selber drauf kommen können ;o)
Gruß- Micha
Bild

Betrifft: AW: SaveCopyAs
von: Franz W.
Geschrieben am: 12.04.2005 12:12:13
Hallo Ellen,
probier das mal aus, vielleicht kannst du damit was anfangen. Das Makro speichert die Datei und legt gleichzeitig eine Sicherungsdatei mit Datum und Uhrzeit an - und zwar so wie es hier steht im selben Ordner wie die Datei:
Option Explicit

Sub Sicherungskopie_mit_Datum_und_Uhrzeit()
   Dim myPath As String
   Dim myName As String
   Dim myNameOEnd As String
   Dim myNewName As String
   
   'Pfad der aufrufenden Mappe:
      myPath = ActiveWorkbook.Path & "\"
   'Name der aufrufenden Mappe ohne Pfad :
      myName = ActiveWorkbook.Name
   'Name der aufrufenden Mappe ohne Endung :
       myNameOEnd = Replace(myName, Right(myName, 4), "")
   'neuer Dateiname mit Datum ("JJ.TT.MM.") und Uhrzeit ("hh:mm") :
       myNewName = myPath & myNameOEnd & Format(Date, "yyyy-mm-dd") & "   " & Format(Time, "hh-mm") & ".xls"
   ActiveWorkbook.Save
   ActiveWorkbook.SaveCopyAs myNewName
End Sub


Den von dir gewünschten Pfad trägst du in die Variable "myPath" ein.

Grüße
Franz
 Bild

Beiträge aus den Excel-Beispielen zum Thema "Aufstellung aller in der Liste enthaltenen Werte?"