Kaputte Visio-Datei – Zeichnung lässt sich nicht mehr öffnen?!

Hallo Herr Dr. Martin,
 
im Mai 2017 haben Sie ein Visio-Training bei uns durchgeführt. Mittlerweile wird VISIO 2010 bzw. AVEVA Diagrams bei uns produktiv eingesetzt.
Mein Kollege hat jetzt ein Problem mit einer Datei, die sich nicht mehr öffnen lässt. Mir ist ein Reparaturmodus bei VISIO nicht bekannt (Bei AutoCAD gibt es eine Funktion „Wiederherstellen“.)
Können Sie uns hier weiterhelfen?
####
Hallo Herr M.,
[…]
Erstens: bei mir (Visio 2016) geht die Datei problemlos auf. Ich habe sie unter einem anderen Namen gespeichert und schicke Sie Ihnen zu.
Zweitens: in den vielen Jahren, in denen ich mich Visio arbeite, ist es mir einmal passiert, dass eine korrekte gespeicherte (dachte ich zumindest) Datei nicht mehr aufging. Alle Versuche scheiterten … einige Stunden Arbeit waren weg … Ärgerlich! Das kann wohl (bei Visio) passieren.
Drittens: anders als AutoCAD oder auch die anderen MS-Office-Programme gibt es keine Wiederherstellenfunktion/Reparaturfunktion. Kaputt ist kaputt … Heißt: aufpassen und immer wieder Sicherheitskopien anfertigen – ich speichere alle Dateien jeden Tag neu ab – unter einem anderen Namen (mit dem aktuellen Tagesdatum im Dateinamen) – so ist maximal ein Arbeitstag futsch!
Hilft Ihnen das?
 

Blätter per VBA erzeugen?!

Hallo Herr Martin,
Ich habe mal „auf die Schnelle“ versucht Seiten per VBA von einem Quelldokument in das Zieldokument an die gewünschte Position zu kopieren. Bisher ohne Erfolg.
Gibt es da ein Script als Vorlage? Ich habe auch das Problem, das der „Fokus“ dann auch dem falschen Dokument liegt.
Kann man ein Dokument öffnen, so dass es für den Bediener nicht sichtbar ist.? Oder soll man für jede Seite, die man einfügt ein eigenes Dokument, bestehend aus nur dieser Seite erzeugen?
####
Hallo Herr H.,
 
in Excel ist das ein einfacher Befehl: Kopiere ein Tabellenblatt aus einer Datei in eine andere Datei. Das mache ich häufig.
In Visio geht das (wohl) nicht.
Sie finden im Kontextmenü der Zeichenblätter keinen Befehl „kopieren“.
Das Page-Objekt kennt zwar die Methode „Duplicacte“ (in die gleiche Datei), aber nicht „Copy“ (in eine andere Datei).
Es ist auch nicht möglich, einzelne Zeichnungsblätter auf verschiedenen Vorlagen basieren zu lassen – ich vermute, das ist der Grund, warum man keine Blätter kopieren kann.
Sie könnten alle Shapes kopieren – aber Achtung: ich fürchte Sie werden Schwierigkeiten bekommen. Ich habe (in einem älteren Projekt) mal versucht die Shapes zu gruppieren, das Gruppenshape zu kopieren und auf einem anderen Blatt zu entgruppieren – bin aber gescheitert, weil dann Verbinderereignisse eintreten, die mir die Verbinder anderes kleben wie ich es gerne hätte.
 
Meine Empfehlung: Finger weg vom „Blatt kopieren“!
 
Erzeugen Sie neue Blätter durch:
* Ein- und Ausblenden
* Herausziehen von bestimmten Master-Shapes aus Schablonen
 

Seitennummerierung mit Feldern

Ein Teilnehmer einer meiner Visio-Schulungen hat mich auf folgendes Phänomen aufmerksam gemacht: Wenn man mehrere Zeichenblätter hat, die alle einen Hintergrund verwenden und wenn auch diesem Hintergrund sich ein Shape befindet mit den Felder Zeichenblattnummer und Anzahl der Zeichenblätter so funktioniert alles wunderbar. Wird allerdings eines der Blätter über das ShapeSheet ausgeblendet, zählt Visio noch immer die Gesamtanzahl der Zeichenblätter … Ein Bug sicherlich nicht, aber: unglücklich!

ShapeSheet statt Datengrafik

Es muss nicht immer eine Datengrafik sein.
In Visio wird ein Shape mit einer Jahreszahl beschriftet. Je nach Zahl werden andere Shapes entsprechend eingefärbt.
Dies könnte man beispielsweise folgendermaßen realisieren:
Ein Shape heißt Sheet.1 Es ist beschriftet. Ein anderes Shape zieht sich diese Information mit
=SHAPETEXT(Sheet.1!TheText)
Eine Liste wird in einer benutzerdefinierten Zelle definiert:
=“2015;2016;2017;2018;2019;2020;2021;2022″
Die Position der Zahl wird ermittelt:
=(FIND(User.Jahr,User.Jahresliste)+4)/5
Eine Farbliste existiert – jede Zahl steht für eine bestimmte Farbe:
=“1;5;12;18;44;22;9;20″
Und dieser korrespondierende Wert wird ermittelt:
=INDEX(User.Jahresposition,User.Farbliste,“;“)

Fußzeile: Dateiname mit Pfad

Gestern in der Visio-Schulung hat der Teilnehmer gefragt, ob man in Fußzeilen Dateinamen MIT PFAD einfügen kann. Ich gestehe: ich hatte noch nicht entdeckt, dass der Pfad fehlt.
Statt eines Hintergrundes habe ich ihm vorgeschlagen ein Shape zu erstellen mit den beiden Feldfunktionen Verzeichnis und Dateiname) – und dieses als Mastershape in einer Schablone zu speichern. So kann er schnell den Dateinamen MIT PFAD in die Fußzeile einfügen.

Shapefüllfarbe und markieren

In der Visio-Schulung fragt ein Teilnehmer wie man ein Shape markieren kann. Wenn das Shape keine Füllfarbe hat muss man entweder auf den Rand oder auf den Text klicken, um das Shape zu markieren.
Weiße Füllfarbe wollte er nicht – denn dann sieht man den Hintergrund nicht mehr.
Ich habe vorgeschlagen weiße Füllfarbe zu verwenden und den Hintergrund auf 100% transparent zu stellen – dann kann man bequem die Shapes markieren und den Hintergrund sehen.

Füllfarbe – funktioniert nicht …

Heute in der Visio-Schulung war ich verblüfft. Wir haben ein Shape mit einer Füllfarbe versehen – es nahm partout die Farbe nicht an.

Bis ich entdeckte, dass dieses Shape auf einem Layer (auf einer Ebene) liegt und dass in den Ebeneneigenschaften eine Linienfarbe eingeschaltet war.

Diese verhindert die Füllfarbe.

Das Ethernet-Spae springt

Guten Tag Herr Martin,
ich nutze das „Ethernet“ Shape aus „Netzwerk und Peripheriegeräte“ und unter Registerkarte „Platzierung“ ist „Nicht ausrichten und umleiten“ ausgewählt. Ich habe auch schon versucht das „Springen“ zu vermeiden in dem ich einen x-y Positions Schutz aktiviere aber auch das hat nichts geholfen. Das Ethernet Shape „springt“ wenn Sie den rechten Rechner verschieben.
####
Hallo Herr B.,
das ist heftig! Haben Sie einen Bug entdeckt? Wahrscheinlich.
Ich habe nun verstanden, was Sie meinen mit „zur Seite springen“ (es gibt noch einen andere von Visio gewollte Aktion, bei der Shapes zur Seite springen).
 
Kennen Sie das ShapeSheet? Wenn Sie das Shapesheet des Ethernet öffnen (20190922Ethernet01) ist nichts ungewöhnlichen zu finden. Wenn einer der Steuerelemente nun mit einem Shape verbunden ist, schreibt ein Assistent nicht nur neue Zeilen in die userdefined-Cells, sondern auch die Zelle PinX und PinY einen Bezug auf andere Zellen, die wiederum Bezug nehmen auf das neue Shape. Wird das Shape gelöscht, wird auch der Bezug gelöscht. Wird er nun wieder geklebt, erscheint der Bezug wieder.
Ich habe ein bisschen probiert: Ändern Sie den Wert der Zelle User.VisLegendShape beispielsweise auf 1, dann taucht dieses merkwürdige Verhalten nicht mehr auf.
 
Sie finden mein „neues“ Shape auf Zeichenblatt-2 – das können Sie gerne in eine neue eigene Schablone ziehen.
Hilft Ihnen das?
schöne Grüße
Rene Martin

Verschiedene Dreiecke

Heute in der Visio-Schulung fragte eine Teilnehmerin, was denn der Unterschied zwischen den beiden Shapes „Dreieck“ und „Rechtwinkliges Dreieck“ sei.
Ich habe eine Weile probiert, dann im Shapesheet nachgeschaut: Bei Dreieck steht in der Zelle „LockCalcWH“ der Wert 1 (True), beim anderen eine 0. Und was bewirkt diese Zelle. Die Hilfe verrät es:
„Sperrt das Auswahlrechteck eines Shapes, damit dieses nicht neu berechnet wird, wenn ein Scheitelpunkt bearbeitet oder ein Zeilentyp im Abschnitt Geometry geändert wird.“
Das heißt: wenn man einen der Eckpunkte mit dem Bleistiftwerkzeug verschied, verändert sich das umschreibende Rechteck beim Dreieck nicht, beim „Rechtwinkligen Dreieck“ wird es dagegen angepasst.

Linienstärke

Ich wollte es einfach mal wissen. Natürlich hat Visio eine Obergrenze bei der Linienstärke. Und: so ein Objekt würde ich natürlich mit zwei Rechteck-Shapes erstellen, die ich kombinieren würde. Dann gibt es keine Obergrenze mehr für die Breite.
Randbemerkung: Ich habe die Eckenrundung (Abschlusstyp) auf „Rechteck“ gestellt, dass die „runden“ Ecken sehr unschön aussahen.