Benutzer-Werkzeuge

Webseiten-Werkzeuge


Seitenleiste

word:nuetzliche_makros

Nützliche Makros

Hier können Nutzer hilfreiche Makros für Word für Windows einstellen.
In vielen Fällen ist es sinnvoll, häufig benutzte Makros auf Tastaturkürzel zu legen.

Zoomfaktor für neu geöffnete Dokumente einstellen

Wenn man einen großen Bildschirm hat, kann es sinnvoll sein, Briefe verkleinert einzustellen, damit sie zweiseitig gezeigt werden. In diesem Beispiel lädt sich die Zoomeinstellung automatisch beim Start von Word.

Sub AutoOpen()
'
' zoom Makro
'
  ActiveWindow.ActivePane.View.zoom.Percentage = 75
End Sub

Drucker umschalten (Beispiel)

Dieses Makro setzt den Drucker "wasserzeichen" als Standarddrucker.
Der Drucker "wasserzeichen" kann der mehrfach installierte Netzwerkdrucker sein, den man dann umbenennt und der eine Einstellung zum Ausdruck mit "Wasserzeichen" oder in anderem Format trägt.

Sub Wasserzeichendrucker()
  ActivePrinter = "wasserzeichen"
  MsgBox ("Wasserzeichendruck gesetzt")
End Sub

Das folgende Makro aktiviert den "Druck" als ausgehendes Fax über FritzFax: (FIXME)

Sub DruckFax()
  Dim StdDrucker
      StdDrucker = ActivePrinter
      ActivePrinter = "Fritzfax Drucker"
  
  Application.PrintOut FileName:="", Range:=wdPrintAllDocument, Item:= _
      wdPrintDocumentContent, Copies:=1, Pages:="", PageType:=wdPrintAllPages, _
      Collate:=True, Background:=False, PrintToFile:=False, PrintZoomColumn:=0, _
      PrintZoomRow:=0, PrintZoomPaperWidth:=0, PrintZoomPaperHeight:=0
  ActivePrinter = StdDrucker
  Application.Quit
End Sub

Ein einzelnes Dokument mit Wasserzeichen ausdrucken (z. B. für das Versorgunsamt)

Der Drucker "wasserzeichen" muß entsprechen eingerichtet sein.

Sub wasserzeichen()

nn = ActivePrinter
  ActivePrinter = "wasserzeichen"
      Application.PrintOut FileName:="", Range:=wdPrintAllDocument, Item:= _
      wdPrintDocumentContent, Copies:=1, Pages:="", PageType:=wdPrintAllPages, _
      Collate:=True, Background:=True, PrintToFile:=False, PrintZoomColumn:=0, _
      PrintZoomRow:=0, PrintZoomPaperWidth:=0, PrintZoomPaperHeight:=0
      ActivePrinter = nn
  
  End Sub

Medikamentenplan in Brief einfügen

Für die Tastaturbedienung von Word kann man folgendes Makro auf eine Tastenkombination legen (z.B. Strg. + J):

Sub mediplan()
'
' mediplan Makro
'
    Selection.TypeText Text:="$2033$"
    Application.Run MacroName:="Project.Menue.Makro_laden"
End Sub

Zweitausdruck mit Datumsstempel erstellen

Dieses Makro setzt eine kleine Box rechts oben mit dem Ausdruckdatum in einen Zweitausdruck eines Arztbriefes

Sub Zweitdruck()

If Documents.Count >= 1 Then

'MsgBox ActiveDocument.Name
'WordBasic.FileSaveAs Name:="virtuell.doc"
WordBasic.StartOfDocument
WordBasic.InsertFrame
WordBasic.FormatFrame Wrap:=1, WidthRule:=0, FixedWidth:="7 cm", _
HeightRule:=0, FixedHeight:="1 cm", _
PositionHorz:="Rechts", PositionHorzRel:=0, _
PositionVert:="5 cm", PositionVertRel:=0
WordBasic.Insert "Zweitausdruck erstellt am "
WordBasic.InsertDateTime InsertAsField:=0, DateTimePic:="d. M. yyyy"
WordBasic.FilePrint Range:=0
WordBasic.FileSaveAs Name:="virtuell.doc"
WordBasic.FileClose (wdDoNotSaveChanges)
'ActiveDocument.Close (wdDoNotSaveChanges)
'Documents.Add DocumentType:=wdNewBlankDocument

End If

End Sub

Bestimmte Wörter fett formatieren

Dieses Makro formatiert alle aufgeführten Wörter fett (2 Durchläufe, falls ein Wort zweimal vorkommt):

Sub fettformatieren()

Dim ueberschrift, liste
liste = Array("Anamnese:", "Befund:", "Neurologischer Befund:", "Psychischer Befund:", "Psychisch:", "Beurteilung:", "Therapie:", "Procedere:", "EEG:", "NLG:", "Anlaß der Untersuchung:", "Vorunterlagen:", "CW-Dopplersonographie:", "Farbkodierte Duplexsonographie:", "Transkranielle Dopplersonographie:", "Somatosensibel evozierte Potentiale:", "Visuell evozierte Potentiale:", "Akustisch evozierte Potentiale:", "Magnetisch evozierte Potentiale:", "Nachrichtlich:", "ENG:", "Elektroneurographie:", "EMG:", "Elektromyographie:", "CWD:", "TCD:", "Farbduplexsonographie:", "AEP:", "SEP:", "VEP:", "MEP:", "MMST:")
For Each ueberschrift In liste
    Selection.Find.ClearFormatting
    With Selection.Find
        .Text = ueberschrift
        .Replacement.Text = ""
        .Forward = True
        .Wrap = wdFindContinue
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
    End With
    Selection.Find.Execute
    Selection.Font.Bold = True
    Selection.Find.ClearFormatting
    With Selection.Find
        .Text = ueberschrift
        .Replacement.Text = ""
        .Forward = True
        .Wrap = wdFindContinue
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
    End With
    Selection.Find.Execute
    Selection.Font.Bold = True
    Selection.HomeKey Unit:=wdStory
    Next
      
End Sub

Diskussion

Diskussion

jrr, 07.09.2008 22:14

@bertram: Ist es eigentlich notwendig, die Variable "StdDrucker" mit Dim zu deklarieren? Welchen Zweck erfüllt "Application.Quit" am Ende? Danke

jrr, 10.01.2010 13:50

Durch Setzen von StdDrucker kann er nach dem Fritzen wieder mit dem vorherigen Drucker arbeiten. "Dim" wäre meiner Meinung nach nicht nötig, evtl. falls der Wert anderweitig gebraucht wird? Vermutung zu "Application.Quit": Wahrscheinlich wird das Wordfenster nach dem Faxen zugemacht???

johnny, 12.09.2010 17:46

Johnny, 12.09.2010 @bertram, besten Dank. Habe das Fax Makro für meine Faxanwendung "classic phone tools" angepaßt. (ActivePrinter = "Capture Fax BVRP") Funktioniert hervorragend. Zu "Application.Quit" schließt das gesamte Word Programm. Hier kann auch "Application.GoBack" stehen, so daß word weiter geöffnet bleibt.

word/nuetzliche_makros.txt · Zuletzt geändert: 03.08.2008 15:33 von wahnfried