Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: x/y- wert eines diagrammpunktes point (i) auslesen

x/y- wert eines diagrammpunktes point (i) auslesen
04.01.2006 15:03:51
axel.meyer
hallo könner,
ich versuche eine möglichkeit zu finden, die informationen eines datenpunktes auszulesen, ohne auf die quelle des graphen zurückzugreifen.
bsp.: wenn ich einen datenpunkt in einem x-y-diagramm langsam hintereinander 2x anklicke, bekomme ich den x,y-wert, die datenreihe und den datenpunkt in einem kontextmenue angezeigt. wie kann ich diese informationen an meine variablen x,y, (dr,dp) übergeben?
gruß aus deutschlands süden,
axel
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: x/y- wert eines diagrammpunktes point (i) ausl
04.01.2006 15:52:22
Josef
Hallo Axel!
Ein Beispiel von K.Rola!
https://www.herber.de/bbs/user/29716.xls
'******************************
'* Gruß Sepp
'*
'* Rückmeldung wäre nett!
'******************************

Anzeige
Genial, kann ich gut gebrauchen! oT
04.01.2006 17:00:33
Herbert
oT
AW: x/y- wert eines diagrammpunktes point (i) ausl
05.01.2006 13:32:40
axel.meyer
hallo sepp,
ich habe mich echt herumgemüht mit dem code, aber ich kriege folgende verknüpfung nicht hin:
objDia.GetChartElement x, y, IDNum, a, b
If IDNum = xlSeries Then
Set sc = objDia.SeriesCollection(a)
arrX = sc.XValues
arrY = sc.Values
Sheets("Daten").Cells(lz, 1) = arrX(b)
Sheets("Daten").Cells(lz, 2) = arrY(b)
End If
hier werden in der ersten zeile wohl die variablen x,y,IDNum,a,b belegt, die aber über die maus-nutzung/punktauswahl festgelegt werden. in meinem fall möchte ich aber auf die werte eines ausgewählten points(b) zurückgreifen, sprich das (b) herausfinden! den rest habe ich glaube ich verstanden, aus dem arrX/Y dann den wert herauszulesen bekomme ich hin. nur: wie bestimme ich die position/nummer (b) des punktes, der gerade aktiviert ist?
danke jedenfalls schon mal für deine bisherige hilfe!
gruß, axel
Anzeige
AW: x/y- wert eines diagrammpunktes point (i) ausl
05.01.2006 17:43:44
Josef
Hallo Axel!
Die Infos sind doch da!
Private Sub objDia_MouseDown(ByVal Button As Long, ByVal Shift As Long, ByVal x As Long, ByVal y As Long)
Dim IDNum As Long, i As Integer, a As Long, b As Long, arrX, arrY
Dim sc As Series, lz As Long
lz = Sheets("Daten").[a65536].End(xlUp).Row + 1
If Button = 1 Then
  objDia.GetChartElement x, y, IDNum, a, b
  If IDNum = xlSeries Then
    Set sc = objDia.SeriesCollection(a)
    arrX = sc.XValues
    arrY = sc.Values
    
    MsgBox "Datenreihe:" & vbTab & sc.Name & vbLf & _
      "Datenpunkt:" & vbTab & b & vbLf & _
      "Wert X:" & vbTab & vbTab & arrX(b) & vbLf & _
      "Wert Y:" & vbTab & vbTab & arrY(b)
    
  End If
End If
End Sub


'******************************
'* Gruß Sepp
'*
'* Rückmeldung wäre nett!
'******************************

Anzeige
;

Forumthreads zu verwandten Themen

Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

x/y-Wert eines Diagrammpunktes in Excel auslesen


Schritt-für-Schritt-Anleitung

Um den x/y-Wert eines Diagrammpunktes in Excel auszulesen, kannst du folgenden VBA-Code verwenden. Dieser Code wird aktiviert, wenn du mit der Maus auf einen Punkt im Diagramm klickst.

  1. Öffne Excel und erstelle ein neues Diagramm.
  2. Drücke ALT + F11, um den VBA-Editor zu öffnen.
  3. Füge ein neues Modul hinzu (Rechtsklick auf „VBAProject“ > Einfügen > Modul).
  4. Kopiere und füge den folgenden Code in das Modul ein:
Private Sub objDia_MouseDown(ByVal Button As Long, ByVal Shift As Long, ByVal x As Long, ByVal y As Long)
    Dim IDNum As Long, i As Integer, a As Long, b As Long
    Dim arrX, arrY
    Dim sc As Series
    Dim lz As Long

    lz = Sheets("Daten").Cells(Rows.Count, 1).End(xlUp).Row + 1

    If Button = 1 Then
        objDia.GetChartElement x, y, IDNum, a, b
        If IDNum = xlSeries Then
            Set sc = objDia.SeriesCollection(a)
            arrX = sc.XValues
            arrY = sc.Values

            Sheets("Daten").Cells(lz, 1) = arrX(b)
            Sheets("Daten").Cells(lz, 2) = arrY(b)
        End If
    End If
End Sub
  1. Schließe den VBA-Editor und gehe zurück zu deinem Excel-Diagramm.
  2. Teste den Code, indem du auf einen Punkt im Diagramm klickst. Die x/y-Werte werden in das Blatt „Daten“ geschrieben.

Häufige Fehler und Lösungen

  • Fehler: „Objekt nicht gefunden“
    Lösung: Stelle sicher, dass du das Diagramm korrekt benannt hast und dass die Bezüge im Code stimmen.

  • Fehler: „Array-Index außerhalb des gültigen Bereichs“
    Lösung: Überprüfe, ob der Punkt, auf den du klickst, tatsächlich im Diagramm vorhanden ist und dass die Datenreihen korrekt definiert sind.


Alternative Methoden

Eine weitere Möglichkeit, Excel-Daten aus Diagrammen auszulesen, besteht darin, die Daten direkt über die Diagramm-Tools in Excel zu exportieren. Hierzu kannst du:

  1. Das Diagramm auswählen.
  2. Mit der rechten Maustaste klicken und „Datenquelle auswählen“ wählen.
  3. Die Datenreihe und die zugehörigen Werte kopieren.

Diese Methode ist besonders nützlich, wenn du die Daten offline benötigst.


Praktische Beispiele

Angenommen, du hast ein x/y-Diagramm mit den folgenden Daten:

X-Werte Y-Werte
1 2
2 3
3 5

Wenn du auf den Punkt (2,3) klickst, wird der Code die Werte 2 und 3 in das „Daten“-Blatt übertragen.


Tipps für Profis

  • Nutze das MsgBox-Fenster im Code, um zusätzlich Informationen wie die Datenreihe oder die Anzahl der Punkte anzuzeigen.
MsgBox "Datenreihe: " & sc.Name & vbLf & "Datenpunkt: " & b & vbLf & "Wert X: " & arrX(b) & vbLf & "Wert Y: " & arrY(b)
  • Experimentiere mit den Diagrammtypen, um zu sehen, welche Darstellung für deine Daten am besten geeignet ist. Das erleichtert das Auslesen der Werte aus dem Diagramm.

FAQ: Häufige Fragen

1. Wie kann ich Excel-Werte aus Diagrammen automatisch aktualisieren?
Du kannst die Worksheet_Change-Ereignisprozedur verwenden, um die Werte in Echtzeit zu aktualisieren, während du Daten in das Arbeitsblatt eingibst.

2. Gibt es eine Möglichkeit, Werte aus Diagrammen online auszulesen?
Ja, du kannst Online-Tools nutzen, die auf Excel-Daten zugreifen, aber dafür sind meist API-Schnittstellen erforderlich, die die Datenübertragung ermöglichen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige