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

Forumthread: Syntax bei Kontrollkästchen?

Syntax bei Kontrollkästchen?
Jörg-HH
Hallo zusammen
ich habe Code, in dem 13 Formularkontrollkästchen solche Namen haben (von 1 bis 13 durchnumeriert):
If Sum_ChBxTeil_LiefOrt1.Value = False Then
Das wollte ich jetzt vereinfachen, indem ich statt 13 einzelne Code-Schnipsel zu schreiben lieber einen Index einsetze. Dachte mir, daß das dann so heißen müßte
If ActiveSheet.Shapes("Sum_ChBxTeil_LiefOrt" & i).Value = False Then
Da wird aber gemeckert "Objekt unterstützt ...usw nicht". Wie muß denn die richtige Schreibweise sein?
Grüße - Jörg
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
Syntax jetzt abgewandelt...
26.04.2011 20:58:54
Jörg-HH
hmm... hab grad rausgefunden, daß das offenbar keine Formular-Dingsda sind, sondern ActiveX - denn die Dinger reagieren, wenn ich so schreibe:
If ActiveSheet.OLEObjects("Sum_ChBxTeil_LiefOrt" & i).Object.Value = False Then
Nun muß ich meine Frage anders stellen...
Bisher hatte jede einzelne Sub einen Namen in dieser Form (1-13):
Private Sub Sum_ChBxTeil_LiefOrt1_Click()
Jetzt möchte ich eine Sub für alle 13 haben. Was für einen Namen müßte die denn haben?
Jörg
Anzeige
AW: Syntax bei Kontrollkästchen?
26.04.2011 21:25:28
Gerd
Hallo Jörg,
welche Sorte aus der "ActiveX/Steuerelementetoolbox"-Leiste jetzt?
Checkboxen oder Optionbuttons?
Gruß Gerd
Hi Gerd - Checkboxen oT
26.04.2011 21:36:50
Jörg-HH
Lösung gefunden - Problem lag ganz woanders...
26.04.2011 22:06:16
Jörg-HH
...das war wieder mein Lieblingsthema... Variablen übergeben - hab ich nie richtig begriffen, weil ich so einfach in den VBA-Teich geplumpst bin, ohne vorher Schwimmunterricht zu bekommen :-)
Schönen Abend noch...!
Jörg
Anzeige
AW: Checkboxen-kleine Klasse
26.04.2011 22:15:58
Gerd
Hallo Jörg,
das ist nicht mein spezielles Steckenpferd. Teste mal.
'Tabellenblattmodul Tabelle1
Option Explicit
Dim NKL() As Variant
Dim i As Integer
Private Sub Worksheet_Activate()
ReDim NKL(1 To 13)
For i = 1 To 13
Set NKL(i) = New Klasse1
Set NKL(i).CBSums = Me.OLEObjects("Sum_ChBxTeil_LiefOrt1" & i).Object
Next
End Sub
Private Sub Worksheet_Deactivate()
For i = 1 To 13
Set NKL(i).CBSums = Nothing
Set NKL(i) = Nothing
Next
End Sub

'Klassemodul Klasse1
Option Explicit
Public WithEvents CBSums As MSForms.CheckBox
Private Sub CBSums_Click()
If CBSums.Value= True Then MsgBox "Mach was"
End Sub
Gruß Gerd
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

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