Steuerelemente und Gruppen

Der Umgang mit den verschiedenen Koordinatensystemen in Visio ist nicht trivial:
Ein Shape besitzt einen PinX und PinY, die auf dem Zeichenblatt verortet sind. Ihre Position innerhalb des Shapes wird durch die Zellen LocPinX und LocPinY festgelegt. Darauf beziehen sich sowohl Textblöcke als auch andere Shapes, wenn das „Hauptshape“ eine Gruppe darstellt.
Gegeben sei eine solche Gruppe (Sheet.4) Liegt auf der Gruppe nun ein Steuerelement (ein Control), darf die Linie des inneren Shapes nicht auf
=Sheet.4!Controls.Row_1.Y
verweisen. Das Control bezieht sich auf die Geometrie der Gruppe. Man muss es auf
=Sheet.4!Controls.Row_1.Y-Sheet.4!Height/2
setzen. Der Faktor 0.5 kommt dadurch zustande, weil der LocPinY auf Height*0.5 liegt. Dann funktioniert es.
20161101controls01
20161101controls0220161101controls03

Text an der selben Position

Der Kunde möchte bestimmte Texte stets an der gleichen Stelle auf einem Zeichenblatt positioniert haben. genau: einige Millimeter oberhalb einer Linie.
Nun: mit einem Bezug auf die Y-Position des Shapes ist das kein Problem. Über ein Steuerelement kann der Text dennoch verschoben werden. So wie auch die Position des querlaufenden Balkens.

20161018messstelle01

201610108messstelle02

Verbindungspunkte

Kunde möchte auf einer Linie ganz viele Verbindungspunkte haben. Nun ein paar Zeilen Code und schon sind die 96 Verbindungspunkte im gleichen Abstand zueinander gesetzt. So etwas mache ich nicht per Hand!
20161018verbindungspunkte
Sub Verbindungspunkte()
 
Dim vsShape As Shape
Dim i As Integer
Set vsShape = ActivePage.Shapes(„Sheet.430“)
vsShape.AddRows visSectionConnectionPts, i, 0, 96
For i = 1 To 96
vsShape.Section(visSectionConnectionPts).Row(i).Cell(0).FormulaU = „=2 mm+2 mm*“ & (i – 1) * 2
Next
 
End Sub

Verborgene Blätter und pdf

Amüsant: Für eine Firma habe ich eine Vorlage eingerichtet. Sie enthält ein Zeichenblatt mit mehreren Elementen. Die Vorlage enthält ein weiteres Zeichenblatt, das ich über das ShapeSheet ausgeblendet habe (UIVisibility 1).
Ein Blatt ist verborgen
Ein Blatt ist verborgen
Nun fragte mich der Kunde, warum beim pdf-Export zwei Blätter ausgedruckt werden. Natürlich mein verborgenes Blatt.
Leider ein Blatt zu viel im pdf-Dokument
Leider ein Blatt zu viel im pdf-Dokument
Um dies zu verhindern, schaue ich ins ShapeSheet, ob es dort eine Blatt-Eigenschaft „NonPrinting“ (wie beim Shape) gibt. Leider nein.
Nun – da ich nur die Informationen des verborgenen Blattes benötige, wandle ich es in ein Hintergrundblatt um. Und damit wird es auch nicht gedruckt.

Linienformate

Hallo Herr Martin,
für technische Zeichnung benötige bei Shapes unterschiedliche Kantenabrundungen: Rechteck und Kurven. Wie mache ich das?
Die Antwort: So etwas funktioniert nur mit mehreren Shapes (die Sie natürlich gruppieren können). Ein Shape kann nur ein Linienformat besitzen.
20160923linie01
20160923linie02

Firewall und Linien

Amüsante Frage gestern in der Visio-Schulung:
In der Schablone „Netzwerk und Peripheriegeräte“ befindet sich eine Firewall. Ebenso in der Schablone „Netzwerk und Peripheriegeräte – 3D“. Legt man die 3D-Firewall auf eine Verbinderlinie, ist alles okay. Bei der 2D-Firewall dagegen springt die Verbinderlinie zur Seite.
Die Antwort ist schnell gefunden: In den Verhaltenseinstellungen (Entwicklertools) ist bei der 2D-Firewall voreingestellt:
„Verhalten beim Platzieren: Ausrichten und Umleiten“
Bei der anderen Firewall hingegen:
„Verhalten beim Platzieren: Entscheidung durch Visio“.
Sie können ebenso explizit einschalten:
„Verhalten beim Platzieren: Nicht ausrichten und Umleiten“
20160922firewall0120160922firewall0220160922firewall0320160922firewall0420160922firewall05

Verbindungspunkte schützen?

Heute in der Visio-Schulung kam die für mich überraschende Frage, ob man denn Verbindungspunkte schützen könne.
Meine Antwort: Man kann sie mit der Funktion GUARD gegen ein Verschieben schützen, aber nicht gegen das Löschen. Man kan auch nicht verhindern, dass der Anwender neue Verbindungspunkte in Visio auf einem Shape erzeugt.

20160921verbindungspunkte

Kleine Schrift

In der letzten Visio-Schulung fragte mich ein Teilnehmer verwundert, warum plötzlich die Schrift so klein so. Zwei Texte wurden in der Arial 12 Punkt erfasst – aber bei einem Textblock war die Schrift kleiner.
Des Rätsels Lösung: Der Teilnehmer hatte den Text tiefgestellt formatiert. Entweder er hat nichts markiert, die Option „Tiefgestellt“ eingestellt (sie wurde somit zum Standardformat) und anschließend einen neuen Textrahmen aufgezogen.
Oder er hat aus Versehen die Tastenkombination [Strg] + [+] gedrückt.
Übrigens: Diese wunderschönen Saurier kann man vom Visio Guy herunterladen:
http://www.visguy.com/2009/11/18/visio-dinosaur-shapes/

20160917saurier 20160917saurier02

Verbinderlauf

Manchmal muss man schon etwas schummeln.
Angenommen ein Verbinder wurde beschriftet. Angenommen Sie möchten nun den Lauf des Verbinders durch den Knoten verändern. Leider kann man den Konten nicht auswählen.
Die einzige Möglichkeit, die ich aus diesem Dilemma sehe, ist: den Text verschieben. Dann kann man den Verbinder verschieben.

20160916verbinder01 20160916verbinder02

SVG und XML

Hallo Herr Martin,
ich habe eine große (technische) Zeichnung erstellt, die ich als SVG abspeichern kann. Ich kann sie so im Browser ansehen und habe sämtliche Informationen in der XML-Datei, auf der das SVG-Format beruht, zur Verfügung. Leider löscht Visio beim Export die letzten beiden schließende g-Tokens (</g>).
Die Antwort: Ja, das ist mir auch schon aufgefallen: Ab einer bestimmten Dateigröße (5 MByte?) macht Visio diesen Unsinn.
20160915svg02 20160915svg01