Bug im Nummerierungsassistenten – eine Lösung

Ein Leser meines Blogs hat mich darauf aufmerksam gemacht, dass der Nummerierungsassistent in Visio problematisch ist.
Er schlägt – statt meiner Programmierung (siehe Abbildung)
folgende Lösung vor:
 
„Ich nutze die Event Cell ‚TheText‘ um eine SETF-Formel immer dann auszuführen, wenn sich der Shape-Text ändert.
 
Wenn man das Nummerierungsaddon verwendet wird automatisch Text hinzugefügt, egal ob sichtbar oder nicht; Das ist auch der Moment wenn jegliche vordefinierte Referenzen zu einer, vorher manuell angelegten, Prop.ShapeNumber Zelle gelöscht werden (also der Bug).
 
Ich nutze in der Formel von ‚TheText‘ das verhalten der SETF funktion aus, weil ich ihr einen String übergeben kann, dieser jedoch bei der Ausführung der Funktion zu Klartext umgewandelt wird.
 
Ca. so:
 
SETF(GetRef(Prop.MeineShapeNummer), „=Prop.ShapeNumber“)

Dadurch, dass das zweite Argument in Anführungszeichen ist, versucht Visio nicht die Referenz zu prüfen und erlaubt mir somit eine Zelle zu referenzieren die (noch) nicht existiert.
 
Die Formel in Prop.MeineShapeNummer wird also jedesmal mit „=Prop.ShapeNumber“ gefüllt, wenn das Addon verwendet wird. (bzw der Text verändert wird)

Zwar wird bei jeder anderer Textänderung des Shapes die Zelle Prop.ShapeNumber wieder automatisch gelöscht und die Referenz in Prop.MeineShapeNummer wird gebrochen, der Wert den Prop.MeineShapeNummer jedoch vorher durch die SETF-Formel angenommen hat, bleibt erhalten!

####
Warum ich darauf nicht selbst gekommen? *lach* Im Ernst: sehr clevere Lösung! Vielen Dank!
Rene Martin

Linie und Füllung – nicht unabhängig?

Guten Tag Herr Martin,
 
ich möchte in Visio 2013 gerne die „Pfeile“ „Zurück“ und „Weiter“ unter aus der Schablone „Software“ „Allgemeine Symbole“ nutzen.
„Ich vermute, dass ich irgend eine Kleinigkeit übersehe und viel zu tief nach Hintergrundinfos suche.“
„Die Frage an sie weiterzugeben erlaubt mir erstmal eine Abschluss zu finden…! 😉
„Problembeschreibung“
1. Der Versuch für Füllung und Linie unterschiedliche Farben zuzuweisen schlägt fehl.
2. Die Farbwerte der Linie und Füllung werden immer gleichgesetzt!
3. Pfeile mit deaktivierter Füllung lassen den Hintergrund „durchscheinen“… (Workaround bleibt ein Weißer Farbverlauf)
####
Hallo Herr G.,
 
kennen Sie das ShapeSheet? Schalten Sie die Registerkarte Entwicklertools ein, dann finden Sie im Kontextmenü des Shapes das ShapeSheet.
Im Abschnitt „LineFormat“ in der Zelle „LineColor“ sehe ich einen Verweis auf die Zelle „FillForegnd“.
Raus damit! – dann sind Linienfarbe und Füllfarbe unabhängig voneinander. Und wenn das Shape haben möchten, speichern Sie es in einer eigenen Schablone.
 
schöne Grüße
 
René Martin

Seltsame Rahmen

Hallo,
muss noch einmal lästig sein.Habe ein Problem mit Visio…
Ich erstelle immer wieder Shapes und fülle diese mit Daten und lege sie dann auch als Mastershape ab.
Seit kurzem habe ich das Problem, wenn ich es als Master Shape speichere und später wieder in die Zeichnung hinein ziehe, geht die Formatierung verloren (Ränder,Anzeige,…)
Kann es auch nicht ändern. Siehe Screenshot.
 
