Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1436to1440
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
Inhaltsverzeichnis

Excel to Word - Schutz

Excel to Word - Schutz
30.07.2015 14:09:27
Robin
Schönen Guten Tag,
habe mich heute hingesetzt und wollte von Excel nach Word importieren um einen Teil meiner Arbeit fix abzuwickeln, funktioniert auch zu 99 %, nur dieser Schutz will einfach nicht wieder rein.
Hier der Code:
Sub Test()
Dim a1, a2, a3, a4, a5, a6 As String
Dim strFileName, Pfad, Datei As String
Dim objWDApp As Object
a1 = Range("B1").Value
strFileName = ThisWorkbook.Path & "\" & a1& ".dotx"
If Dir(strFileName)  "" Then
With Sheet1
a2 = .Range("B2")
a3 = .Range("B3")
a4 = .Range("B4")
a5 = .Range("B5")
a6 = .Range("B7")
End With
If ActiveSheet.Range("B6") = "xxx" Then
VerGF = "zzz: " & a5
Else
VerGF = "yyy: " & a5
End If
If objWDApp Is Nothing Then Set objWDApp = CreateObject("Word.Application")
With objWDApp
.Visible = True
Set objWDDoc = .Documents.Open(strFileName)
.ActiveDocument.Unprotect Password:="test"
.ActiveDocument.Bookmarks("a2").Range = aa2
.ActiveDocument.Bookmarks("a2").Range = aa2
.ActiveDocument.Bookmarks("a2").Range = aa2
.ActiveDocument.Bookmarks("a3").Range = aa3
.ActiveDocument.Bookmarks("a3").Range = aa3
.ActiveDocument.Bookmarks("a3").Range = aa3
.ActiveDocument.Bookmarks("a4").Range = aa4
.ActiveDocument.Bookmarks("a4").Range = aa4
.ActiveDocument.Bookmarks("a4").Range = aa4
.ActiveDocument.Bookmarks("a5").Range = aa5
.ActiveDocument.Bookmarks("a5").Range = aa5
.ActiveDocument.Bookmarks("a6").Range = aa6
.ActiveDocument.Protect Password:="test", Type:=wdAllowOnlyFormFields
Pfad = "C:\Users\Robin\Desktop\"
Datei = a2 & ".dotx"
.ActiveDocument.SaveAs Pfad & Datei
.ActiveDocument.Close
objWDApp.Quit
End With
End If
End Sub
Habe mein Problem einmal fett markiert.
Es gibt keine Fehlermeldung, nichts, er fährt drüber und ignoriert es.
Beim Schutz aufheben (paar Zeilen darüber), hat er kein Problem, führt das aus und läuft wie geschmiert.
Ich hoffe jemand weis wo der (hoffentlich) "kleine" Fehler sich verbirgt.
Greetings,
Robin H.

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Excel to Word - Schutz
30.07.2015 14:41:49
JoWE
Hallo Robin,
soweit ich weiß, ist beim Schutz setzen zwingend die Art des Schutzes anzugeben:
z.B. Schutz setzen + nur Lesen:
If ActiveDocument.ProtectionType = wdNoProtection Then
ActiveDocument.Protect Type:=wdAllowOnlyReading, Password:="test"
End If
Gruß
Jochen

Excel - Word - Konstanten...
30.07.2015 14:44:34
Case
Hallo, :-)
das ist klar. Du arbeitest mit Late Binding nutzt aber Wordkonstanten die ohne einbinden der entsprechenden Library nicht klappen. :-)
Also entweder im Deklarationsbereich:
Const wdAllowOnlyFormFields = 2
Oder im Code:
.ActiveDocument.Protect Password:="test", Type:=2
Servus
Case

Anzeige
AW: Excel - Word - Konstanten...
30.07.2015 14:55:56
Robin
@Jochen, danke für den Versuch, aber ich wollte schon das man "Formular Felder" ausfüllen kann.
@Case, da hat sich der "kleine" Fehler eingeschmuggelt, bei soviel basteln und probieren, vielen Dank für die schnelle Erläuterung & Rettung.
Greetings, Robin H.

AW: Excel - Word - Konstanten...
30.07.2015 15:26:05
JoWE
Hi,
danke für die Rückmeldung.
Entschuldige dass ich Dir keine 100%-Lösung anbot. Ich war bei Level "VBA gut" sicher, Du wärst schlau genug und in der Lage, den Schutztyp in meinem Beispiel selbständig ersetzen zu können.
Gruß
Jochen

AW: Excel - Word - Konstanten...
30.07.2015 15:37:06
Robin
@Jochen, nun ja dein Code war genau wie meiner nur mit einer If-Abfrage bestückt welche ich schon einmal versucht hatte, vor diesem Beitrag, um zu schauen, ob er es denn fehlerlos ausführt.
Des weiteren hast du nichts anderes gemacht, als mein Code umgedreht und "FormFields" mit "OnlyRead" ersetzt.
Kein Grund gleich die Intelligenz zu hinterfragen, nimm die Antwort von Case mit auf den Weg, denn deine war leider genauso Falsch wie meine.
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige