Hier mal eine kleine Notiz für mich über meine bisherigen Erkentnisse aus der Arbeit mit VBA für Word 2003.
Seiteneinstellungen
ActiveDocument.PageSetup.PageWidth = CentimetersToPoints(24)
ActiveDocument.PageSetup.PageHeight = CentimersToPoints(30)
Mit diesen beiden Parametern kann man die Höhe und Breite einer Seite verändern. Die Funktion CentimetersToPoints() dient dazu einen Wert in Zentimetern angeben zu können.
Textformatierung
Schriftgröße
Selection.Font.Size = 10
Die Schriftgröße wird in ‘pt’ angegeben. Wie in Word selbst.
Schriftart
Selection.Font.Name = “Arial”
Ausrichtung
Selection.ParagraphFormat.Alignment = wdAlignParagraphCenter
Als Beispiel zum Zentrieren des Textes.
Drucken & Druckeinstellungen
Um den Druckvorgang direkt aus einem Makro heraus anzustoßen gibt es den Befehl ActiveDocument.PrintOut
ActiveDocument.PrintOut unterstützt dabei unter anderem die folgenden Parameter:
Background
Den Druckvorgang im Hintergrund starten.
PrintZoomPaperHeight
Die Höhe des Dokuments in Punkten (hier könnte man wieder auf CentimetersToPoints zurückgreifen)
PrintZoomPaperWidth
Die Breite des Dokumentsauch wieder in Punkten.
Weitere Funktionen
trim(String)
trim() entfernt wie in anderen Sprachen auch, die Leerzeichen am Anfang und Ende eines Strings.
mid(String, StartPosition, Länge)
Die Funktion mid() würde ich als Pendant von substr() in PHP bezeichnen. Damit ist es möglich einen String teilweise auszugeben indem man eine Startposition und eine Länge angeben kann.
mid(“Hallo!”,3,2) ergibt also z.B. ein “ll”
replace(String, ZuErsetzen, ErsetzenDurch)
Die Funktion replace() ermöglicht es bestimmte Teile eines Strings zu ersetzen. Dafür gibt man den Ausgangsstring, den zu ersetzenden Teil und natürlich den String an der dafür eingesetzt werden soll.
Um unerwünschte Zeilenumbrüche zu entfernen kann man als zu ersetzendes Zeichen auch ‘vbCrLf’ angeben.
UCase(String)
Verwandelt alle Zeichen in einem String in Großbuchstaben. (Bei PHP wäre das z.B. StrToUpper())
Das soll es auch erstmal gewesen sein. Alles in allem bin ich noch kein großer Freund von VBA allerdings finde ich das man sich doch relativ schnell einarbeiten kann. Ich denke das noch mindestens ein weiterer Teil folgen wird, da ich mich derzeit doch recht häufig mit VBA beschäftigen muss
Recent Comments