Oben ist es wie es sein soll.
Unten ist wenn ich es als Mastershape nach Links ziehen und dann wieder in die Zeichnung ziehe.
Hast du eine Idee?
Danke im vorraus.
LG Norbert
###
Hallo Norbert,
1. Test: ich erstelle eine Schablone, ziehe das Shape (mit gedrückter Strg-Taste) rein und wieder raus – nicht passiert (siehe Bild):
2. Test: Ich schaue es mir genauer an: die Texte sind Teil einer Gruppe. Wenn ich den Text markiere und zum ShapeSheet wechsle (kennst du?), sehe ich in der Zelle LinePattern die Formel:
 
=GUARD(IF(User.BorderType=0,0,SETATREFEXPR(1)))
 
In der Zelle BorderType im Abschnitt Userdefined Cells finde ich einen Verweis auf:
 
=LOOKUP(Prop.msvCalloutPropBorder,Prop.msvCalloutPropBorder.Format)
 
Im Abschnitt Shape Data, in dem alle Zeilen unsichtbar geschaltet wurden (Invisible=TRUE), sehr ich die drei Werte =“Ohne;Unten;Kontur“ in der Zeile msvCalloutPropBorder
Ich vermute, dass dieser Text von einem anderen Shape verwendet wurde. Wer oder was nun den Text „Kontur“ in diese Zelle schreibt und so die Linie außenrum erzeugt, kann ich nicht sagen. Allerdings: wenn du keine Linie haben möchtest, würde ich die Formatierung der Zelle LinePattern „hart“ auf 0 stellen. Ich habe es mal bei dem Shape auf dem Arbeitsblatt gemacht – was passiert jetzt bei dir?
 
schöne Grüße
 
Rene

Mastershape-Namen

Hallo Herr Martin,
So sehen momentan die Legenden immer aus.
Falls es irgendeine Möglichkeit gibt, diese Zahlen zu vermeiden, wäre das super!
###
Hallo Herr Q.,
 
und das ist der Grund:
 
Sie erstellen in Visio auf Basis eines Master-Shapes Shapes auf dem Zeichenblatt.
Sie ändern dieses Shape, ziehen es zurück in eine Schablone. Damit haben Sie zwei Master-Shapes des gleichen Namens. Das lässt Visio nicht zu und vergibt eine Nummer: Mastershape.12
Auch wenn Sie das erste Mastershape löschen und das Shape in der Schablone umbenennen, behält es noch seinen Namen. Sehr unglücklich! (Auch für die Programmierung – ich bin schon einmal darüber gestolpert – weil nun der Master nicht Kondensator, sondern Kondensator.12 heißt …).
Die Lösung wäre: Shape ändern, alten Master löschen und DANN in der Dokumentschablone den alten Master entfernen. Und dann den neuen Master in die Legende ziehen.
Allerdings: wenn Sie schon damit gearbeitet haben – ich wüsste keine Möglichkeit die Legende zu putzen …
 
schöne Grüße
 
Rene Martin

Pfeilspitzen

Hallo Herr Martin,
Die Verbinder werden in der Vorlage Organigramm konsequent mit Pfeilspitzen angezeigt, bis ich sie mit «Auswählen nach Typ – Verbinder – Formatvorlage Verbinder» umformatiere. Kann man das ändern?
####
Werfen Sie einen Blick auf die Definition der Pfeilspitzen der Verbinder im ShapeSheet. Dort sehen Sie eine Verknüpfung auf die Zelle „User.OrgChartStyle“ des Zeichenblattes.
Wenn ich den Wert dort auf 2 ändere, dann haben die Verbinder keine Pfeilspitzen.

Übersetzen

Hallo Herr Martin,
Falls wir die Vorlage für die Westschweiz auf Französisch übersetzen müssten, ginge das nur manuell (Shape um Shape)?
###
Wenn Sie Mehrsprachigkeit haben möchten können Sie Teile über die Daten und die Layer erzeugen. Ich fürchte aber, Sie sind schneller, wenn Sie die Vorlage „manuell übersetzen“. Werfen Sie mal einen Blick auf meine Dateien „Mehrsprachigkeit“ – Sie können die Sprache über das Kontextmenü des Zeichenblattes umschalten.