If Schleife über Makro
27.07.2017 11:05:04
mad
ich benötige mal eure Hilfe bei folgendem Makro:
Sub DiaAktualisieren(strTabelle As String)
Dim lngReihen As Long
Dim objChart As ChartObject
Dim strBereich As String
For Each objChart In ActiveSheet.ChartObjects
Select Case objChart.Name 'In Anführungszeichen steht der Namme des _
Diagramm, strBereich definiert hierzu die y-Werte
Case "FCD"
strBereich = "E8:E32"
Case "FDE"
strBereich = "H8:H32"
Case "Leistung"
strBereich = "G8:G32"
Case "Arbeitspunkt"
strBereich = "J8:J32"
End Select
With objChart.Chart
For lngReihen = .SeriesCollection.Count To 1 Step -1
.SeriesCollection(lngReihen).Delete
Next lngReihen
If strTabelle "Falls leer nötig" Then 'Falls eine Auswahl getroffen ist aber _
kein Diagramm gezeigt werden soll kann hier der Blattname stehen
lngReihen = 4
Do
If Cells(lngReihen, 4) = "" Then Exit Do
strTabelle = Cells(lngReihen, 4).Value
With .SeriesCollection.NewSeries
.XValues = Worksheets(strTabelle).Range("F8:F32")
.Values = Worksheets(strTabelle).Range(strBereich)
If strTabelle = "keine Auswahl" Then
.Name = ""
Else
.Name = Cells(lngReihen, 4)
End If
End With
lngReihen = lngReihen + 1
Loop
End If
End With
Next objChart
End Sub
Und zwar treffe ich in einem Dropdown auf Blatt 1 eine Auswahl.
Die Liste der auszuwählenden Dropdownmöglichkeiten entspricht den Namen der restlichen Tabellenblätter.
Wenn ich die Auswahl getroffen habe wird in einem Diagramm auf Blatt 1 eine Kennlinie eingeblendet. Die Daten werden dann vom Blatt XY bezogen.
Meine Anforderung ist nun folgende:
Wenn auf dem im Dropdwon ausgewählten Blatt in "A1" = XY steht dann soll das oben gepostete Makro ausgeführt werden.
Wenn jedoch in "A1" = ZZ steht, dann soll ein anderes Makro ausgeführt werden.
Ist wohl schwierig zu verstehen ohne Beispieldatei. Leider besteht von meiner Hochschule Datenschutz.
Kann mir hier jemand helfen?
Grüße
mad