Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
716to720
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
716to720
716to720
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
CheckBoxen via VBA erzeugen
12.01.2006 14:35:01
Simone
Hallo,
hoffe jemand kann mir helfen.
Und zwar erzeuge ich per Makro ein paar Checkboxen. Die ich dann auch noch automatisch auf true setzt. Jetzt möchte ich allerdings, denen auch noch einen Namen mit vortlaufender Nummer geben. Habs versucht aber nicht geschafft. Hier mal mein Code:
lfdnr = 1
For lngIndex = 5 To lngLastRow
If Cells(lngIndex, 6) "" Then
Set objOLE = ActiveSheet.OLEObjects.Add(ClassType:="Forms.CheckBox.1", _
Left:=Cells(lngIndex, 2).Left, Top:=Cells(lngIndex, 2).Top, _
Width:=15, Height:=10.5)
objOLE.Object.Value = True
'Namen mit fortlaufender Nummer (klappt aber nicht!)
'objOLE.Object.Name = "Box" & lfdnr
Set objOLE = Nothing
lfdnr = lfdnr + 1
End If
Next
Wäre wirklich sehr denkbar für Hilfe!

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

Betreff
Datum
Anwender
Anzeige
AW: CheckBoxen via VBA erzeugen
12.01.2006 18:11:43
Heiko
Hallo Simone,
z.B. so:
'Name so
objole.Name = "Box" & lfdnr
' Caption so
objole.Object.Caption = "Box_Name" & lfdnr
Gruß Heiko
PS: Rückmeldung wäre nett
AW: CheckBoxen via VBA erzeugen
ransi
Hallo simone
du vergibst den namen zu spät.
So gehts:


Public Sub test()
    Dim objOle As Object
    Dim lfnr As Long
    Dim lngIndex As Long
    Dim lnglastrow As Long
lfdnr = 1
lnglastrow = 20 'zum testen
For lngIndex = 5 To lnglastrow
    If Cells(lngIndex, 6) <> "" Then
        ActiveSheet.OLEObjects.Add(ClassType:="Forms.CheckBox.1", _
        Left:=Cells(lngIndex, 2).Left, Top:=Cells(lngIndex, 2).Top, _
        Width:=15, Height:=10.5).Name = "Box" & lfdnr
        OLEObjects("Box" & lfdnr).Object.Value = True
        lfdnr = lfdnr + 1
        Set objOle = Nothing
    End If
Next
End Sub


ransi
Anzeige
AW: CheckBoxen via VBA erzeugen
13.01.2006 08:08:57
Simone
Danke Ransi! So funktionierts.
Noch eine Frage: Meine ChekBoxen haben jetzt ja jeweils den Namen "Box" + laufender Nummer. Kann ich jetzt auch mit z.B. einer Forschleife durch die einzelnen Checkboxen laufen und prüfen welche angeklickt sind? Habs mal versucht aber der geht immer in das if rein, obwohl nicht alle angeklickt sind! Ich versteh das nicht!
For i = 1 To 10
If Box & i = True Then MsgBox (i & ". Box ist angeklickt!")
Next
If OLEObjects("Box" & i).Object
ransi
Hallo simone
Da musst du dich wieder auf das Object beziehen.


Public Sub t()
Dim i As Integer
For i = 1 To 10
    If OLEObjects("Box" & i).Object Then MsgBox "Box" & i & " ist angeclickt"
Next
End Sub


ransi
Anzeige

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige