Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Worddatei im Hintergrund öffnen, speichern und schließen.

Mitglied: kristov

kristov (Level 2) - Jetzt verbinden

15.04.2013 um 14:53 Uhr, 5424 Aufrufe, 6 Kommentare

Hallo,

ich suche nach einer Möglichkeit, Worddateien zu öffnen, zu speichern und zu schließen, das alles im Hintergrund und in allen Unterverzeichnissen. Hintergrund ist das hier genannte Problem.

Hat da jemand was parat?

kristov
Mitglied: rubberman
15.04.2013, aktualisiert um 20:14 Uhr
Hallo kristov,

schmeiß das Script mal in den Ordner unter dem die Worddateien liegen und stelle sicher, dass keine der Dateien geöffnet ist.

*.vbs
01.
Option Explicit 
02.
 
03.
Dim oFSO, oWord, sErr 
04.
Set oFSO = CreateObject("Scripting.FileSystemObject") 
05.
Set oWord = CreateObject("Word.Application") 
06.
If Not IsObject(oWord) Then WScript.Quit 
07.
oWord.DisplayAlerts = 0 
08.
oWord.Visible = False 
09.
processDocs oFSO.GetParentFolderName(WScript.ScriptFullName) 
10.
oWord.Quit 
11.
Set oWord = Nothing 
12.
Set oFSO = Nothing 
13.
MsgBox "Fehlgeschlagene Dateien: " & vbNewLine & sErr, vbInformation Or vbSystemModal, "FERTIG" 
14.
 
15.
 
16.
Sub processDocs(sFolder) 
17.
  Dim oFolder, oSubfolder, oFile, oDoc 
18.
  Set oFolder = oFSO.GetFolder(sFolder) 
19.
  For Each oSubFolder In oFolder.SubFolders 
20.
    processDocs oSubFolder.Path 
21.
  Next 
22.
  Set oSubfolder = Nothing 
23.
  For Each oFile In oFolder.Files 
24.
    If InStr(1, oFSO.GetExtensionName(oFile.Name), "doc", vbTextCompare) = 1 Then 
25.
      On Error Resume Next 
26.
      Set oDoc = oWord.Documents.Open(oFile.Path) 
27.
      Err.Clear 
28.
      On Error Goto 0 
29.
      If IsObject(oDoc) Then 
30.
        oDoc.Save 
31.
        oDoc.Close 
32.
        Set oDoc = Nothing 
33.
      Else 
34.
        sErr = sErr & oFile.Path & vbNewLine 
35.
      End If 
36.
    End If 
37.
  Next 
38.
  Set oFile = Nothing 
39.
  Set oFolder = Nothing 
40.
End Sub
Das Script meldet sich, wenn es durch ist.

Grüße
rubberman
Bitte warten ..
Mitglied: kristov
16.04.2013 um 09:34 Uhr
Hallo rubberman,

funktioniert auf Anhieb! Vielen Dank!

kristov
Bitte warten ..
Mitglied: kristov
16.04.2013 um 11:16 Uhr
Hmm... eine Bitte noch:
Könnte man es so bewerkstelligen, das nicht alle Unterverzeichnisse durchsucht werden, sondern eine Textdatei mit den Pfaden als Inhalt (zB K:\v1\verzeichnis mit leerzeichen und Umlauten\2013\word.doc) als Basis hergenommen wird? Das wäre für mich doch praktikabler...
Bitte warten ..
Mitglied: rubberman
16.04.2013 um 18:24 Uhr
Hallo kristov,

ja, das ist auch nicht weiter kompliziert.
01.
Option Explicit 
02.
 
03.
Const sListFile = "list.txt" 
04.
 
05.
Dim oFSO, oListFile, oWord, oDoc, sDocPath, sErr 
06.
Set oFSO = CreateObject("Scripting.FileSystemObject") 
07.
If Not oFSO.FileExists(sListFile) Then 
08.
  MsgBox "Liste nicht gefunden.", vbCritical Or vbSystemModal, "FEHLER" 
09.
  WScript.Quit 
10.
End If 
11.
Set oListFile = oFSO.OpenTextFile(sListFile) 
12.
On Error Resume Next 
13.
Set oWord = CreateObject("Word.Application") 
14.
Err.Clear 
15.
On Error Goto 0 
16.
If Not IsObject(oWord) Then 
17.
  MsgBox "MS Word konnte nicht geöffnet werden.", vbCritical Or vbSystemModal, "ERROR" 
18.
  WScript.Quit 
19.
End If 
20.
oWord.DisplayAlerts = 0 
21.
oWord.Visible = False 
22.
 
23.
While Not oListFile.AtEndOfStream 
24.
  sDocPath = Trim(oListFile.ReadLine) 
25.
  If sDocPath <> "" Then 
26.
    If oFSO.FileExists(sDocPath) Then 
27.
      If InStr(1, oFSO.GetExtensionName(sDocPath), "doc", vbTextCompare) = 1 Then 
28.
        On Error Resume Next 
29.
        Set oDoc = oWord.Documents.Open(sDocPath) 
30.
        Err.Clear 
31.
        On Error Goto 0 
32.
        If IsObject(oDoc) Then 
33.
          oDoc.Save 
34.
          oDoc.Close 
35.
          Set oDoc = Nothing 
36.
        Else 
37.
          sErr = sErr & sDocPath & vbNewLine 
38.
        End If 
39.
      Else 
40.
        sErr = sErr & sDocPath & vbNewLine 
41.
      End If 
42.
    Else 
43.
      sErr = sErr & sDocPath & vbNewLine 
44.
    End If 
45.
  End If 
46.
Wend 
47.
oWord.Quit 
48.
oListFile.Close 
49.
Set oListFile = Nothing 
50.
Set oWord = Nothing 
51.
Set oFSO = Nothing 
52.
MsgBox "Fehlgeschlagene Dateien: " & vbNewLine & sErr, vbInformation Or vbSystemModal, "FERTIG"
sListFile musst du entsprechend anpassen. Aufpassen, dass immer absolute Pfade in der Liste stehen.

Grüße
rubberman
Bitte warten ..
Mitglied: kristov
18.04.2013 um 13:43 Uhr
ja, das ist auch nicht weiter kompliziert.

Das liegt wohl im Auge des Betrachters

Nochmals vielen Dank, auch diese Deine Variante funktioniert auf Anhieb problemlos!
Bitte warten ..
Mitglied: yenz85
16.08.2016 um 16:30 Uhr
Hi,

das Script hat mir schon weitergeholfen. Kann man auch eine Änderung in der Datei mit einbauen ? Es ist gaanz egal welche. Letztendlich geht es darum, das die Metafiles in der Datei nicht gespeichert werden (Reg hab ich angepasst und "manuell" funktioniert es auch). Dazu muss aber eine Änderung in der Datei erfolgen.

LG
Bitte warten ..
Ähnliche Inhalte
Windows Netzwerk
Explorer schließen und öffnen
gelöst Frage von Questionmark93Windows Netzwerk5 Kommentare

Hallo, Ich möchte MEINE explorer.exe schließen und wieder öffnen. Wie lautet der befehl? Weil wenn ich es schließe via ...

Microsoft Office

Excel Datei per Schaltfläche schließen (ohne speichern) und gleich wieder neu öffnen

gelöst Frage von mreskeMicrosoft Office3 Kommentare

Hallo, mich würde mal interessieren ob es möglich ist, dass man eine Exceldatei per Schaltfläche schließt (ohne speichern) und ...

VB for Applications

VBS - Exceldatei öffnen, drucken und schließen

gelöst Frage von KyrinjaVB for Applications8 Kommentare

Hallöle, ich habe da ein Problemunzwar will ich mehrere Exceldateien nacheinander öffnen jeweils mit dem aktuellen Monatsnamen als Arbeitsblatt. ...

VB for Applications

Im VB-Script: Worddatei, aktualisieren, speichern und exportieren.

Frage von dila21VB for Applications5 Kommentare

Hallo zusammen, ich habe ein Script, in der ich ein Worddokument öffne (Vorlage) dieses aktualisiere und als PDF speichere. ...

Neue Wissensbeiträge
Windows 10
Zero-Day-Lücke in Microsoft Edge
Information von kgborn vor 20 StundenWindows 10

In Microsofts Edge-Browser klafft wohl eine nicht geschlossene (0-Day) Sicherheitslücke im Just In Time Compiler (JIT Compiler) für Javascript. ...

Sicherheit
Microsoft und Skype: Sicherheit
Information von kgborn vor 20 StundenSicherheit

Die Tage gab es ja einige Berichte zur Sicherheit des Skype-Updaters. Der Updater von Skype läuft unter dem Konto ...

Datenschutz

Behörden ignorieren Sicherheitsbedenken gegenüber Windows 10

Information von Penny.Cilin vor 1 TagDatenschutz8 Kommentare

Hallo, passend zum Thema Ablösung LIMUX in München ein Beitrag bei Heise (siehe Link folgend). Behörden ignorieren Sicherheitsbedenken gegenüber ...

Sicherheit
Information Security Hub Munich airport
Information von brammer vor 1 TagSicherheit

Hallo, Neues Center für Cyber Kriminalität am Münchener Flughafen brammer

Heiß diskutierte Inhalte
Exchange Server
Exchange Postfach Einbindung Betriebs-rat -Arzt, Bewerbung .
gelöst Frage von YellowcakeExchange Server23 Kommentare

Hey ich habe da mal eine Denksport Aufgabe bekommen Genutzt wird ein Exchange Server 2010. hier gibt es den ...

Windows Server
Delgegierte OU via RDP verwalten - Objektverwaltung zuweisen
gelöst Frage von TOAOICEWindows Server12 Kommentare

Hallo, ich habe folgendes Problem. Ich möchte in meiner Domäne (Server2016), einer Gruppe (OUAdmin) Berechtigungen auf die OU Test ...

LAN, WAN, Wireless
Gigabit-Lan mit zwei 4-adrigen Kabeln?
Frage von ArvedirmerLAN, WAN, Wireless11 Kommentare

Ich habe folgendes Problem: Ich betreue eine kleine Firma die sich im 1.Stock eines Gebäudes befindet. Es existiert ein ...

Router & Routing
Routing Probleme mit Firewall
gelöst Frage von mb1811Router & Routing9 Kommentare

Hallo Zusammen! Ich habe folgende Problematik, wo ich ein wenig Input benötige: Gem. angehängter Skizze habe ich folgenden Stand: ...