AW: Feedback
27.07.2010 12:25:27
RainerK
Hallo Rainer,
was ich mit "....Value = 1 ist ja so viel wie "aktiviert"...." meinte:
Mein Code (siehe unten) hatte mir die erforderlichen Meldungen immer gebracht; egal ob ich ein Häkchen gesetzt hatte oder dies wieder rausgenommen wurde.
Sinn machte die Meldung (der Code) jedoch nur, wenn das Häckchen gesetzt wurde.
Ergänzt mit Deinem Vorschlag sieht dieser nun so aus:
Sub wsAuswahl()
Dim myOpt As Shape
Dim sAB As String '[A]rbeits[B]latt
Dim sWB As String '[W]ork[B]ook
sAB = Application.Caller 'Name des Kontrollkästchens + Arbeitsblattes
sWB = "Vergleich " & Tabelle1.Range("H21") & ".xls"
Set myOpt = ActiveSheet.Shapes(sAB)
With myOpt
If .OLEFormat.Object.Value = 1 Then
If Not WorkSheetExists(sAB) Then
If Tabelle1.Range("H21") = "" Then
Select Case MsgBox("Es wurde noch kein Produkt ausgewählt." & Chr(13) & _
"Möchten Sie dies nun tun?", vbQuestion + vbYesNo, "")
Case vbYes
Tabelle1.ComboBox21.Select
Case vbNo
' Dein Code bei 'Nein'
End Select
Else
MsgBox sWB & " nicht vorhanden/integriert." & Chr(13) & _
sAB & " kann daher nicht ausgewählt werden.", vbCritical, "Achtung!"
End If
Else
If Tabelle8.Range("I13") = True Then
Worksheets(sAB).Range("D1") = True
Tabelle8.Range("P13") = Worksheets(sAB).Range("S1")
Else
Worksheets(sAB).Range("D1") = False
Tabelle8.Range("P13") = Worksheets(sAB).Range("S1")
End If
End If
End If
End With
End Sub
Der Code funktioniert nun bei allen gesetzten Kontrollkästchen nur dann, wenn ich ein Häckchen setze.
Gruß RainerK