Shape-Katalog für die Datenvisualisierung in Layouts

Shape Katalog für Datenvisualisierung im Layout MakroC:\Users\tangi\Desktop\Neue Artikel\Datavisualization im Fabriklayout

Die Datenvisualisierung macht seit vielen Jahren große Fortschritte. Das begegnet jedem von uns im Web. Besonders gilt das für positionsbestimmte Daten. Diese lassen sich viel klarer in verschiedenen Karten visualisieren. In Unternehmen ist das gefühlt noch nicht so. Dort stehen Informationen, die einen Bezug zum Fabriklayout haben, noch vorwiegend in Standard-Diagrammen.

Sie müssen aber nicht zum Full Stack Webentwickler werden, um so eine Datenvisualisierung in Ihre Firma zu bringen. Im Artikel Datenvisualisierung im Fabriklayout stelle ich einen Weg mit Microsoft Excel vor.

Rückblick zur Datenvisualisierung in Layouts Version 1

Grundlage ist ein beliebiges Layout, z. B. eine Bilddatei im Jpeg oder Png Format im Hintergrund. Positionen, die für Daten ein Bezugspunkt sind, müssen Sie nur kennzeichnen. Das funktioniert über Excel Form Elemente (Kreis, Rechteck, Dreieck usw.), die Sie auf die richtige Position im Bild schieben und einen eindeutigen Namen vergeben.

Shapes zur Datenvisualisierung im Layout Beispiel
Visualisierungselemente und Tag Marken

Ein Makro fügt dann an die Position der Tag Marke ein Visualisierungselement ein. Das kann ein beliebiges Excel Objekt sein, wie Formen, Piktogramme, 3D Modelle oder ein Bild.

Die Tag Marke braucht nur auch wieder einen eindeutigen Namen, so dass es der Makro finden kann.

Ihre Visualisierung lebt davon, dass Sie unterschiedliche Visualisierungselemente, passend zu den Daten, auswählen. Das funktionierte mit dem Makro bisher umständlich.

  1. Element auswählen
  2. auf das Tabellenblatt Setup kopieren
  3. altes Element löschen
  4. dem neuen Element den Namen SETUP_SIZEINF_SHAPE zuweisen

Der eigene Shape Katalog

Wesentlich komfortabler für Sie ist, wenn ein weiteres Tabellenblatt hinzukommt: Ihr eigener Shape-Katalog.

Shape Katalog zur universellen Datenvisualisierung
Shape Katalog zum Sammeln von Datenvisualisierungselementen mit Button zum Übernehmen

Dort sammeln Sie Ihre bisherigen Visualisierungselemente und erstellen so auch problemlos wiederkehrende Visualisierungen.

Möchten Sie ein Visualisierungselement verwenden, markieren Sie es und klicken auf den Button Shape verwenden – Fertig.

Der Makro erledigt den Rest für Sie.

Was passiert beim Klicken im Makro? Exakt dasselbe, was Sie momentan selber tun müssen.

Zuerst muss der Makro wissen, ob ein passendes Objekt von Ihnen ausgewählt wurde. Das geht in Excel mit der Eigenschaft ActiveWindow.Selection.

Enthält sie ein Excel Shape geht es weiter, andernfalls läuft der Aufruf in den On Error GoTo Teil und beendet die Sub.

Sub CopySizeInformationShape()
Dim tagName As String
Dim activeShape As Shape
Dim activeSelection As Variant
Dim shp As Shape

  On Error GoTo CopySizeInformationShape_Err
  
  tagName = "SETUP_SIZEINF_SHAPE"

  Set activeSelection = ActiveWindow.Selection
  Set activeShape = ActiveSheet.Shapes(activeSelection.name)

  Call SetSheetNames
  If ShapeExists(SHEET_SETUP, tagName) = True Then
    Sheets(SHEET_SETUP).Shapes(tagName).Delete
  End If

Andernfalls ist alles okay und ein Shape ist ausgewählt. In diesem Fall löscht der Makro das bisherige Visualisierungselement im Tabellenblatt Setup. Da der Namen fest vorgegeben ist, geht das über den Sheets(SHEET_SETUP).Shapes(tagName).Delete Befehl.

Jetzt wird das ausgewählte Shape in die Zwischenablage kopiert (Copy) und im Setup Tabellenblatt eingefügt. Der Name muss zwingend noch geändert werden.  

Um das eingefügte Shape wieder zu finden, wird wieder die Eigenschaft ActiveWindow.Selection abgefragt.

Damit das Shape nicht irgendwo liegt und vielleicht nicht sichtbar ist, bekommt es auch eine ungefähr passende Positionsangabe über die Eigenschaften Left und Top mit.

  activeShape.Copy
  Sheets(SHEET_SETUP).Select
  Sheets(SHEET_SETUP).Paste
  Set activeSelection = ActiveWindow.Selection
  Set activeShape = ActiveSheet.Shapes(activeSelection.name)
  activeShape.name = tagName
  activeShape.Left = 485
  activeShape.Top = 300

Exit Sub

CopySizeInformationShape_Err:
  'kein Form-Element ausgewählt

End Sub

Viel Spaß beim Ausprobieren!

Download

Hier können Sie das Makro und eine Beispieltabellen downloaden und Visualisierungen ausprobieren.

Links

Dokumentation zu ActiveWindow.Selection

Kommentar verfassen