Suchen

Die Tastenkombination Strg + F zum Suchen ist hinlänglich bekannt. Sie funktioniert in allen Anwendungsprogrammen, die ich kenne, in allen Browsern, pdf-Programmen (allerdings leider nicht in Outlook). Aber in Visio.
Meistens werden Sie dort nach bestimmten Texten suchen.
Für die Programmierung ist es enorm wichtig, dass man auch nach Shape-Namen suchen kann. Also beispielsweise das Shape Sheet.18727. Der Name wird durch den (VBA-)Code ermittelt.

PinX und LocPinX

Gestern habe eine Visio-Zeichnung, aus der ich Informationen per Programmierung auslese, zurückgeschickt bekommen. Einige Informationen werden nicht gefunden, war der Vorwurf. Der Grund war schnell gefunden.
Der „Nachbarrtisch“ wurde nicht gefunden, weil ich davon ausgehe, dass der Pin sich immer in Mitte-Mitte des Shapes befindet. Wenn allerdings der Anwender (aus Versehen) den Pin verschiebt, so stimmen meine Programmierresultate nicht mehr.
Ich könnte nun die Position des LocPinX und LocPinY berechnen. Ich tendiere dazu in den Shapes die Funktion =Width*0.5 und Height*0.5 mit der Funktion GUARD zu sperren.

Pfeilrichtung

Ich lese per Programmierung die Laufrichtung von Gängen von Visio-Zeichnungen aus. Ich stutze, weil das Ergebnis nicht korrekt ist. Schaue mir die Zeichnungen genauer an: Warum zeigen einige Pfeile mit einem Winkel 90° nach links, während andere Pfeile mit dem Winkel -90° auch nach links zeigen? Die Lösung ist schnell gefunden: einige Pfeile wurden gespiegelt. Also muss man neben dem Winkel auch noch FlipY überprüfen. Dann findet man die Pfeilrichtung.

Verbinder oder Linien

Nun Verbinder können sich kreuzen – nicht jedoch „normale“ Linien. Das kann praktisch sein, wenn man über Verbindungslinien einen Rahmen legen möchte, um bestimmte Elemente zu gruppieren.
Um herauszufinden, ob es sich bei der Linie um eine „gewöhnliche“ Linie handelt oder um eine Verbinderlinie, kann man sie markieren. Bei Verbinderlinien sind kleine Pünktchen (Knoten) sichtbar. Oder man schaut in Entwicklertools / verhalten nach. Nur Verbinder besitzen die Registerkarte „Verbinder“.

Gruppenschutz

Ich verwende diesen Pararmeter gerne und häufig in Visio.
Sicherlich ist Ihnen schon bei vielen Shapes aufgefallen, dass ein Schutz auf Ihnen liegt – das Aufheben der Gruppierung ist nicht möglich. Ein Blick in Entwicklertools / Shape-Design / Schutz hilft auch nicht weiter.
Der Schutz liegt eine Ebene tiefer: im ShapeSheet im Abschnitt „Protection“ wurde der Wert der Zelle „LockGroup“ auf 1 (True) gesetzt. So kann der Anwender nicht mehr versehentlich die Gruppierung aufheben ([Shift] + [Strg] + [U]).
Ich schalten diesen Schutzmechanismus gerne bei Shapes ein, die ich an Firmen ausliefere – ein kleiner Schutz.

Der Nummerierungsassistent

Amüsantes Problem, das letzte Woche in der Visio-Schulung aufgetreten ist:
Einer Firma arbeitet in Visio mit dem Nummerierungsassistenten. Die Nummer soll aber nicht im Shape sondern außerhalb angezeigt werden. Hierfür würde ein weiteres Shape angelegt, das die Nummer des ersten Shapes „zieht“, beispielsweise über:
=Sheet.1!Prop.ShapeNumber
Diese Nummer in den Shapedaten kann man nun anzeigen lassen.
Beide Shapes werden gruppiert, was allerdings zur Folge hat, dass sich der Verbindungspunkt nicht mehr in der Mitte des Shapes befindet, was man leicht feststellt, wenn man eine Verbindungslinie zieht.
Die Frage war: Wie bekommt man die Gruppe verkleinert?
Die Lösung: Man schiebt das „Nummernshape“ in das große Shape.
Anschließend legt man ein weiteres Shape auf die Gruppe, das man „zur Gruppe hinzufügt“ (Start / Anordnen / Gruppieren).
Nun kann man das „Hilfsshape“ wieder löschen und das Nummernshape zurückziehen.
Dann funktioniert das Verbinden.
Tipp: Wenn die Nummer nicht im Shape, also nicht auf der Gruppe erscheinen soll, schalten Sie beim Nummerieren die Option „Shape-Nummern ausblenden“ ein (zweite Registerkarte: „Weitere Optionen“)

Shapedaten im Shape und auf dem Zeichenblatt

Amüsant. Ein Zeichenblatt hat Shape-Daten. Wenn nun ein Shape darauf verweist, also mit
=ThePage!Prop. …
einen Bezug herstellt, dann erhält ein neues, leeres Blatt die Shapedaten, sobald das Shape hinüber kopiert wird.
Das heißt: Speichert man das Shape in einer Schablone, bekommt das Blatt die Daten. Diese können gefüllt werden. Auf dem Shape werden sie dann angezeigt.

Maßstab

Erstaunlich: Wählen Sie eine Vorlage mit einem Maßstab – beispielsweise Raumplan. Ändern Sie den Maßstab in eine „krumme Zahl“ – beispielsweise 3,75 cm entsprechen 1000 mm.
Ziehen Sie eine Bemaßungslinie aus der Schablone. Ändern Sie im Fenster „Größe und Position“ die Länge. Wahrscheinlich klappt es. Allerdings – einige Male ziehen, eintragen, ziehen – dann stimmen Länge mit angezeigter Zahl nicht mehr überein. Ein Blick ins ShapeSheet gibt Auskunft: der Fall „benutzerdefiniert“ wurde dort nicht abgefangen.

Bemaßungslinien

Gute Idee.
Heute in der Visio-Schulung fragte eine Teilnehmerin, ob man denn Bemaßungslinien an Objekte im Raum, beispielsweise Säulen, kleben können. So, dass man den Abstand zwischen den Säulen schnell ablesen kann, wenn sich die Säulen verschieben.
Die Antwort: Da Bemaßungslinien Linien – also mit Anfangs- und Endpunkt versehene Shapes sind, kann man an die anderen Objekte Verbindungspunkte setzen und daran die Linie kleben. So wandert die Linie beim verschieben der Säulen mit und zeigt den Abstand an.

Datenexport

Guten Tag Herr Martin,

ich habe mal versucht eine Kombination von Visio und Excel, wie von Ihnen aufgezeigt zu realisieren. Dabei sind noch einige Schwierigkeiten aufgetaucht:

Welche Einstellung muss vorgenommen werden damit in der Spalte Beschreibung gleiche Einträge zusammen gefasst werden?

Die Antwort:
Sie haben beim Export die Möglichkeit, im dritten Schritt zu gruppieren und in den Optionen gleiche Werte zusammenzufassen: