Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1336to1340
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

Word: User zur Makroaktivierung "zwingen"

Word: User zur Makroaktivierung "zwingen"
22.11.2013 15:31:25
Reinhard
Hallo Wissende,
in Excel kann ich ja Blätter ausblenden sodaß sie ohne Vba nicht mehr sichtbar werden.
Um die Blätter zu sehen muß der User Makros zulassen beim Start.
Auf welchem Wege kann man das auch in Word bewerkstelligen?
Im I-net fand ich bislang nichts dazu.
Eigene Basteleien führten u.a. dazu:
http://www.file-upload.net/download-8316703/WortMitMakroZwang2.doc.html
(erstellt in Word 2000)
Nachstehend ist der dazugehörige Code der Dok.
Bei "nur" öffnen und Schließen klappt ja meine Idee.
Öffnet der User ohne Makros, so kann er in der Doc nix machen und sieht nur den geleben Hinweistext auf Makro aktivieren beim Start.
öffnet er mit aktivierten Makros so kann er das Dokument bearbeiten wie er will.
Aber schon je nach Antwort bei der Abfrage beim Schließen: "Änderungen speichern ja/nein, kann er meine Idee locker aushebeln :-(
Seht, kennt ihr Lösungsmöglichkeiten?
Danke ^ Gruß
Reinhard
Im Modul ThisDocument:

Option Explicit
Private Sub Document_Close()
With ThisDocument
'.Saved
.Shapes("Makrohinweis").Visible = True
.Protect wdAllowOnlyFormFields, , "abc"
End With
End Sub
Private Sub Document_Open()
Dim S As Shape, Vorh As Boolean
For Each S In ThisDocument.Shapes
If S.Name = "Makrohinweis" Then Vorh = True
Next S
With ThisDocument
On Error Resume Next
.Unprotect "abc"
On Error GoTo 0
If Not Vorh Then Call Einmalig
.Shapes("Makrohinweis").Visible = False
.TrackRevisions = True
.PrintRevisions = False
.ShowRevisions = False
.Save
End With
End Sub
In einem Standardmodul:

Option Explicit
Sub Einmalig()
Dim S As Shape
For Each S In ThisDocument.Shapes
If S.Name = "Makrohinweis" Then S.Delete
Next S
Set S = ThisDocument.Shapes.AddShape(msoShapeHorizontalScroll, 175.05, 90.2, _
240#, 135#)
With S
.Name = "Makrohinweis"
.TextFrame.TextRange.Text = vbLf & "Öffnen Sie dieses Dokument bitte" _
& vbLf & "MIT aktivierten Makros."
With .TextFrame.TextRange.Font
.Name = "Times New Roman"
.Size = 14
.Bold = True
.UnderlineColor = wdColorAutomatic
End With
.Fill.ForeColor.RGB = RGB(255, 255, 0)
End With
End Sub

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Wir sind hier das Excel-Forum o.T.
22.11.2013 16:58:00
GuentherH
.
Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige