Microsoft Excel

Herbers Excel/VBA-Archiv

Diagramme mit relativen Bezug erstellen

Betrifft: Diagramme mit relativen Bezug erstellen von: Matthias
Geschrieben am: 09.08.2020 14:36:59

Hallo Forumler,


ich benötige eine wenig Hilfe um das Brett vor meinem Kopf abzuschrauben.


Ich möchte ein Diagramm in Abhängigkeit von der Position des markierten Zelle erstellen.


Ich habe mit dem Makrorecorder folgendes Markro aufgenommen.

Sub Makro8()
'
ActiveCell.Offset(0, 1).Range("A1:B1,A6:B6,A11:B11").Select
ActiveCell.Offset(10, 1).Range("A1").Activate
ActiveSheet.Shapes.AddChart.Select
ActiveChart.ChartType = xlColumnClustered
ActiveChart.SetSourceData Source:=Range( _
"Tabelle1!$B$2:$C$2;Tabelle1!$B$7:$C$7;Tabelle1!$B$12:$C$12")
ActiveChart.ChartType = xlColumnClustered
ActiveChart.SeriesCollection(1).Name = "=Tabelle1!$A$2"

End Sub


Was scheinbar funktioniert ist, dass in Abhängigkeit von der Position der aktiven Zelle die Zellen mit den Daten für das Diagramm markiert werden.


Mehr aber leider auch nicht...ab ActiveSheet.Shapes.AddChart.Select erscheint dann eine Fehlermeldung.


Was mache ich falsch?


https://www.herber.de/bbs/user/139554.xlsm

Betrifft: AW: Diagramme mit relativen Bezug erstellen
von: onur
Geschrieben am: 09.08.2020 15:44:43

"Ich möchte ein Diagramm in Abhängigkeit von der Position des markierten Zelle erstellen." - verrätst du uns evtl auch, in WELCHER Abhängigkeit ????

Betrifft: AW: Diagramme mit relativen Bezug erstellen
von: Matthias
Geschrieben am: 09.08.2020 16:17:01

@onur
Hallo onur,

sorry, habe ich unterschlagen.

Die Abhängigkeit besteht darin, dass die Daten welche im Diagramm dargestellt werden sollen, in Zellen stehen die einen relativer Bezug zur aktiven Zelle haben.
Z.B. ist die aktive Zelle A1, dann stehen die Daten für das Diagramm in dem Bereich B1:C3, ist die aktive Zelle A2, dann stehen die Daten für das Diagramm in dem Bereich B2:C4

konnte ich das verständlich erklären...

Betrifft: AW: Diagramme mit relativen Bezug erstellen
von: onur
Geschrieben am: 09.08.2020 16:37:58

Wieso machst du es nicht so?
Da brauchst du gar kein Makro und ist etwas "professioneller".
https://www.herber.de/bbs/user/139555.xlsm

Betrifft: AW: Diagramme mit relativen Bezug erstellen
von: Hajo_Zi
Geschrieben am: 09.08.2020 19:06:25

Hi Matthias,

meinst du so etwas:
Sub DiaErstellen()
    Dim rngBereich As Range
    Set rngBereich = ActiveCell.Offset(0, 1).Range("A1:B1,A6:B6,A11:B11")
    With ActiveSheet.Shapes.AddChart.Chart
        .ChartType = xlColumnClustered
        .SetSourceData Source:=rngBereich
        .SeriesCollection(1).Name = ActiveCell.Value
    End With
End Sub
Bis später,
Karin
http://excel-inn.de/

Betrifft: AW: Diagramme mit relativen Bezug erstellen
von: onur
Geschrieben am: 09.08.2020 19:08:35

Häääh ???
Hajo_Zi oder Karin ???

Betrifft: Beitrag von Karin mit Anmeldung Hajo_Zi
von: Hajo_Zi
Geschrieben am: 09.08.2020 19:12:11

Hallo Onur,

es war Karin nur an meinem Rechner-
Irgendwie klappte es nicht mit Ihrer Anmeldung

GrußformelHomepage

Betrifft: AW: Beitrag von Karin mit Anmeldung Hajo_Zi
von: onur
Geschrieben am: 09.08.2020 19:12:54

Ach so!

Betrifft: AW: Diagramme mit relativen Bezug erstellen
von: Matthias
Geschrieben am: 09.08.2020 21:56:32

@Karin

Genau, so hatte ich es gemeint...funktioniert auch wie von mir gewünscht. Vielen Dank dafür.

Werde aber versuche deinen Code zu verstehen...und würde mich gegebenenfalls wieder melden, falls mir ein neues Brett vorm Kopf wächst...

Ich wünsche allen die geholfen haben einen schönen Abend...

Betrifft: AW: Diagramme mit relativen Bezug erstellen
von: Matthias
Geschrieben am: 09.08.2020 23:13:56

@Karin

dein Code funktioniert in der Testdatei (habe ich erstellt um das Problem zu vereinfachen) einwandfrei.

In der "realen" Datei muss ich aber für die Darstellung die Zeile/Spalten wechseln.
Ich nehme an, dass die Codezeile .SetSourceData Source:=rngBereich damit was zu tun hat. oder muss der Code einfach um eine Zeile erweitert werden, des die Aktion "Zeile/Spalten wechseln" ausführt?

Auch habe ich festgestellt, dass die aktive Zelle nicht als Diagrammname gewählt wird...vorüber ich verwundert bin.

Dein Code .SeriesCollection(1).Name = ActiveCell.Value sollte doch als Name die aktive Zelle auswählen oder?

Betrifft: AW: Diagramme mit relativen Bezug erstellen
von: Matthias
Geschrieben am: 09.08.2020 23:31:32

@Katrin

ich denke ich habe Zeile/Spalten wechseln hinbekommen...

.SetSourceData Source:=rngBereich, PlotBy:=xlColumns

Auch das mir dem Diagrammnamen hat sich damit erledigt...

Vielen Dank nochmal...

Beiträge aus dem Excel-Forum zum Thema "Diagramme mit relativen Bezug erstellen"