Es gibt einige Möglichkeiten, anzugeben, dass ein Diagramm in einem neuen Blatt in der aktuellen Arbeitsmappe angezeigt werden sollte, je nachdem, wie Sie das Diagramm erstellen (z. B. manuell in Excel, mit VBA -Code oder über eine Bibliothek wie Pandas in Python). Ich werde die gemeinsamen Methoden abdecken:
1. Manuell in Excel (GUI)
* Dies ist das einfachste, wenn Sie direkt in der Excel -Anwendung arbeiten.
1. Erstellen Sie das Diagramm: Wählen Sie die Daten aus, die Sie zeichnen möchten. Gehen Sie zur Registerkarte "Einfügen" und wählen Sie den gewünschten Diagrammtyp (z. B. Spalte, Kuchen, Zeile). Das Diagramm wird zunächst in das aktuelle Blatt eingebettet.
2. Das Diagramm in ein neues Blatt verschieben:
* Methode 1 (mit der rechten Maustaste): Klicken Sie mit der rechten Maustaste auf den Diagrammbereich. Wählen Sie "Move Chart ...".
* Methode 2 (Registerkarte "Diagrammdesign): Wählen Sie das Diagramm. Die Registerkarte "Diagrammdesign" wird im Band angezeigt. Klicken Sie auf die Schaltfläche "Verschieben Sie die Diagramm" (normalerweise auf der rechten Seite).
3. Dialogie des Diagramms verschieben: Wählen Sie im Dialogfeld "Move Diagramm" "neues Blatt:" und geben Sie dem Blatt optional einen Namen. Klicken Sie auf "OK".
2. VBA (Visual Basic für Anwendungen)
* Diese Methode wird verwendet, wenn Sie die Erstellung und Platzierung von Diagrammen mithilfe von VBA -Code in Ihrem Excel -Arbeitsbuch automatisieren möchten.
`` `vba
Sub CreateChartonNewsheet ()
Dim CHT als Diagramm
Dimer RNG als Reichweite
Dim Newsht als Arbeitsblatt
'Definieren Sie den Datenbereich
Setzen Sie rng =thisworkbook.sheets ("Sheet1"). Bereich ("A1:B10") 'Einstellen von Blattnamen und Reichweite
'Erstellen Sie ein neues Arbeitsblatt, um das Diagramm zu halten
Setzen Sie newSht =thisworkbook.sheets.add (nach:=thisworkbook.sheets (thisworkbook.sheets.count)) 'Fühe Blatt am Ende fügt Blatt hinzu
Alternativ fügen Sie das Blatt am Anfang hinzu:
'Setzen Sie newSht =thisworkbook.sheets.add (vor:=thisworkbook.sheets (1))
'Erstellen Sie das Diagramm auf dem neuen Blatt
Setzen Sie CHT =Diagramme.Add
Mit CHT
.ChartType =xlcolumnclustered 'Einstelldiagrammtyp
.SetSourcedata Quelle:=rng
.Location where:=xLlocationAsNewsheet, Name:=newsht.name 'Setzen Sie den Standort
. Haslegend =True 'Beispiel:Fügen Sie eine Legende ein
.ChartTitle.text ="Mein Diagrammtitel" 'Beispiel:Setzen Sie den Titel
'Zusätzliche Optionen für die Anpassung der Diagramme können hier hinzugefügt werden
Enden mit
'Optional:Benennen Sie das neue Blatt um (bereits oben über den Standort).
'Newsht.name ="myChartsheet"
'Optional:Aktivieren Sie das Diagrammblatt
Newsht.Aktivate
'Objektvariablen aufräumen
Setzen Sie CHT =nichts
Rng einstellen =nichts
NEWSHT =Nichts festlegen
Ende sub
`` `
* Erläuterung:
* `Dim CHT als Diagramm":deklariert eine Variable, um das Diagrammobjekt zu halten.
* `Dim rng als Bereich":deklariert eine Variable, um den Datenbereich zu halten.
* `Dim Newsht als Arbeitsblatt":Erklärt eine Variable, um das neue Arbeitsblatt zu halten.
* `Set rng =thisworkbook.sheets (" Sheet1 "). Bereich (" A1:B10 ")`:Definiert den für das Diagramm verwendeten Datenbereich. Wichtig:Ändern Sie `" Blatt1 "und" "A1:B10" in Ihrem tatsächlichen Blattnamen und Datenbereich.
* `Set Newsht =thisworkbook.sheets.add (nach:=thisworkbook.sheets (thisworkbook.sheets.count))`:Fügt ein neues Arbeitsblatt * nach * das letzte Blatt in der Arbeitsmappe hinzu. Sie können `vor:=thisworkbook.sheets (1)` add es als * erster * Blatt hin.
* `Set cht =chriits.add`:Erstellt ein neues Diagrammobjekt. Das ist der Schlüssel. `Chabrics.add` erstellt ein Diagramm in der Sammlung von * ChartObjects *.
* `.ChartType =xlcolumnClustered`:Legt den Diagrammtyp fest. Verwenden Sie die entsprechende `xlchartType` -Konstante (z. B.` Xline`, `xlpie`,` xlbarclustered`).
* `.SetSourcedata Quelle:=rng`:Legt die Datenquelle für das Diagramm fest.
* `.Location wobei:=xLlocationAsNewsheet, Name:=newsht.name`:Dies ist die entscheidende Zeile. Es verschiebt das Diagramm in ein neues Blatt.
* `Wobei:=xLlocationAsNewsheet`:Gibt an, dass das Diagramm auf einem neuen Blatt platziert werden sollte.
* `Name:=newSht.name`:Legt den Namen des neuen Blatts zum Diagrammnamen fest.
* Wichtige Überlegungen für VBA:
* Fehlerbehandlung: Fügen Sie die Fehlerbehandlung (z. B. "Auf Fehler mit Fehlerhandler") hinzu, um Ihren Code robuster zu gestalten. Was passiert, wenn das angegebene Blatt nicht vorhanden ist oder der Bereich ungültig ist?
* Objektvariablen: Reinigen Sie Ihre Objektvariablen immer, indem Sie sie auf "Nichts" (wie gezeigt) einstellen, um den Speicher zu veröffentlichen.
* Diagrammanpassung: Die Zeilen von `.ChartTitle.Text`,". VBA bietet umfangreiche Optionen zum Anpassen aller Aspekte eines Diagramms (Äxte, Beschriftungen, Serienformatierung usw.). Entdecken Sie das Excel VBA -Objektmodell für Diagramme.
* Sicherheit: Wenn Ihr Arbeitsmappe VBA-Code enthält, muss er wahrscheinlich als makro-fähiger Arbeitsmappe (`.xlsm`) gespeichert werden. Benutzer müssen auch Makros in Excel aktivieren.
3. Python mit Pandas und OpenPyxl (oder XLSXWriter)
* Dies wird verwendet, wenn Sie mit Daten in Python arbeiten und Excel -Diagramme erstellen möchten.
`` `Python
Pandas als PD importieren
OpenPyxl importieren
Aus OpenPyxl -Importarbeitsbuch
von openpyxl.chart import Barchart, Referenz, Serie
# Einige Beispieldaten erstellen
Data ={'Kategorie':['A', 'B', 'C', 'D'],
'Wert':[10, 15, 13, 18]}
df =pd.dataframe (Daten)
# Erstellen Sie einen Pandas Excel -Autor mit OpenPyxl als Motor
writer =pd.excelwriter ("chart_example.xlsx", Engine ='openPyxl')
# Schreiben Sie den DataFrame in ein Blatt mit dem Namen "Daten"
df.to_excel (writer, sheet_name ='data', index =false)
# Holen Sie sich die Arbeitsmappe und Arbeitsblattobjekte
workbook =writer.book
Worksheet =writer.sheets ['Daten']
# Erstellen Sie einen Barchart
chart =barchart ()
Diagramm.Type ="col"
Diagramm.Style =10
Diagramm.title ="Verkäufe nach Kategorie"
Diagramm.y_axis.title ='Wert'
Diagramm.x_axis.title ='Kategorie' '
# Definieren Sie den Datenbereich (ohne die Kopfzeile)
Data_Range =Referenz (Arbeitsblatt, min_col =2, min_row =2, max_col =2, max_row =len (Data ['Kategorie']) + 1) #Column B (Werte), Header überspringen
Kategorien =Referenz (Arbeitsblatt, min_col =1, min_row =2, max_col =1, max_row =len (Data ['Kategorie']) + 1) #Column A (Kategorien), Header überspringen
# Fügen Sie die Datenreihe dem Diagramm hinzu
Serie =Serie (data_range, title_from_data =false) #use .title ="", um den Titel manuell festzulegen
Chart.Append (Serie)
Diagramm.Set_Categories (Kategorien)
# Erstellen Sie ein neues Arbeitsblatt für das Diagramm
chart_sheet =workbook.create_sheet ("chart")
# Fügen Sie das Diagramm dem neuen Blatt hinzu
chart_sheet.add_chart (Diagramm, "a1") # Die Zellposition nach Bedarf anpassen
# Speichern Sie die Excel -Datei
writer.close ()
print ("Excel -Datei 'chart_example.xlsx' mit Diagramm in einem neuen Blatt erstellt.")
`` `
* Erläuterung:
1. Bibliotheken importieren: Importieren Sie `pandas`,` openpyxl` und die notwendigen Module von `openpyxl.chart`. Stellen Sie sicher, dass diese Bibliotheken installiert sind (`pip installieren pandas openpyxl`).
2. Daten erstellen (Pandas): Erstellen Sie Ihre Daten mit Pandas DataFrames.
3. Excel Writer erstellen: Erstellen Sie ein `pd.excelwriter` -Objekt und geben Sie` openpyxl` als Motor an. Auf diese Weise können Sie "OpenPyxl" -Funktionalität zum Erstellen des Diagramms verwenden.
4. Daten in Blatt schreiben: Schreiben Sie den DataFrame in ein Blatt in der Excel -Datei.
5. Arbeitsbuch und Arbeitsblattobjekte: Greifen Sie aus dem "Excelwriter" auf das "Workbook" und "Arbeitsblatt" -Objekte ".
6. Diagramm erstellen: Erstellen Sie ein Diagrammobjekt (z. B. `barchart`).
7. Datenbereiche definieren (Referenz): Verwenden Sie `openpyxl.chart.Reference` -Objekte, um den Datenbereich für das Diagramm zu definieren. Achten Sie auf die Parameter `min_col`,` min_row`, `max_col` und` max_row`.
8. Serie erstellen: Erstellen Sie ein `Series` -Objekt aus dem Datenbereich. Die "Serie" repräsentiert die Datenpunkte, die dargestellt werden sollen.
9. Serie an Diagramm anhängen: Fügen Sie die "Serie" zum "Chart" hinzu.
10. Kategorien festlegen Setzen Sie die Kategorien
11. neues Blatt erstellen: Erstellen Sie ein neues Arbeitsblatt für das Diagramm mit `Workbook.create_sheet (" Diagramm ")`. Der Name des neuen Blattes lautet "Chart".
12. Diagramm zu Blatt hinzufügen: Verwenden Sie `chart_sheet.add_chart (Diagramm," a1 ")`, um das Diagramm zum neuen Blatt hinzuzufügen. Das Argument "A1" "" A1 "gibt die obere linke Zelle an, in der das Diagramm platziert wird. Passen Sie dies nach Bedarf an.
13. Arbeitsbuch speichern: Speichern Sie die Excel -Datei mit `writer.close ()`.
* Schlüsselpunkte für Python:
* Bibliotheken: Sie * müssen * die erforderlichen Bibliotheken installieren:`pip installieren pandas openpyxl` (oder` pip install xLSXWRITER` Wenn Sie diesen Motor auswählen).
* openPyxl vs. xlsxWriter:
* `openpyxl`:Kann vorhandene Excel -Dateien lesen und schreiben. Flexibler für komplexe Formatierung.
* `XlsxWriter`:Ausgezeichnet zum Erstellen von * neuen * Excel -Dateien, insbesondere große. Oft schneller als "openpyxl" zum Schreiben. Es kann jedoch nicht vorhandene Dateien geändert werden. Der Hauptunterschied für dieses Problem besteht darin, dass "XLSXWriter" nur Diagramme auf dem Blatt erstellen kann, in dem sich die Daten befinden.
* Datenbereiche: Die "Referenz" -Objekte sind entscheidend. Stellen Sie sicher, dass die Werte von `min_col`,` min_row`, `max_col` und` max_row` für Ihre Daten korrekt sind. Denken Sie daran, dass Excel-Spalten und Zeilen 1 basiert, nicht 0 basierend wie Python-Listen.
* Diagrammanpassung: `openPyxl` und` xlsxwriter` haben umfangreiche Optionen zum Anpassen von Diagrammen (Titel, Achsen, Farben, Beschriftungen usw.). Konsultieren Sie ihre Dokumentation.
Zusammenfassend:
* Wenn Sie es manuell in Excel tun, ist der Dialog "Move Diagramm" am einfachsten.
* Wenn Sie mit VBA automatisieren, ist die Eigenschaft ".location" der Schlüssel.
* Wenn Sie Python verwenden, benötigen `openpyxl` und` xlsxwriter` mehr Code, geben Ihnen jedoch leistungsstarke Optionen für die Diagrammanpassung. `openPyxl` ist erforderlich, wenn eine vorhandene Excel -Datei geändert wird.
Wählen Sie die Methode aus, die Ihren Anforderungen und der Umgebung, in der Sie arbeiten, am besten entspricht. Passen Sie die Code -Beispiele an Ihre spezifischen Daten, Blattnamen und das gewünschte Diagrammtyp und das gewünschte Erscheinungsbild an. Denken Sie daran, die erforderlichen Bibliotheken bei der Verwendung von Python zu installieren.