Shapedatensätze

Guten Abend Herr Martin,
vielleicht haben Sie eine Antwort auf die Frage, mit der ich mich schon länger beschäftige. Ich finde es sehr unpraktisch, dass Shapedatensätze offensichtlich nicht ohne weiteres an Schablonen gebunden werden können bzw. dass die einem die Übertragung so kompliziert gemacht wird… wäre es denn nicht sinnvoller, wenn Visio die Shapedatensätze so ablegen würde, dass sie jederzeit aufgerufen werden können und nicht erst der Umweg über die Visio Dateien genommen werden muss, wo der Datensatz vielleicht zuletzt aktualisiert wurde? Falls es da einen Beitrag von Ihnen zu gibt, wäre ich für einen Hinweis mehr als dankbar. Schönen Abend wünsche ich Ihnen!

Hallo Herr Kaiser,
da sind einige Bugs in den Shapedatensätzen. Ich habe einige aufgelistet in:

Shape-Datensätze


Da ich manchmal mehrere Shape mit den gleichen Datenfeldern bestücken muss, mache ich das oft mit VBA oder über da Shape-Sheet – das geht schneller als per Hand in Visio und ist sicherer als die Shapedatensätze.

Zeitachse mit Datumsangaben vor 1900

Hallo Herr Pelc,
wie kann ich die zeitachse in Visio mit Datumsangaben vor 1900 verwenden?
Ich habe den Assistenten „kaputtgemacht“ – schauen Sie selbst. Ich habe auch keine Möglichkeit gefunden „historische“ Daten einzutragen. Die Reichweite in die Vergangenheit ist begrenzt.
Liebe Grüße
René Martin
####
Vielen Dank!! Ja das ist so schade, oder? Anbei mein Versuch eine Zeitachse selbst zu erstellen, wenn man sie dann gruppiert, kann man sie vergrößern und verkleinern, leider muss man bisschen „rechnen“ wo die labels anzubringen sind und man verliert die schönen Funktionen der Visio Zeitachse. Viele Grüße aus Berlin!
 
Bogdan Pelc

Epochen – Zeitachse vor 1900

Hallo, ich habe Ihre Seite gefunden, und ich habe eine Frage, ich will eine Zeitachse ca. 1760-1915 darstellen, das geht ja nicht da Das Datum erst 1899 beginne kann, Sie haben auf der Page einen EPOCHEN Diagramm, wo Sie mit „Schummeln“ es fertig bekommen haben, wie mach man das? 😊 LG!!!
###
Hallo Herr P.,
ich habe den Assistenten „kaputtgemacht“ – schauen Sie selbst. Ich habe auch keine Möglichkeit gefunden „historische“ Daten einzutragen. Die Reichweite in die Vergangenheit ist begrenzt.
Bis 1900 klappt es; früher jedoch nicht.
Liebe Grüße
René Martin

Shape-ID, Link und SVG

Hallo Herr Martin,
Ich habe wieder einmal eine Frage zu Visio, auf die ich bisher keine Lösung gefunden habe.
Es geht um die Shape-ID:
Hintergrund und Erklärung:
 
Wir benutzen Visio, um für unser Business-Managementsystem „How We Work“ Strukturen darzustellen und Verlinkungen zu ermöglichen. Hierzu werden die Visio-Zeichnungen in das SVG-Format umgewandelt und dienen dann im Browser des HWW-Systems als „klickbare“ Navigation durch unsere Prozess- und Bereichsdarstellungen.
Hierbei wird die von Visio vergebene ID als Referenz für die Verlinkung genutzt.
Nun unser Problem:
Bei Änderungen in den Bereichen/ Darstellungen wird oft eine komplett neue Visio-Zeichnung erstellt. Hierbei kommt es dann vor, dass wieder neue Shape-ID’s vergeben werden und dann die Verlinkungen nicht mehr stimmen. Ist dann ein ziemlicher Aufwand, die Verlinkungen neu zu machen.
Gibt es irgend eine Möglichkeit, die Shape-ID manuell zu ändern? Damit könnten wir sicherstellen, dass die existierend Verlinkung beibehalten werden kann, wenn neue Zeichnungen erstellt werden.
#####
Hallo Herr F.,
hm. Schwierig. Visio hat eine ID und eine NameID, die vom Programm für jedes neu erstellte Shape vergeben werden. Sie sind schreibgeschützt.
Der Name jedoch – bei Ihnen „Kreis.4“ kann geändert werden.
Gegenfrage: Können Sie nicht auf den Namen verlinken? Wenn Sie in Visio einen Link auf ein Zeichenblatt und auf ein Shape erstellen, können Sie dort den Namen eintragen:
Was mir an Ihrer Beschreibung nicht ganz klar ist: Von wo verlinken Sie auf Visio? Und: Spielt SVG eine Rolle? DORT steht ja die ID lesbar (und änderbar) drin.
####
Hallo Herr Martin,
 
