Case Unterscheidung
17.06.2015 09:50:33
Toni
ich habe ein Problem und würde mich freuen, wenn mir einer bei der Lösung helfen könnte!
Quelltext:
For Each OleObj In Worksheets("Input").OLEObjects
Select Case Right(OleObj.Name, 1)
'Abfrage jeder Checkbox und eventuelle übergabe an ein Makro und übergabe des jeweiligen y-Wertes für Objektnamen mit der Nummer 1-9
Case Is = "1"
If OleObj.Object.Value = True Then
y = 1
Call xyz(y)
End If
Case Is = "2"
If OleObj.Object.Value = True Then
y = 2
Call xyz(y)
End If
Case Is = "3"
If OleObj.Object.Value = True Then
y = 3
Call xyz(y)
End If
Case Is = "4"
If OleObj.Object.Value = True Then
y = 4
Call xyz(y)
End If
usw.
Diese Case Abfrage geht noch bis Case Is = "9". Danach kommt noch eine Case Abfrage von 10-20:
For Each OleObj In Worksheets("Input").OLEObjects
Select Case Right(OleObj.Name, 2)
Case Is = "10"
If OleObj.Object.Value = True Then
y = 10
Call xyz(y)
End If
Case Is = "11"
If OleObj.Object.Value = True Then
y = 11
Call xyz(y)
End If
Case Is = "12"
If OleObj.Object.Value = True Then
y = 12
Call xyz(y)
End If
Case Is = "13"
If OleObj.Object.Value = True Then
y = 13
Call xyz(y)
End If
Case Is = "14"
If OleObj.Object.Value = True Then
y = 14
Call xyz(y)
End If
usw.
Dabei soll geprüft werden, ob eine Checkbox ausgewählt ist und wenn das der Fall ist soll ein Makro aufgerufen werden. Funktioniert soweit auch.
Problem ist jedoch, wenn die Checkbox mit der Nummer 11 angewählt ist, wird auch für die Checkbox mit der Nummer 1 die Aktion durchgeführt, ohne das diese angewählt ist! Das soll so nicht sein.
Hat jemand eine Idee wie man das lösen kann?
Viele Grüße
Toni