Text drehen – geht nicht

Ein Teilnehmer in der Visio-Schulung wundert sich, dass er den Text eines Pfeiles mit dem Werkzeug „Textblock“ nicht drehen kann. Ich frage, ob er den Pfeil durch einen Verbinder erzeugt hat. Ein Blick in den Shape-Namen zeigt, dass er aus dem Master-Shape „Linie mit Pfeil“ erzeugt wurde.
Und ein zweiter Blick ins ShapeSheet zeigt – tatsächlich: der Winkel ist geschützt.

20160913pfeil

Bedingte Formatierung

Eine hübsche Frage aus der letzten Visio-Schulung:
Ein Verbinder soll blau formatiert werden bei einem (Prozent-) Wert > 50; bis einschließlich 50 soll die Linie rot dargestellt werden.
Die Datengrafiken scheiden aus, da man dort nur die Füllung bedingt formatieren kann, jedoch nicht die Linie. Über Layer kann man zwar Linien formatieren, aber nicht bedingt. Also das ShapeSheet:
Aus eine Verbinderlinie wird eine Dateneigenschaft eingetragen. Diese wird über Einfügen / Feld auf der Linie angezeigt und kann problemlos mit den Werkzeug „Textblock“ verschoben werden.
Im ShapeSheet wird in der Zelle LineColor folgende Formel eingetragen:
=GUARD(IF(Prop.Anteil<=50,RGB(255,0,0),RGB(0,0,255)))
Natürlich kann man auch weitere Farben verwenden. So kann man eine bedingte Formatierung nachbilden.

20160912verbinder01

Gruppen und drehen

Schnell eine technische Zeichnung erstellt – eine Rakete.

20160911rakete
Da die Container und Legenden für meine Zwecke nicht genügten, habe ich eigene Beschriftungssysmbole erstellt. Sie sind gruppiert. Dreht man die Gruppe, dreht sich der Text man. Man kann nun entweder innerhalb der Gruppe das Shape wieder „zurück“ drehen. Oder man dreht den Text mit Hilfe des Werkzeugs „Textblock“ „zurück“.

20160911rakete02 20160911rakete03 20160911rakete04 20160911rakete05
Übrigens: Kennen Sie die „Originalrakete“?

Eigene Organigrammsvorlage

Ich hätte es nicht geglaubt, aber es funktioniert:
Wenn Sie in Visio 2010 die Vorlage Organigramm öffnen, können Sie auf ihrer Basis eine neue Vorlage erstellen.
Ziehen Sie die Shapes für Chef und Mitarbeiter auf das Zeichenblatt, formatieren Sie sie und speichern Sie diese Shapes in einer neuen Schablone.
Achtung: Die Shapes müssen andere Namen tragen als die Shapes in der Orga-Schablone, beispielsweise xyPosition.
Achtung: Gut testen – möglicherweise müssen einige Einstellungen im Shapesheet mit GUARD fixiert werden, damit der Assistent sie nicht überschreibt.
20160904Orga01
Und: nun sehr erstaunlich: trägt man in eine Excel-Tabelle die Namen der neuen Mastershapes ein, greift der Assistent darauf zu und erzeugt ein Organigramm mit den neuen Shapes. Klasse!
20160904Orga02 20160904Orga03

Dynamische Listen

Hallo Herr Dr. Martin,
 
vielen Dank für die schnelle Antwort.
 
Gleichzeitig hänge ich mal mein Beispiel vom Klimaschrank an. Ich habe da die Shape Daten kreiert. Nun möchte ich erreichen, wenn ich aus der Liste der Modelle (Property Model) eines auswähle, dass sich die Werte von „Air Flow“ (Property AirFlow), „DX Cooling Capacity (total)“ (Property DX_total) usw. ändern. Kann man das erreichen und wie?
 
Vielen Dank im Voraus.
20160811Daten01 20160811Daten02
#######
Hallo Herr P.,
Da Sie einige längere Texte haben, schlage ich folgendes Vorgehen vor:
Ich habe einige User-defined Zellen eingefügt:
In User.Model steht die Formel:
=FIND(Prop.Model,Prop.Model.Format)
Sie ermittelt die Position des Auswahltextes aus der Liste, also bei CCD/U 41 A den Wert 1, bei CCD/U 61 A den Wert 12, bei CCD/U 81 A den Wert 23 usw.
Die Zelle User-Auswahl wandelt diese Liste in 0,1,2,3,4,5,6,7 um.
In die Zelle User.Werte habe ich Dummy-Werte eingetragen: die erste Liste lautet 1;2;3, die zweite 4;5;6, die dritte 7;8;9 usw. getrennt wurden sie durch ein „|“.
In der Zelle User-Liste (=INDEX(User.Auswahl,User.Werte,“|“)) ermittle ich die gewünschte Liste. Diese wird nun in die Zelle Prop.Air_Flow gezogen.
So etwas möchten Sie?
20160811Daten03

ShapeSeet – Dynamische Daten

Sehr geehrter Herr Dr. Martin,
 
ich habe mir gerade Ihr Buch „Visio 2010 Programmierung“ zugelegt.
 
Ich habe ein Shape erstellt (Klimaschrank), das in den Abmessungen für eine Reihe von Modellen gleich ist, sich aber in den technischen Details unterscheidet. Ich habe mir deshalb eine Reihe von Shape Daten erstellt. Nun möchte ich die Shape Daten selbst (Properties) ändern, wenn ich das Modell in der Auswahlliste das Modell auswähle (CCD/U 41 A;CCD/U 61 A;CCD/U 81 A;CCD/U 121 A;CCD/U 171 A;CCD/U 201 A;CCD/U 110 CW;CCD/U 200 CW).
Ich habe mir mal das Beispiel mit der Flügelmutter angeschaut und versucht, den Durchmesser zu setzen. Dazu habe ich die Eigenschaft auf „Visible“ gesetzt und unter „Actions“ einen neuen Eintrag „Actions.Row_5“ mit „=SETF(GetRef(User.Diameter),Prop.Diameter)“ erzeugt. Leider bleibt der voreingestellte Wert immer erhalten, egal welchen Durchmesser ich angebe.
Wie kann man die Werte automatisch verändern? Muss ich dazu ein VBA Makro schreiben?
####
Hallo Herr P.,
 
Sie haben einen Parameter in der Formel vergessen, bzw. falsch eingetragen: Sie muss korrekt heißen:
 
=SETF(GetRef(Prop.Diameter.Invisible),FALSE)
 
wenn Sie die Eigenschaft einblenden woollen (Invibible = FALSE)
 
Sie können auch auf die Funktion GetRef verzichten und schreiben:
 
=SETF(„Prop.Diameter.Invisible“,TRUE)
 
wenn Sie sie wieder ausblenden wollen.
Oder Sie packen beide Funktionen in eine Zelle (dynamisch: ein- und ausschalten).
 
Wenn Sie den „Umweg“ übe eine benutzerdefinierte Zelle gehen, dann lautet die Formel:
 
=SETF(GetRef(User.Diameter),0)
 
oder fürs Ausschalten (die Alternative):
 
=SETF(„User.Diameter“,1)
 
Dann verweisen Sie in der Zelle Prop.Diameter.Invisible auf:
 
=User.Diameter
20160810Schraube02 20160810Schraube01

Eigene Shapes – ein Motorradfahrer

Wir bauen einen Motorradfahren mit den visio-eigenen „Hausmitteln“.

20160730Motorrad01Ich beginne mit dem Helm. Hierfür verwende ich einen Kreis und ein Rechteck. Zuerst wird der Kreis markiert, anschließend das Rechteck. Vom Kreis wird über Entwicklertools / Shape-Design / Subtrahieren das Rechteck abgezogen.

20160730Motorrad02

Erneut wir ein Rechteck auf die Form gelegt. Mit dem Bleistift-Werkzeug kann das Rechteck in ein Trapez transformiert werden.

20160730Motorrad03

Beide Shapes werden markiert und über Entwicklertools / Shape-Design / Gesamtmenge verschmolzen.

20160730Motorrad04

Der Helm ist fast fertig – es fehlt noch das Visier.

20160730Motorrad05

Dazu wird erneut ein Rechteck über das Shape gelegt. Das Rechteck wird mit dem Bleistift-Werkzeug deformiert.

20160730Motorrad06

Der fertige Helm – ein bisschen bunt.

20160730Motorrad07

Für den Körper werden Rechtecke übereinandergelegt. Einige werden mit dem Bleistift-Werkzeug modifiziert, andere werden abgerundet (über Format / Linie).

20160730Motorrad08

Die einzelnen Shapes werden markiert und über Entwicklertools / Shape-Design / Gesamtmenge miteinander verschmolzen.

20160730Motorrad09

Möglicherweise muss man einige Knoten entfernen. Hier leistet erneut das Werkzeug „Bleistift“ gute Dienste.

20160730Motorrad11

Für den Reifen werden zwei Kreise aneinander ausgerichtet (Mitte – Mitte). Anschließend mit Entwicklertools / Shape-Design / Kombinieren ein „Loch“ erzeugt.

20160730Motorrad12

Der eine Reifen kann verschoben werden. Mit gedrückter Strg-Taste wird er dupliziert. Mit gleichzeitig gedrückter Shift-Taste bleibt er auf der gleichen Horizontalen.

20160730Motorrad13

Das fertige Ergebnis

