it-swarm.com.de

Wie kann ich ein Diagramm in einer PNG- oder GIF-Datei in Microsoft Excel speichern?

Wie kann ich ein Diagramm in einer PNG- oder GIF-Datei in Microsoft Excel speichern?

Ich weiß, dass ich als HTML-Datei speichern und das dort erstellte Bild verwenden kann, aber ich vermute, dass es einen Weg gibt, der keine andere Unordnung von Dateien erzeugt, die ich nicht möchte. Gerne installiere ich ein Add-In, wenn dies die empfohlene Option ist.

Ich benutze Excel 2003 und 2007, wenn das wichtig ist.

27
fmark

In Excel gibt es keine vom Benutzer zugängliche Unterstützung für diese Funktionalität, aber Sie können dies entweder einfach umgehen oder sich in VBA einarbeiten, wobei diese Funktionalität bereitgestellt wird:


"One-Shot" -Export

  • Wählen Sie das Diagramm aus (das gesamte Diagramm, keine interne Komponente; wählen Sie daher den Rand aus).
  • Kopieren Sie es (Strg-C, Rechtsklick kopieren, was immer Sie wollen).
  • Öffnen Sie MS Paint.
  • Einfügen (möglicherweise möchten Sie zuerst die Bildgröße minimieren, da sie vergrößert, aber nicht verkleinert wird).
  • Speichern Sie wie gewünscht.

Massenexport

Möglicherweise möchten Sie ActiveChart.Export in einem VBA-Makro verwenden. Auf diese Weise können Sie einen Dateipfad angeben und Excel die Arbeit erledigen.

Unten ist ein funktionierender Prototyp, den ich gerade zusammengestellt habe. Führen Sie dies aus und jedes Diagramm in der aktiven Arbeitsmappe wird im PNG-Format in denselben Ordner wie diese Datei exportiert, wobei _chart## an den Dateinamen angehängt wird (wobei ## eine zunehmende Zahl ist) ).

Es führt keine Sicherheitsüberprüfungen durch (überschreibt also Dateien!) Und enthält keine Fehlerüberprüfungen. Es funktioniert nicht , wenn Sie die Arbeitsmappe noch nicht gespeichert haben, der Speicherort schreibgeschützt ist oder sonst etwas, das das Schreiben in den Speicherort der Datei verhindert. Ich habe dies nur in Excel 2003 getestet (das ist alles, was ich im Moment zur Verfügung habe).

Mit anderen Worten: Verwendung auf eigenes Risiko , dies ist nur als grundlegendes Arbeitsbeispiel gedacht .

'small nicety to ensure two-digits for better file sorting'
Function NiceFileNumber(num As Integer) As String
    If num < 10 Then
        NiceFileNumber = "0" & num
    Else
        NiceFileNumber = num
    End If
End Function

'the real function'
Sub ExportAllCharts()
    Dim i As Integer, exportCount As Integer
    Dim fileNum As String, fileBase As String
    Dim sheetObj As Worksheet
    Dim chartObj As Chart

    'current file location and name, with extension stripped'
    fileBase = Left(ThisWorkbook.FullName, InStrRev(ThisWorkbook.FullName, ".") - 1)
    exportCount = 0

    'First, export all charts that are in their own sheets'
    For Each chartObj In ActiveWorkbook.Charts
        fileNum = NiceFileNumber(exportCount)
        exportCount = exportCount + 1

        'Do the export'
        chartObj.Export fileBase & "_chart" & fileNum & ".png"
    Next

    'Then, export all charts that are embedded inside normal sheets'
    For Each sheetObj In ActiveWorkbook.Worksheets
        For i = 1 To sheetObj.ChartObjects.count
            fileNum = NiceFileNumber(exportCount)
            exportCount = exportCount + 1

            'Do the export'
            sheetObj.ChartObjects(i).Activate
            ActiveChart.Export fileBase & "_chart" & fileNum & ".png"
        Next i
    Next
End Sub

Hinweis: Ich habe die Kommentare an beiden Enden in 's eingeschlossen, was nicht erforderlich ist, aber dabei hilft, sicherzustellen, dass sie hier richtig gefärbt sind.

34
DMA57361

Der beste Weg ist, die Excel-Datei als HTML zu speichern.

Wechseln Sie dann in den Ordner, in dem die Bilder gespeichert wurden, und Sie sehen die gewünschten PNG-Bilder.

4
João Pimentel

Um sicher nach PNG zu konvertieren, können Sie die Abbildung aus Excel kopieren, auf einer Folie in Power Point einfügen und dann die folgenden Schritte ausführen.

Speichern unter Andere Formate und wählen Sie dann das gewünschte Format aus. Anschließend werden Sie gefragt, ob Sie dies nur auf die aktuelle Folie oder auf alle Folien anwenden möchten. Wenn Sie alle Folien auswählen, wird in dem von Ihnen angegebenen Verzeichnis ein Ordner erstellt und jede Folie im ausgewählten Format in einer eigenen Datei gespeichert.

Es ist nicht sehr elegant, aber es kann schnell genug sein, wenn Sie nur die Dateien benötigen, und es ist besonders hilfreich, wenn Sie bereits eine Präsentation mit denselben Grafiken erstellt haben.

3
sgildea

Alter Thread, aber nur für den Fall, dass jemand anderes von Google hier landet: Excel 2011 für Mac verfügt über die Option "Als Bild speichern" im Kontextmenü, um genau dies zu tun.

2
Dave Mulligan

In Excel 2010 können Sie dies folgendermaßen tun:

  1. Klicken Sie auf das Diagramm, um es auszuwählen.
  2. Kopieren Sie mit STRG + C oder durch Klicken mit der rechten Maustaste und Auswählen von Kopieren.
  3. Wechseln Sie zu einem Grafik-Bearbeitungsprogramm (ich verwendete Paint.net ).
  4. Einfügen.

Anschließend können Sie das Bild in einem beliebigen Format speichern.

0
Will Martin

Wenn Sie Greenshot (eine Bildschirmaufnahme-Software) verwenden, können Sie das Diagramm in Excel kopieren (Ctrl+C), klicken Sie mit der rechten Maustaste auf das Greenshot-Symbol, wählen Sie Bild aus der Zwischenablage öffnen und speichern Sie es. Sie müssen keinen Grafikeditor verwenden.

0
gronostaj