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