20160730Motorrad14

Fast wie das Original …

Zahlen sortieren

Hallo Rene,

erst einmal sorry für die späte Rückmeldung, ich war im Urlaub. Das Problem mit den Verbindern habe ich mittlerweile gelöst. Jetzt hab ich aber ein weiteres Probelm allerdings diesmal mit Excel.

Ich schreibe Daten aus Visio per VBA Makro nach Excel. In Excel werden die Daten dann aufsteigend nach einer Positionsnummer sortiert. Allerdings hat Excel mit der Sortierung der Positionsnummer einige Probleme. Wenn die Nummern beispielsweise 1, 2, 3, ,4 usw lauten läuft alles gut – bei Zahlen wie 1.1, 1.2, 1.3, …. 1.9 klappt auch noch die Sortierung einwandfrei.

Sobald ich aber Nummern ab 1.10 oder 2.11 benutze wird die Sortierung nicht mehr eingehalten. Es sieht dann beispielsweise wie folgt aus :

1.1
1.10
1.11
1.12
1.2
….

Ich möchte allerdings folgende Sortierung:

1.1
1.2
1.3

1.10
1.11

Hast du eine Idee wie ich das anstellen kann ? Hab im Internet schon etwas gegoogelt allerdings finde ich leider keine Lösung dazu. Achja die Nummern werden als Text behandelt.

Liebe Grüße

Stephan
##########

Hallo Stephan,

Excel unterscheidet bei fast allen Dingen zwischen Text und Zahl: rechnen, Zahlenformat, Dateneingabe, filtern, … und eben auch beim Sortieren. 1.1 und 1.10 wird als Text erkannt und eben wie Text sortiert: Anton < Berta < Cäsar < Dora …

Würde Excel die Zahlen als Zahlen erkennen, würde er ein Datum daraus machen:

01. Januar

01. Januar 2001

und so weiter

Die einzige Lösung, die ich sehe: Gib die Daten in der Form 01.01, 01.02., … 01.10, 01.11, … 01.20, 01.21 … ein. Dann produziert die Textsortierung keine Probleme.

Übrigens: das Gleiche Problem hast Du auch bei Dateinamen, wenn Deine Kamera Bilder mit Dateinamen pic1, pic2, … pic10, pic11, … speichert. Dann gilt: pic1 < pic10 < pic11 < pic2 …

Liebe Grüße

Rene

grafik27

Shapes auf Verbinderlinien

Hallo Herr Martin,
es ist komischerweise möglich, die Shapes zu skalieren, ohne dass sie vom Verbinder rutschen. Zieh ich den Verbinder allerdings etwas nach unten laufen die Shapes nicht mit, sondern bleiben einfach starr stehen obwohl sie eigentlich einen Verbindungspunkt mit dem Verbinder haben.
Vielen Dank für Ihre Hilfe
Liebe Grüße
Stephan
####
Hallo Stephan,
ich sag einfach mal „du“.
In der Zeichnung siehst du, was ich gemacht habe:
In der unteren Reihe habe ich die Leitung aus mehreren Verbindern gezeichnet und die Ventile jeweils an das Ende der Leitung gehängt.
Es geht auch anders: Ich habe eines deiner Ventile neu gezeichnet (lila), so dass die Gruppe nicht um das ganze Shape, sondern nur um die „Fliege“ liegt.
Ich habe über die Registerkarte „Entwicklertools“ (einschalten!, falls Du es noch nicht gemacht hast) die Einstellung Verhalten / „Shape kann Verbinder teilen“ aktiviert.
Wenn Du nun das Shape auf Linie ziehst wird sie gesplittet und das Shape klebt an den Enden der zwei neuen Linien.
Kommst Du damit klar?
20160710Verbinder0120160710Verbinder0220160710Verbinder0320160710Verbinder04

Bunte Verbinder

Hallo Herr Martin,

Mir ist da gerade noch eine Frage eingefallen, wo ich ihr Handbuch für Entwickler zum ersten Mal aufgeschlagen habe. Ist es generell möglich, Verbindungspunkte so zu konfigurieren (bisher habe ich dazu rein gar keine Möglichkeit in VISIO gefunden), dass wenn man von einem Verbindungspunkt eine statische Verbindung aufbaut diese direkt in einer bestimmten Farbe eingefärbt wird?
###########

Hallo Herr S.,

im ShapeSheet ist dies leider nicht möglich – dazu müssten Sie ein paar Zeilen Code schreiben.

Ich habe einen Dummy gebastelt: Wird ein neuer Verbinder an ein Shape gehängt, färbt er sich gemäß der Shape-Füllfarbe ein

schöne Grüße

Rene Martin

Sich selbst einfärbende Verbinder
Sich selbst einfärbende Verbinder