VBA-Programmierung in Microsoft Excel

Tutorial: Excel-Beispiele

VBA-Begriff: Adjustments-Objekt

Shapes-Auflistung (Shape-Objekt)
Adjustments-Objekt

Enthält eine Auflistung von Anpassungswerten für die angegebene AutoForm, das WordArt-Objekt oder die Verbindung. Jeder Wert stellt dabei eine Anpassungsmöglichkeit des Korrekturziehpunktes dar. Da manche Ziehpunkte auf zwei Arten angepasst werden können, z. B. sowohl horizontal als auch vertikal, kann eine Form mehr Anpassungswerte als Korrekturziehpunkte besitzen. Die maximale Anzahl der Anpassungen einer Form beträgt acht.

Verwenden des Adjustments-Objekts

Verwenden Sie die Adjustments-Eigenschaft, um ein Adjustments-Objekt zurückzugeben. Mit Adjustments(Index), wobei Index die Indexnummer des Korrekturwertes ist, können Sie einen einzelnen Korrekturwert zurückgeben.

Unterschiedliche Formen besitzen eine unterschiedliche Anzahl von Korrekturwerten, unterschiedliche Arten von Korrekturen ändern die Geometrie einer Form auf unterschiedliche Weise und besitzen unterschiedliche Bereiche gültiger Werte. Beispielsweise zeigt die folgende Abbildung, in welcher Weise jeder der vier Korrekturwerte einer Legende mit Pfeil nach rechts an der Definition der Legendengeometrie beteiligt ist.

Legende mit Pfeil nach rechts mit unterschiedlichen Korrekturziehpunkten

Anmerkung   Da jede veränderbare Form andere Korrekturmöglichkeiten besitzt, lässt sich das Verhalten einer bestimmten Form bei Korrekturen am besten überprüfen, indem Sie manuell ein Versuchsbeispiel der Form erstellen, die Korrekturen bei eingeschaltetem Makro-Recorder vornehmen und anschließend den aufgezeichneten Code untersuchen.

In der folgenden Tabelle sind die Bereiche der gültigen Anpassungswerte für verschiedene Anpassungsarten zusammengefasst. Wenn Sie einen Wert angeben, der außerhalb des gültigen Bereichs liegt, wird der Korrektur in den meisten Fällen der am nächsten liegende gültige Wert zugewiesen.

Anpassungsart Anpassungswerte
Linear (horizontal oder vertikal) Allgemein stellt der Wert 0,0 den linken oder den oberen Rand der Form und der Wert 1,0 den rechten oder den unteren Rand der Form dar. Gültige Werte entsprechen den gültigen Korrekturen, die an der Form manuell vorgenommen werden können. Lässt sich ein Korrekturziehpunkt beispielsweise manuell nur über die Hälfte der Form ziehen, so beträgt der Maximalwert der entsprechenden Korrektur 0,5. Bei Formen wie z. B. Verbindungen und Legenden, bei denen die Werte 0,0 und 1,0 die Begrenzungen des durch die Anfangs- und Endpunkte der Verbindung bzw. der Legende festgelegten Rechtecks darstellen, können negative Zahlen und Zahlen über 1,0 als gültige Werte verwendet werden.
Radial Ein Anpassungswert von 1,0 entspricht der Breite der Form. Der Maximalwert beträgt 0,5 oder die halbe Breite der Form.
Winkel Winkel werden in Grad angegeben. Wenn Sie einen Wert außerhalb des Bereichs  - 180 bis 180 festlegen, wird er normalisiert, damit er im gültigen Bereich liegt.

Im folgenden Beispiel wird in myDocument eine Legende mit Pfeil nach rechts eingefügt und Anpassungswerte für die Legende festgelegt. Beachten Sie, dass die Legende nur drei Korrekturziehpunkte, aber vier Korrekturen besitzt. Die Korrekturen drei und vier entsprechen dem Ziehpunkt zwischen Spitze und Schaft des Pfeils.

Set myDocument = Worksheets(1)
Set rac = myDocument.Shapes.AddShape(msoShapeRightArrowCallout, _
    10, 10, 250, 190)
With rac.Adjustments
    .Item(1) = 0.5    ' adjusts width of text box
    .Item(2) = 0.15   ' adjusts width of arrow head
    .Item(3) = 0.8    ' adjusts length of arrow head
    .Item(4) = 0.4    ' adjusts width of arrow neck
End With