Per VBA Word verschieben

Antwort erstellen

Smilies
:D :) :( :o :shock: :? 8-) :lol: :x :P :razz: :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: :badgrin: :doubt:
BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet
Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Per VBA Word verschieben

Re: Per VBA Word verschieben

Beitrag von emr » 16. Jun 2014, 08:44

Hallo Zusammen

Danke für eure Hilfe.
Habe es nun wie folgt gelöst:
1. Dokument neu Abspeichern (am richtigen Ort).
2. Altes Dokument weglöschen
3. Word schliessen.

Genau bei Punkt 3 liegt aber (warum auch immer) das Problem. Wenn ich mit Word.Application.Quit schliesse, kann ich nach erneutem öffnen des Dokumentes die eingebauten Buttons im geschützten Dokument nicht betätigen. Es sieht so aus, als hätte ich den Entwurfsmodus aktiv. Was ja allerdings nicht möglich ist, da der Dokumentenschutz aktiv ist.
Wenn ich allerdings Word manuell schliesse oder nur das Dokument über ActiveDocument.Close, kann ich beim wiederöffnen des Dokumentes die Buttons ganz normal verwenden.

Es muss am Befehl Word.Application.Quit liegen. Irgendwie scheint über diesen Befehl das Word in einem "komischen Zustand" geschlossen zu werden.
Kennt jemand von euch dieses Problem? Gibt es eine Lösung dafür?
Ich arbeite mit Word 2007.

Danke und Gruss

Re: Per VBA Word verschieben

Beitrag von Isabelle :-) » 13. Jun 2014, 06:41

Hallöchen,

Renés Vorschlag ist meiner Meinung nach die einzige Möglichkeit, denn "das derzeitig offene (zeitverzögert) beim Schließen killen" wird nicht gehen. Anders als in Excel gibt es in Word keine Möglichkeit die Zugriffsart von exklusiv auf readonly umzuschalten. Zumindest hab ich trotz intensiver Suche keine gefunden. Und ein exklusiv geöffnetes Dokument kann in keinem Fall gelöscht oder verschoben werden.

Re: Per VBA Word verschieben

Beitrag von mumpel » 12. Jun 2014, 21:30

Hallo!

Noch eine Möglichkeit:
Das Makro nicht in der zu verschiebenden Datei speichern, sondern zum Beispiel in der normal.dotm. Den Namen der geöffneten Datei in einer Variablen speichern. Die Datei dann schließen und mit der Name-Funktion verschieben/umbenennen. Zur Name-Funktion siehe VBA-Hilfe. Nach dem Umbennen/Verschieben die Datei wieder öffnen.

Gruß, René

Re: Per VBA Word verschieben

Beitrag von theoS » 12. Jun 2014, 20:50

Wenn das doc offen ist, kannst du bestenfalls eine Kopie davon speichern.
Anschließend kannst du das derzeitig offene (zeitverzögert) beim Schließen killen.

Per VBA Word verschieben

Beitrag von emr » 12. Jun 2014, 08:13

Hallo Zusammen

Habe mal wieder eine Frage.
Ich möchte ein geöffnetes Dokument mit einem Button von A nach B verschieben.

Mein Code sieht zur Zeit wie folgt aus:
Code: Alles auswählen
    Dim strQuelle As String
    Dim strZiel As String
    Dim objFSO As Object

    strQuelle = "C:\Temp\" & ThisDocument.Name
    If Dir(strQuelle) = "" Then MsgBox "Nix da!": Exit Sub
    strZiel = "C:\Temp1\"
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    objFSO.MoveFile strQuelle, strZiel
    Set objFSO = Nothing
Leider erhalte ich Immer die Meldung, dass er keinen Zugriff hat. Dies ist meiner Meinung nach auch logisch, da ich das Dokument geöffnet habe und ich manuell ein geöffnetes Dokument auch nicht verschieben kann. Kennt da jemand eine Möglichkeit dies zu umgehen?

Danke und Gruss

Nach oben