Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1624to1628
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
Inhaltsverzeichnis

Code ohne Gruppierung der Kontrollkästchen

Code ohne Gruppierung der Kontrollkästchen
29.05.2018 10:20:56
Dieter(Drummer)
Guten Tag VBA Spezialisten,
anbei eine Musterdatei in der per Klick (rot) 42 Kontrollkästchen, ab Zelle A1 eingefügt werden und das funktioniert.
Musterdatei: https://www.herber.de/bbs/user/121870.xlsm
Alte Teilcodezeile:
With ActiveSheet.CheckBoxes.Add(Cells(Wiederholungen, "A").Left, Cells(Wiederholungen, "B").Top, 24, 10) '10 = Beginn A1
Wie muss der Code geändert werden, das erst ab Zelle A3 die Kästchen eingefügt werden?
Geänderte Teilcodezeile, mein jetziger funktionierender Versuch, aber es werden Gruppen gebildet, die nicht sein sollen:
With ActiveSheet.CheckBoxes.Add(Cells(Wiederholungen, "A").Left, Cells(Wiederholungen, "B").Top, _
24, 71) '71 = Beginn A3
Wie muss er richtige Code sein?
Gruß und danke für evtl. Hilfe,
Dieter(Drummer)

15
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Code ohne Gruppierung der Kontrollkästchen
29.05.2018 10:39:00
Bernd
Hi,
bin kein VBA Profi, aber so gehts bei mir:
For Wiederholungen = 3 To 44
Wenn ich falsch liege, Sorry für meine Unwissenheit :-)
MfG Bernd
AW: Code ohne Gruppierung der Kontrollkästchen
29.05.2018 10:43:02
Bernd
Hi,
und natürlich mit Deinem ersten Code:
"A").Top, 24, 10)
MfG Bernd
AW: Danke Bernd ...
29.05.2018 10:45:36
Dieter(Drummer)
... für deine Unwissenheit ;-). Deine Angabe isr perfekt und funktioniert prima. Ich hatte da wohl ganz falsch gedacht.
Danke und einen erfreulichen Tag.
Gruß, Dieter(Drummer
PS Falls du auch eine Idee hast, wie ich alle Kästchen in der Breite schmaler machen kann, wäre das super.
AW: gern geschehen...
29.05.2018 10:51:57
Bernd
Hi Dieter,
aber ich denke das ich mal hier im Forum gelesen habe, dass die Kästchengröße nicht zu verändern ist.
Aber genaus weiß ich es selbst nicht, nur beim probieren geht es eben auch beim verändern des Wertes nicht.
Auch Dir noch einen erfreulichen Tag!
MfG Bernd
Anzeige
AW: Danke für Hilfe und Info, dann muss ...
29.05.2018 11:13:18
Dieter(Drummer)
... wohl alle Käatchen markieren und die Breite dann ändern.
Gruß, Dieter(Drummer)
AW: Code ohne Gruppierung der Kontrollkästchen
29.05.2018 11:18:06
Daniel
Hi
probier mal diesen Code.
damit werden die Checkboxen genau in die jeweiligen Zellen eingepasst, dh die Größe wird automatisch ermittelt.
Über die Variablen Anzahl und Startzeile kannst du angeben, wieviele Checkboxen es werden sollen und in welcher Zeile es losgeht.

Sub Kontrollkästchen_einfügen()
Dim Anzahl As Long
Dim StartZeile As Long
Dim Zelle As Range
Anzahl = 42
StartZeile = 3
For Each Zelle In Cells(StartZeile, 1).Resize(Anzahl, 1)
With ActiveSheet.CheckBoxes.Add(Zelle.Left, Zelle.Top, Zelle.Width, Zelle.Height)
.LinkedCell = Zelle.Address
.Characters.Text = ""
End With
Next
End Sub

Anzeige
AW: Danke Daniel, das ist eine prima ...
29.05.2018 11:33:20
Dieter(Drummer)
... Lösung, die funktioniert.
So muss ich halt die Breite der Spalte, hier A, vorher festlegen und kann danach nach Bedarf die Spalte ja wieder verbreitern.
Danke dir und einen erfreulichen Tag.
Gruß, Dieter(Drummer)
AW: Danke Daniel, das ist eine prima ...
29.05.2018 11:49:23
Daniel
Hi
wenn das Kontrollkästchen eine andere Breite haben soll als die Spalte, kannst du diese ja auch fix vorgeben oder auch berechnen lassen (z.B. halbe Spaltenbreite):
dh statt Zelle.Width dann eben ein fixwert: 10 oder eine Berechnung: Zelle.Width / 2
aber die Höhe und Position würde ich auf jeden Fall direkt aus der Zelle übernehmen.
Gruß Daniel
Anzeige
AW: Daniel, habe es jetzt so, dennoch ...
29.05.2018 12:14:53
Dieter(Drummer)
... bleibt die Kästchenbreite bei "with = 0,82", trotz Spaltenbreite von 2.
Damit kann ich leben, denn sonst müsste ich die Kätschen ja manuel schmaler machen.
Danke nochmal für deine Hilfe und Lösungen.
Hier meine jetzige Musterdatei: https://www.herber.de/bbs/user/121875.xlsm
Gruß, Dieter(Drummer)
AW: Daniel, habe es jetzt so, dennoch ...
29.05.2018 14:18:10
Daniel
Hi
die Kontrollkästchen haben beim Erstellen eine Mindestbreite.
auch wenn du den .Width-Wert kleiner einstellst, das Kontrollkästchen ist bei mir mindestens 23.25 Pixel breit.
weiterhin musst du beachten, dass das .columnWidth der Spalte ein anderer Wert ist als .Width
.Width ist die äußere Breite (mit Rand) der Spalte oder des Objekts in Bildschirmpixeln
.ColumnsWidth ist die innere Breite(ohne Rand) der Spalte, gemessen in "Anzahl Ziffern, die in Standardschriftgröße in der Zelle angezeigt werden können)
die Breite der Spalte kann man nur über die .columnWidth einstellen.
Das ist historisch bedingt, weil Excel eine Tabellenkalkulation zum Darstellen von Zahlenkolonnen ist, und so konnte man relativ leicht die Spaltenbreite an das erwartete Ergebnis anpassen.
Gruß Daniel
Anzeige
AW: Danke Daniel ...
29.05.2018 14:42:31
Dieter(Drummer)
Hallo Daniel,
... danke für deine ausführlichen Erläuterungen, die immer wieder sehr zu schätzen weiß.
Gruß, Dieter(Drummer)
das Kästchen wird größer? -Beweise es bitte
29.05.2018 15:07:38
robert
AW: das Kästchen wird größer? -Beweise es bitte
29.05.2018 15:37:46
Daniel
was immer du meinst, das Kästchen um das Steuerlement, welches den Bereich markiert, welcher auf den Klick reagiert, wird nicht größer, sondern nie kleiner als 23.25.
kann man auch ganz einfach selber ausprobieren, Ausgabe von eingestellter und tatsächlicher Breite im Direktfenster:
Sub test()
Dim x As Long
For x = 1 To 4
With ActiveSheet.CheckBoxes.Add(1, x * 30, x * 10, 20)
Debug.Print "Breite angegeben:"; x * 10, "Breite ist:"; .Width
End With
Next
End Sub
ich bitte höflichst um Rückantwort, nicht nur um eine dahingerotzte Betreffzeile.
Gruß Daniel
Anzeige
Kästchen ist das wo der Haken drin ist..
29.05.2018 15:59:09
robert
Frage von DD:PS Falls du auch eine Idee hast, wie ich alle Kästchen in der Breite schmaler machen kann, wäre das super.
..siehe Datei von DD..
Wenn Ihr ein anderes Kästchen meint, na dann soll es mir Recht sein.
Und ich schreibe was ich will, wie ich will-auch wenn es Dir nicht passt.
Gruß
robert
AW: Kästchen ist das wo der Haken drin ist..
29.05.2018 16:22:05
Daniel
dieses Kästchen mit dem Haken ist immer gleich groß, das kann man nicht einstellen.
du kannst lediglich die Größer des gesamten Steuerelements, also den Bereich der auf die Maus reagiert, einstellen.

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige