Mekko Graphics-Diagramme importieren

Importieren Sie Mekko Graphics-Diagramme und deren Daten bequem in think-cell.

Mekko Graphics-Diagramme in think-cell importieren

Das Import Mekko Graphics to think-cell Tool konvertiert Mekko Graphics-Diagramme in think-cell Diagramme. Sie müssen Mekko Graphics nicht installiert haben, um das Import-Tool zu verwenden.

Um Mekko Graphics-Diagramme in think-cell zu importieren, gehen Sie wie folgt vor:

  1. Wählen Sie in PowerPoint ein oder mehrere Mekko Graphics-Diagramme auf einer Folie aus oder wählen Sie Folien aus, die Mekko Graphics-Diagramme enthalten.
  2. Wählen Sie im Menüband think-cell > Elements > Tools Tools Menu icon > Import Mekko Graphics to think-cell oder Insert > think-cell > Tools Tools Menu icon > Import Mekko Graphics to think-cell.

Nach dem Auswählen von Import Mekko Graphics to think-cell, ersetzt think-cell die von Ihnen ausgewählten Mekko Graphics-Diagramme durch think-cell Diagramme. Alle sonstigen Inhalte der Folie bleiben unverändert. Nach jeder Folie, in der Sie Mekko Graphics-Diagramme ersetzt haben, fügt think-cell eine Backup-Folie mit den ursprünglichen Mekko Graphics-Diagrammen ein.

Sie können die meisten Mekko Graphics-Diagramme in think-cell importieren, mit folgenden Ausnahmen:

  • Gantt-, schwebende Balken- und horizontale schwebende Balkendiagramme
  • Sonstige Mekko Graphics-Elemente, wie Harvey Balls

Wenn ein Mekko Graphics-Diagramm oder -Element nicht importiert werden kann, zeigt think-cell eine Meldung an.

Diagramme mit Datenzeilen oder -spalten importieren

Wenn ein Mekko Graphics-Diagramm Zeilen und Spalten enthält, importiert think-cell dieses Diagramm als think-cell Diagramm mit einer Datentabelle (siehe Diagramme mit Datentabellen). Mekko Graphics-Diagramme können dieselben Daten sowohl in der Datentabelle als auch im Diagramm darstellen. think-cell unterstützt derzeit die Darstellung der gleichen Daten sowohl in der Datentabelle als auch im Diagramm nicht. Wenn ein Mekko Graphics-Diagramm die gleichen Daten wie die Datentabelle darstellt, importiert think-cell dieses Diagramm ohne Datentabelle.

Stil und Format importierter Diagramme

think-cell importiert den Stil und die Formatierung von Mekko Graphics-Diagrammen nicht. Nach dem Importieren eines Mekko Graphics-Diagramms lassen sich Diagrammstil und Formatierung jedoch ganz einfach in think-cell nachbilden.

Stildiagramme

Wenn think-cell ein Mekko Graphics-Diagramm importiert, übernimmt das importierte Diagramm den Stil und die Formatierung der aktiven think-cell Stildefinition (siehe Set up think-cell style files). Sie können importierte Diagramme wie alle sonstigen think-cell Diagramme formatieren und gestalten (siehe Stil und Format von Diagrammen).

Das folgende Bild zeigt, wie Sie über das Kontextmenü des Diagramms eine Y-Achse zu einem importierten Diagramm hinzufügen können.

Use think-cell's context menu to add axis

Nummern formatieren

Die meisten Zahlenformatierungen in Mekko Graphics-Diagrammen werden nicht in think-cell Diagramme importiert. In think-cell können Sie ganz einfach die Zahlenformatierung ändern (siehe Diagrammbeschriftungen formatieren).

Das folgende Bild zeigt, wie Sie mit der Mini-Symbolleiste das Zahlenformat für Währungen aus dem ursprünglichen Mekko Graphics-Diagramm auf das importierte Diagramm anwenden können.

Wir empfehlen Ihnen, Ihre Mekko Graphics-Diagramme und importierten Diagramme miteinander zu vergleichen, um sicherzustellen, dass sie zusammenpassen. Wechseln Sie zwischen den Original- und den Backup-Folien, um die importierten Diagramme zu vergleichen und gegebenenfalls eine Änderung vorzunehmen. Wenn die importierten Diagramme Ihren Vorstellungen entsprechen, können Sie die Backup-Folien löschen.

Daten aus importierten Diagrammen bearbeiten

think-cell importiert die Daten aus einem Mekko Graphics-Diagramm in das Datenblatt der importierten Diagramme. Sie können die Daten eines importierten Diagramms wie die eines anderen think-cell Diagramms bearbeiten (siehe Einführung in Element-Datenblätter).

Ausgeblendete Serien oder Kategorien anzeigen

think-cell importiert die Daten aus ausgeblendeten Serien oder Kategorien in einem Mekko Graphics-Diagramm als ausgeblendete Zeilen oder Spalten in das Datenblatt der importierten Diagramme. Um ausgeblendete Serien oder Kategorien im importierten Diagramm anzuzeigen, wählen Sie die Spalten oder Zeilen aus, die die ausgeblendeten Daten im Diagramm-Datenblatt enthalten, klicken mit der rechten Maustaste auf Ihre Auswahl und wählen Unhide. Weitere Informationen finden Sie unter Microsoft Support.

Den Importvorgang automatisieren

Nur Windows

Unter Windows können Sie die think-cell API-Funktionen verwenden, um Mekko Graphics-Diagramme programmgesteuert zu think-cell zu importieren oder zu überprüfen. ImportMekkoGraphicsCharts ersetzt Mekko Graphics-Diagramme durch think-cell Diagramme. GetMekkoGraphicsXML extrahiert die XML-Definition eines Mekko Graphics-Diagramms.

Diagramme aus Mekko Graphics importieren

Beschreibung

Diese Funktion ersetzt alle Mekko Graphics-Diagramme in dem Array von Formen, das ihr übergeben wird, durch ein gleichwertiges think-cell Diagramm. Alle Formen müssen auf derselben Folie sein. Vor dem Modifizieren der Folie macht die Funktion eine Kopie der nicht modifizierten Folie und fügt sie direkt hinter der modifizierten Version ein.

Wurde die Folie nicht geändert, beispielsweise weil das Array kein Mekko Graphics-Diagramm enthalten hat, gibt die Funktion Nothing/null zurück. Andernfalls gibt die Funktion einen Verweis auf die unveränderte Kopie der Folie zurück.

VBA

Signatur
tcPpAddIn.ImportMekkoGraphicsCharts ( _
    ashp As PowerPoint.Shape() _
) As PowerPoint.Slide
Beispiel

Um dieses Beispiel zu verwenden, fügen Sie es einem Modul in PowerPoint hinzu. Unter Visual Basic for Applications erfahren Sie mehr.

Das Ausführen von ImportAll in einer Präsentation geht die Folien in der Präsentation durch und ersetzt alle sichtbaren Mekko Graphics-Diagramme mit äquivalenten think-cell Diagrammen, wobei von jeder Folie, die ein Mekko Graphics-Diagramm enthält, eine Kopie gemacht wird, bevor sie modifiziert wird.

Option Explicit

Sub ImportAll()

    ' Get reference to think-cell Object

    Dim tcPpAddIn As Object
    Set tcPpAddIn = Application.COMAddIns("thinkcell.addin").Object

    ' Iterate over copy of original Slides to avoid
    ' iterating over copies inserted by ImportMekkoGraphicsCharts again

    Dim SlidesCopy As New Collection
    Dim Slide As PowerPoint.Slide
    For Each Slide In ActivePresentation.Slides
        SlidesCopy.Add Slide
    Next Slide
    
    For Each Slide In SlidesCopy
    
        ' Construct Array containing only visible shapes on slide
        
        Dim visibleShapes() As PowerPoint.Shape
        ReDim visibleShapes(1 To Slide.Shapes.Count)
        Dim shapeIndex As Long
        For shapeIndex = 1 To Slide.Shapes.Count
            If Slide.Shapes(shapeIndex).Visible Then
                Set visibleShapes(shapeIndex) = Slide.Shapes(shapeIndex)
            End If
        Next shapeIndex
        
        ' Pass Array to ImportMekkoGraphics and store return value
        
        Dim CopySlide As PowerPoint.Slide
        Set CopySlide = tcPpAddIn.ImportMekkoGraphicsCharts(visibleShapes)
        
        ' If Slide was modified...
        If Not CopySlide Is Nothing Then
        ' ... do things with copy of unmodified slide
        End If
    Next Slide
End Sub

C#

Signatur
PowerPoint.Slide tcPpAddIn.ImportMekkoGraphicsCharts(
    PowerPoint.Shape[] ashp
);
Beispiel

Um dieses Beispiel zu verwenden, fügen Sie in der C#-PowerPoint VSTO Add-inProjektvorlage diese Methode zur Klasse ThisAddIn hinzu. Um mehr zu erfahren siehe C# und Add-in-Entwicklung.

private void ImportAll(PowerPoint.Presentation presentation)
    {
        var tcPpAddIn = presentation.Application.COMAddIns.Item("thinkcell.addin").Object;
        foreach (PowerPoint.Slide slide in presentation.Slides.Cast<PowerPoint.Slide>().ToList())
        {
            PowerPoint.Slide slideCopy = tcPpAddIn.ImportMekkoGraphicsCharts(
                slide.Shapes.Cast<PowerPoint.Shape>().ToArray()
            );
        }
    }

Um ImportAll bei jeder geöffneten Präsentation auszuführen, fügen Sie die folgende Zeile zur ThisAddIn_Startup-Methode hinzu.

Application.PresentationOpen += new PowerPoint.EApplication_PresentationOpenEventHandler(ImportAll);

Mekko Graphics XML herunterladen

Beschreibung

Diese Funktion gibt den XML-Code der Mekko Graphics-Diagramme in shp als String wieder. Es modifiziert die übergebene Form nicht.

Wenn shp kein Diagramm von Mekko Graphics ist, wird ein E_INVALIDARG (0x80070057) Fehler gemeldet.

VBA

Signatur
tcPpAddIn.GetMekkoGraphicsXML ( _
    shp As PowerPoint.Shape _
) As String
Beispiel

Um dieses Beispiel zu verwenden, fügen Sie den folgenden Code zu einem Modul in PowerPoint hinzu. Unter Visual Basic for Applications erfahren Sie mehr.

Option Explicit

Sub GetMekkoGraphicsXMLOfAllShapes()

    ' Get reference to think-cell Object

    Dim tcPpAddIn As Object
    Set tcPpAddIn = Application.COMAddIns("thinkcell.addin").Object

    ' Go through the slides in the presentation and
    ' output the XML of each Mekko Graphics chart on the slide
    ' to the debug console

    Dim slide As PowerPoint.slide
    For Each slide In Application.ActivePresentation.Slides
        Dim shape As PowerPoint.shape
        For Each shape In slide.Shapes
            On Error Resume Next ' skip over shapes that are not Mekko Graphics charts
            Debug.Print tcPpAddIn.GetMekkoGraphicsXML(shape)
        Next shape
    Next slide
End Sub

C#

Signatur
string tcPpAddIn.GetMekkoGraphicsXML(
    PowerPoint.Shape shp
);
Beispiel

Um dieses Beispiel zu verwenden, ersetzen Sie den Code in Program.cs eines Console App durch das Beispiel.

Das Muster erfordert Verweise auf Microsoft PowerPoint 16.0 Object Library und Microsoft Office 16.0 Object Library (siehe C# für Einzelheiten).

Durch Ausführen der Anwendung wird die Präsentation in C:\Samples\GetMekkoGraphicsXML\presentation.pptx durchsucht und das XML der in der Präsentation enthaltenen Mekko Graphics-Diagramme auf der Konsole ausgegeben.

using PowerPoint = Microsoft.Office.Interop.PowerPoint;
using Office = Microsoft.Office.Core;

namespace Sample
{
    class Program
    {
        static void Main()
        {
            var ppapp = new PowerPoint.Application();
            var presentation = ppapp.Presentations.Open(
                "C:\\Samples\\GetMekkoGraphicsXML\\presentation.pptx",
                /*ReadOnly*/Office.MsoTriState.msoTrue,
                /*Untitled*/Office.MsoTriState.msoTrue,
                /*WithWindow*/Office.MsoTriState.msoFalse
            );

            var tcPpAddIn = ppapp.COMAddIns.Item("thinkcell.addin").Object;
            foreach (PowerPoint.Slide slide in presentation.Slides)
            {
                foreach (PowerPoint.Shape shape in slide.Shapes)
                {
                    string xml = tcPpAddIn.GetMekkoGraphicsXML(shape);
                    Console.WriteLine(xml);
                }
            }

            presentation.Close();
            ppapp.Quit();
        }
    }
}