danke für die schnelle Antwort.
Sorry, dass ich es nicht ausführlich genug beschrieben habe. Zur Erklärung:
 
Unser How We Work-System ist im Kern auf SharePoint aufgesetzt. Zusätzlich wurde die Möglichkeit einer Web-basierten Visualisierung und Verlinkung als Front-End für den Web-Browser hinzu propgrammiert (How We Work Web-App). Zur Erstellung der Visualisierung wird dann Visio verwendet, die Visio-Zeichnung anschließend im SVG-Format abgespeichert und in die jeweilige HWW-Webseite (in der APP) hochgeladen. Und zur Verlinkung wird dann, wie schon erwähnt, die Shape-ID verwendet. Also nicht ein eingebetteter Link im Shape! Diese Funktionalität ist fix und das kann ich nicht beeinflussen.
 
Aber Ihr Ansatz, die SVG-Datei im Nachgang zu editieren ist genial. Da bin ich mangels Kenntnisse des SVG-Formats selbst nicht draufgekommen. Allerdings ist der Inhalt sehr unübersichtlich und mir ist nicht ganz so klar an welchen Stellen ich ohne Probleme ändern darf.
Im Anhang mal eine PPT, die anhand einer aktuellen Änderung alte und neue Shape-ID’s zeigt. Ich habe auch die Visio-Datei nebst SVG angehängt.
 
Vielleicht können Sie mir noch einen Hinweis geben, an welcher Stelle die Shape-ID zu ändern wäre. Ich mache parallel auch mal einige Versuchte. Nehme ich da einfach einen normalen Texteditor oder gibt es spezielle Editoren?
####
Hallo Herr F.,
 
Ich habe früher in einem Projekt, bei dem es um Pläne von Zentrifugen und andere Maschinen ging, die Daten als SVG gespeichert. Man kann sie im Browser ansehen (der Browser visualisiert die geometrischen Informationen) und – alle Informationen (es ging damals um sehr komplexe Daten) werden in bestimmten XML-Knoten gespeichert. Ich habe gelernt (wusste ich auch nicht), dass SVG ein XML-Dokument ist.
Das heißt: verwenden Sie einen guten XML-Editor. Haben Sie Visual Studio (den verwende ich sehr gerne für XML). Alternativ: Phase5, …
Die IDs, mit denen verlinken, finden Sie im Attribut
v:mID=
 
Ich habe es mal probiert: Ich habe frech
v:mID=“
durch
v:mID=“9
 
ersetzt – also jede ID geändert. Das Ergebnis: kein Problem.
 
Das heißt:
* Sie brauchen die Liste der Shapes auf die verlinkt wird
* beispielsweise über den <title> kann sie über die Beschriftung finden.
* Dort müsste man die mID überprüfen, ob sie korrekt ist (bzw. anpassen)
 
Kommen Sie damit klar?
 
Liebe Grüße
 
Rene Martin
 

Legende

Guten Morgen Herr Martin,
voriges Bild habe ich erzeugt. Die Datenquelle ist Verkaufsdaten.xlsx. Woher bezieht Visio die Umsatz-Summe in der Legende? Vielen Dank für ihre Hilfe.
####
Hallo Herr K.,
die Umsatzzahlen kommen aus der letzten Spalte „Umsatz“
####
Hallo Herr Martin,
ich habe eine unpräzise Frage gestellt. Deshalb ein neuer Versuch:
Woher die 22500 kommen ist klar. Aber woher und warum ist der Max-Wert bei 30000? Wenn ich diesen verändere, ändert sich auch der Wert in der Legende. Welchen Wert hat für mich diese Angabe?
####
Hallo Herr K.,
könnten Sie bitte beschreiben, was Sie machen. Ich verstehe Ihre Frage „woher und warum ist der Max-Wert bei 30000? Wenn ich diesen verändere, ändert sich auch der Wert in der Legende. Welchen Wert hat für mich diese Angabe?“ nicht.
####
Guten Tag Herr Martin,
ich gehe folgendermaßen vor:
Schritt 1: leeres Zeichenblatt, dann das Rechteck aus den Standard-Shapes
Schritt2: Verbindung mit der Excel-Tabelle Verkaufsdaten.xlsx
Schritt 3: Ich ziehe einen Datensatz auf das Rechteck –> bis hierher keine Probleme
aber jetzt:
Schritt 4: Einblenden der Legende, automatisch erscheint das Feld „Umsatz“ mit 22500
Schritt 5: Anzeigen von ShapeSheet (Entwicklertools) für das Feld Umsatz
Schritt 6: Kontrolle der 22500 –> Wird automatisch berechnet nach beiliegender Formel im Bereich Shape Data
0.75*(Prop.msvCalloutPropMax-Prop.msvCalloutPropMin)+Prop.msvCalloutPropMin (Die Werte von …min (0) und …max (30000) sind voreingestellt von Visio)
Ich kann die Werte von Hand ändern, das Ergebnis wird angepasst, aber was kann ich mit diesem Wert anfangen? Dieser hat offensichtlich keinen Bezug zu den Tabellendaten.
####
Hallo Herr K.,
danke – jetzt verstehe ich. Ich bin davon ausgegangen, dass Sie die Vorlage Pivotdiagramm verwendet hatten …
Die Antwort: es ist eine Beispielzahl, die in der Legende angezeigt wird. Der Balken weist darauf hin, dass in der Datengrafik Umsatz verwendet wird (und nicht die Menge) – ändern Sie es, erzeugen Sie die Legende erneut und Sie sehen Menge statt Umsatz.
Ändern Sie Datenbalken durch Wert als Farbe, wird dies angezeigt.
Der (Dummy)-Wert, den Sie sehen, ist ein berechneter Wert zwischen Min und Max – aber nicht der Mittelwert, sondern im oberen Viertel.
Legende ist ja nur eine Erklärung, was die Symbole bedeuten mit einem Beispiel, kein Auswertungsergebnis.
####
Hallo Herr Martin,
vielen Dank für die Unterstützung. Es ist schon merkwürdig, welche Mühe mit einer Formel sich MS macht, um einen Beispielwert anzuzeigen. Ein Festwert hätte es auch getan.
####
Hallo Herr K.,
 
ich gebe Ihnen recht: sehr viel Mühe und vielleicht verwirrend.
Andererseits: Würde Microsoft den Wert 42 auf den Balken schreiben, würden sich Anwender sicherlich wundern, warum gerade diese Zahl, wo doch der Datenbereit zwischen 0 und 0,005 liegt. Oder zwischen 100.000 und 10.000.000.
 
Liebe Grüße
 
Rene Martin
 
 
 

Export nach Word

Guten Tag, Herr Martin
Wir bekommen in Visio den Datenexport nach Word einfach nicht aktiv… Die Option unter Prozess ist und bleibt inaktiv egal was wir tun.
Haben Sie einen Tipp für uns…wir wären echt dankbar….
Hallo Herr H.,
Sie wollen Sie eine Visio-Zeichnung nach Word exportieren? Das geht nur in Visio in Microsoft 365. Frage: Ist bei Ihnen die Option Datei / Exportieren / Word aktiv?
 
Ich vermute, dass dies ein Versionsproblem ist. Das kenne ich – nach der Desinstallation „zieht“ sich das Microsoft-Anwendungsprogramm von irgendwoher die alte Office-2019-Information.
Ich hatte das Problem mal mit Excel; habe mich an die Hotline gewandt; die hat schnell und gut geholfen: hat mir Office GANZ geputzt und dann haben wir es neu installiert.
 
Schöne Grüße
 
René Martin
#####
Hallo Herr Martin
Oh man das ist ja Irre…es funktioniert nun habe nochmals alle Office Reste vom PC entfernt dann 365 neu ausgerollt…und siehe da…es geht!
Vielen Dank für Ihre Hilfe. Gern kommen wir bei Problemen auf Sie zurück..
Bis dahin gute Geschäfte und bleiben Sie Gesund !
 
 

Berichtsvorlagen

Erstaunlich. Ich suche und ich finde in Visio nicht die Vorlage für die Exceltabelle, die Visio für Berichte verwendet. Oder weiß jemand, wie man Texte in den Berichten linksbündig darstellen lassen kann?

Schutz in Visio

Eine Firma hat sehr viele eigene Shapes erstellt. Und möchte diese Shapes schützen.
Das geht nicht: Visio bietet keinerlei „sichere“ Schutzmechanismen, als Techniken, die man nicht knacken kann. Alles ist offen und einsehbar.
Wir überlegen zusammen:
Man könnte einen Verweis auf die Vorlage setzen und dort auf eine Zelle zugreifen. Wenn diese Zelle nicht existiert, soll das Shape ausgeblendet werden. Gute Idee, denke ich und probiere aus.
Das Problem: verweist ein Shape auf eine Zelle des Dokuments, wird das Shape in ein anderes Dokument kopiert, wird auch die Zelle des Dokuments mitkopiert. Damit ist diese Überprüfung obsolet.
Also wird es wohl doch beim Copyright bleiben …

Linien und Steuerelemente

Faciplan möchte Symbole für Fluchtpläne, Feuerlöscher, Defibrillatoren, … in die Raumpläne, die mit Visio gezeichnet sind, einfügen. Da nicht immer genügend Platz an der Stelle ist, an der sie platziert werden sollen, schlage ich vor mit einer knickenden Linie zu arbeiten – über Steuerelemente wird der Lauf festgelegt.
Und: über das Kontextmenü kann man sie ausblenden.
Die Lösung gefällt!

