Büro

Heute haben wir den Schulungsraum mit den Teilnehmern und der Teilnehmerin in der Visio-Schulung gezeichnet. Dabei ist mir aufgefallen, dass der „arbeitende Mann“ und die „arbeitende Frau“ genau auf den „Bürostuhl“ passen … Schiebt man die Tastatur zu weit zum Körper, sieht es aus, als würde er oder sie schlafen …

Die Vorgänge

Wir erstellen ein Logo oder bauen es nach – mit Visio – Teil III
Für komplexe Formen verwende ich gerne die Vorgänge, die sich in der Registerkarte „Entwicklertools“ befinden. Damit kann man leicht einen Kreis mit einem Rechteck verschmelzen. Diesen Vorgang kann man mehrmals wiederholen (auch Subtrahieren bietet sich in vielen Fällen an).

Das Werkzeug „Bleistift“

Wir bauen ein Logo (nach) – in Visio.
Natürlich gibt es hierfür verschiedene Wege. Kennen Sie das Werkzeug „Bleistift“?
Ich fixiere das Originallogo, das ich nachbaue über Entwicklertools / Schutz.
Ich beginne mit einem Rechteck. Wechsle zum Werkzeug Bleistift. Mit gedrückter [Strg]-Taste können neue Knoten hinzugefügt werden.
Diese können leicht verschoben werden. Wenn Sie beim Verschieben die [Alt]-Taste drücken, umgehen Sie das Gitter.
Einige Klicks – und fertig ist die neue Treppe.

Shapes drehen – aber nicht um die Mitte

Ein Piktogramm, das ich im Urlaub gesehen habe. Eine hübsche Fingerübung für Visio, dachte ich.

OLYMPUS DIGITAL CAMERA
Ein Blitz findet man in der Schablone „Dekorative Shapes“ (Kategorie: „Allgemein“).
Es wird gedreht. Bewegt man den Cursor auf das Rotationswerkzeug, dann kann man den Pin (den DrehBezPos) sehen.
Diesen kann man verschieben.
Wird nun das Shape zwei Mal dupliziert
und die drei Shapes ausgerichtet, kann man die Selektion auflösen und anschließend mit dem Rotationswerkzeug jedes der Shapes um den neuen Drehpunkt rotieren.

Mastershapes in einer Schablone

Sehr geehrter Herr Dr. René Martin,
[…] Ziel ist es die Visio Diagramme mit unserem SAP System zu verbinden.
Dazu müssen jedem Shape entsprechende Shape-Daten mitgeben werden.
Dabei haben mir Ihre Bücher
(Microsoft Visio 2010 Programmierung Microsoft Visio effizient anpassen und erweitern) und
(Visio 2013/2016 anpassen Das Handbuch für Entwickler),
wie auch Ihr Video-Training
(Visio 2010 Umfassend praxisorientiert, leicht verständlich) schon erheblich geholfen.
Da es das Ziel der Automatisierung ist dem Benutzer die Erstellung der Diagramme möglichst einfach zu machen,
soll er auch beim Anlegen neuer Shapes bestmöglich unterstützt werden.
Jetzt bin ich jedoch auf ein Problem gestoßen an welchem ich nicht weiter komme.
Ich benötige eine Möglichkeit einem neuerzeugten Shape die benötigten Shape-Daten mitzugeben, wenn es zu einer Schablone hinzugefügt und somit zum Mastershape wird.
Es gibt jedoch kein Event, welches auf dieses Ereignis anspricht.
Haben Sie vielleicht eine Idee wie sich dies umsetzen lässt?
 
Im Voraus schon mal vielen Dank für Ihre Hilfe
 
Mit freundlichen Grüßen
Hallo Herr B.,
 
ich verstehe den Workflow nicht ganz: der Anwender soll neue Shapes erstellen. Beim Abspeichern in einer Schablone sollen (automatisiert) Daten an diese Shapes angefügt werden.
* Warum erstellt der Anwender nicht selbst diese Daten?
* Oder: wenn es sich um immer die gleichen Daten handelt (und auch viele Daten) dann würde ich es nicht über ein Ereignis lösen, sondern über eine Schaltfläche, die der Anwender anklickt: entweder dem markierten Shape werden neue Daten hinzugefügt oder: alle Mastershapes einer Schablone werden mit diesen Daten versehen.
 
Der Grund: meines Wissens gibt es kein Ereignis: „ziehe ein Shape vom Zeichenblatt in die Schablone“. Und: nach meiner Erfahrung werden Shapes in die Schablone gezogen; dort manchmal bearbeitet. Manchmal werden sie auch wieder auf das Zeichenblatt gezogen, bearbeitet und wieder zurück in die Schablone gezogen; manchmal auch in der Schablone direkt bearbeitet (auf dem Zeichenblatt geht das manchmal besser).
 
Hilft Ihnen diese Antwort?

Anlage

In der letzten Visio-Schulung zeigte mir ein Teilnehmer eine Anlage, die er mit Visio „gebaut“ hat. Auf Anregung meines Motors. Ich war begeistert. Klasse!

Dynamische Schaltflächen auf einem Zeichenblatt

Amüsant. Wenn man in Visio eine Befehlsschaltfläche auf ein Zeichenblatt legt, liegt das nächste Shape ÜBER der Befehlsschaltfläche. Schaltet man jedoch den Entwurfsmodus aus, liegt das Shape dahinter. Es gibt keine Möglichkeit, das Shape vor die Befehlsschaltfläche zu legen.
Auch die Zellen „NoShow“ oder „Transparency“ bewirken nicht, dass die Schaltfläche ausgeblendet wird. Man könnte sie per Programmierung auf Width = 0 und Height = 0 (vielleicht noch PinX und PinY auf 0) setzen – dann ist die Schaltfläche fast verschwunden. Natürlich kann man sie auch programmieren:
Dim shp As Shape
 
Dim DiagramServices As Integer
DiagramServices = ActiveDocument.DiagramServicesEnabled
ActiveDocument.DiagramServicesEnabled = visServiceVersion140 + visServiceVersion150
 
Set shp = Application.ActiveWindow.Page.InsertObject(„forms.Commandbutton.1“, visInsertAsControl + visInsertNoDesignModeTransition)
shp.Cells(„PinX“).FormulaU = „=100mm“
shp.Cells(„PinY“).FormulaU = „=150mm“
shp.Name = „Testbutton“
 
 
‚Restore diagram services
ActiveDocument.DiagramServicesEnabled = DiagramServices
 
Jedoch – es bleibt mühsam dynamische Schaltfläche auf dem Zeichenblatt zu erzeugen.

Die API-Hölle

Ich versuche API-Funktionen zu vermeiden. Das Problem sind die 32- und 64-Bit-Systeme.

Zoom – ein Rundungsfehler

Visio hat einen Rechenfehler, besser: Rundungsfehler beim Zoom. Deshalb ist es nicht möglich, jeden beliebigen Zoom einzustellen. Ein Bug?

Datum der letzten Bearbeitung

Guten Morgen Herr Martin,
wir haben seit neuestem Probleme mit eingefügten Datumsfeldern auf unseren Zeichnungen.
In der Vorlage ist ein Feld – Datum der letzten Bearbeitung – eingefügt.
Bislang konnte man dann einen Plan, den man z.B. am 23.05. zuletzt bearbeitet hat, am 25.05. öffnen, und als Datum wurde der 23.05. angezeigt. So möchten wir es auch.
Nun passiert es aber, dass man die Datei am 25.05. öffnet und sofort wird auch das heutige Datum angezeigt, Beispiel im Anhang. Was machen wir falsch, haben Sie einen Tip?
#####
Hallo Frau W.,
nein – ich habe Sie nicht vergessen – ich wollte das Phänomen nur „gründlich“ untersuchen und abwarten, was am nächsten Tag passiert:
* in einer Dummy-Datei werden die drei Feldfunktionen Aktuelles Datum, Erstelldatum und Datum der letzten Bearbeitung korrekt berechnet.
* Ich habe in Ihrer Datei die Feldfunktion ausgetauscht – sie wird automatisch aktualisiert.
* In Excel gibt es „volatile“ Funktionen; das heißt Funktionen die beim Öffnen neu berechnet werden. Wenn es in Ihrer Zeichnung etwas gäbe, das beim Öffnen aktualisiert wird, müsste er beim Schließen fragen „ob Sie die Änderungen speichern möchten“. Tut Visio aber nicht.
* Gegenfrage: Ist das die einzige Zeichnung, in der das Phänomen auftritt?
schöne (und mal ratlose) Grüße
######
Hallo Herr Martin,
 
vielen Dank, dass Sie sich der Sache annehmen – ich bin auch ratlos.
Habe gestern nochmal eine Datei angelegt aus meiner Vorlage (s. Anhang), in der ich nochmals das Datumsfeld neu eingesetzt habe.
Obwohl ich keine Änderung vorgenommen habe, springt das Datum beim Öffnen auf das heutige.
 
Im Großen und Ganzen scheint das jetzt häufiger aufzutauchen. Aber noch nicht so lange, zumindest haben wir das bewusst noch nicht so wahrgenommen