Gruppe in der Gruppe in der Gruppe …

Hallo Herr H.
ist das gemein oder einfach nur böse?
####
So begann meine Mail. Warum mein Erstaunen?
Es begann so:
Sehr geehrter Herr Martin,
 
ich stehe vor einem mittelschweren VBA- Problem und hoffe sehr, dass Sie mir hier wieder weiterhelfen können.
 
Folgendes Problem:
 
Ich habe tagtäglich mit unzähligen gruppiertes Shapes zu tun die ich per Excel Tabelle mit Adressdaten und Daten befülle.
 
Ab Spalte L2:L in der Excel Tabelle soll sich in Abhängigkeit des Textinhaltes (Ventil, Pumpe, Speicher) die Linien -Farbe des
Shapes ändern („Linecolor“) von Ventil = Grau, Pumpe = Blau und Speicher = grün. (siehe beiliegende Excel Mappe)
 
For Each shpInneresShape In shp.Shapes
If shpInneresShape.Name = „V“ Then
shpInneresShape.Text = blatt.Cells(i, 6).Value ‚Anzahl V
ElseIf shpInneresShape.Name = „P“ Then
shpInneresShape.Text = blatt.Cells(i, 7).Value ‚ ID
[…]
Ich hoffe sehr, dass Sie mir in diesem Problem weiterhelfen können.
###
Ich schaue mir das Problem an und schreibe:
Hallo Herr H.,
 
so wie Sie die Dateninformation Prop.P_ID überprüfen, können Sie auch die Linienfarbe LineColor setzen:
 
If blatt.Cells(i, 12).Value = “Ventil” then
shpInneresShape.Cells(„LineColor“).FormulaU = „=17“
ElseIf blatt.Cells(i, 12).Value = “Pumpe” then
shpInneresShape.Cells(„LineColor“).FormulaU = „=4“
ElseIf blatt.Cells(i, 12).Value = “Speicher” then
shpInneresShape.Cells(„LineColor“).FormulaU = „=3“
End If
 
Für Grau stehen Ihnen die Zahlen zwischen 14 und 20 zur Verfügung. Ich verwende gerne diese „alten“ Zahlen (sie stammen aus einer sehr alten Visio-Version) – Alternativ können Sie auch die Funktion RGB verwenden (ist aber umständlicher).
####
Hallo Herr Martin,
Vielen herzlichen Dank für Ihre schnelle Antwort 😊!!
Leider funktioniert die Farbänderung noch nicht wirklich – ich habe anbei eine Beispiel Visio Datei angefügt.
####
Hallo Herr H.,
ist das gemein oder einfach nur böse?
Im Ernst:
1.) in der Zelle L3 steht nicht „Ventil“, sondern „Ventil “ (ein Leerzeichen am Ende). Deshalb habe ich die Zeile
 
ElseIf blatt.Cells(i, 12).Value = „Ventil“ Then
 
geändert in:
 
ElseIf blatt.Cells(i, 12).Value Like „Ventil*“ Then
 
2.) Sie habe eine Gruppe in der Gruppe in der Gruppe in der Gruppe! Eine Gruppe hat keine Linie. Also habe ich alle Kinder und Enkel und Urenkel … formatiert.
Dann klappt es!
 
Liebe Grüße
 
Rene Martin
 
PS: ich habe auch noch ein Option Compared Text eingefügt, damit nicht zwischen Groß- und Kleinschreibung unterschieden wird.
 
Der Code:
[…]
If blatt.Cells(i, 12).Value Like „Ventil*“ Then
shpInneresShape.Cells(„LineColor“).FormulaU = „=17“ ‚ — grau
Call MacheInnenBunt(shpInneresShape, 17)
ElseIf blatt.Cells(i, 12).Value Like „Pumpe*“ Then
shpInneresShape.Cells(„LineColor“).FormulaU = „=4“ ‚ — blau
Call MacheInnenBunt(shpInneresShape, 4)
ElseIf blatt.Cells(i, 12).Value Like „Speicher*“ Then
shpInneresShape.Cells(„LineColor“).FormulaU = „=3“ ‚ — grün
Call MacheInnenBunt(shpInneresShape, 3)
End If
 
[…]
Sub MacheInnenBunt(vsShape As Shape, Farbe As Integer)
Dim i As Integer
For i = 1 To vsShape.Shapes.Count
vsShape.Shapes(i).Cells(„LineColor“).FormulaU = „=“ & CStr(Farbe)
If vsShape.Shapes(i).Shapes.Count > 0 Then
Call MacheInnenBunt(vsShape.Shapes(i), Farbe)
End If
Next
End Sub