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

Forumthread: Check Box - Linked Cell automatisieren

Check Box - Linked Cell automatisieren
11.02.2005 19:44:38
Silvio
Hallo zusammen,
ich habe folgendes Problem:
Ich möchte ein Formular in Excel erstellen, welches unter anderem Checkboxen verwendet und zwar die aus dem Menü Steuerelemente. Den Zustand WAHR oder FALSCH möchte ich jeweils in die Zelle daneben schreiben, wie dass funktioniert weiss ich, allerdings habe ich pro Spalte ca. 200 Checkboxen zu erstellen, wenn ich die aber mit den Zellen nach unten ziehe wird leider die "LinkedCell" nicht automatisch hochgezählt, sondern behält den bestehenden Wert. Gibt es eine eine Möglichkeit die verlinkten Zellen quasi "hochzuzählen" ohne jede einzelne Checkbox zu editieren? Bei ca. 1.600 Checkboxen ist dass nämlich ganz schön nervtötend.
Fü einen guten Tipp bin ich sehr dankbar.
Viele Grüße
Silvio
Anzeige
AW: Check Box - Linked Cell automatisieren
Piet
Wer zum Geier will oder soll denn 1600 Checkboxen anklicken?
Piet
@Piet: geht doch, wenn auch wenig konstruktiv
Luc
Hi Silvio,
ja, da muss man sich unwillkürlich fragen: Kann das der richtige Weg zur Lösung deines Problems sein? Ich glaube, du hast dich da in was verrannt. Es muss eine elegantere Lösung geben! Geh noch mal das Gesamtprojekt durch. Wenn dann noch ein Problem ist, meld dich wieder. 1600 CheckBoxen sind wirklich widersinnig!
Gruß Luc
Anzeige
AW: Check Box - Linked Cell automatisieren
ransi
hallo silvio
Obwohl ich den sinn von 1600 Checkboxen auch nicht ganz verstehe,
versuch mal dies auf deine bedürfnisse zurechtzuschnitzen.
Option Explicit
Public

Sub verlinken()
Dim co
For Each co In Worksheets("Tabelle1").OLEObjects
If InStr(1, co.Name, "CheckBox") > 0 Then co.LinkedCell = co.TopLeftCell.Offset(0, 1).Address
Next
End Sub

ransi
Anzeige
Wenn du dich dazu entschließen könntest...
Boris
Hi Slivio,
die Checkbox aus der Formularsymbolleiste zu verwenden, dann ist das sehr einfach (im Prinzip so wie von Ransi vorgeschlagen):
Option Explicit

Sub linki()
Dim cb As CheckBox
For Each cb In ActiveSheet.CheckBoxes
cb.LinkedCell = cb.TopLeftCell.Offset(0, 1).Address
Next cb
End Sub

Grüße Boris
Anzeige
AW: Wenn du dich dazu entschließen könntest...
13.02.2005 14:39:31
Silvio
Erst mal Danke für die "gut gemeinten" Tipps, aber selbst wenn es eine Million CBs wären wird es sicher seine Gründe haben und deshalb kann ich auf bloße Killerphrasen (@piet, @udo) dankend verzichten, denn wer die letztendlich anklickt ist nicht das Thema gewesen. Zum Verständnis: Es sind insgesamt 8 Spalten mit maximal 200 CBs, es können aber in einer Spalte vielleicht nur 50 verwendet werden, aber dass ist auch nicht relevant für eine Lösung. Es müssen auch die Steuerelemente verwendet werden, weil sich nur die mit den Zellen verschieben bzw. auch wieder löschen lassen, wenn mal eine Zeile rausfliegt.
Zum Beispiel: Ich möchte Checkboxen genrieren die von $H$5 - $H$50 gehen und dass erzeugte Element jeweils in die Zelle daneben schreiben. D.h. die linked Cells müssen also in diesem Fall von $I$5 - $I$50 gehen. Mir würde ein Macro oder was auch immer genügen, welches diesen Vorgang automatisch erledigt und dass ich mit wenigen Handgriffen auf weitere Spalten anwenden kann. So und wenn ich nur für diese Frage eine entsprechende Antwort bekäme, wäre es einfach toll.
Viele Grüße
Silvio
Anzeige
codes probiert ?
ransi
Hallo silvio
hast du den code von boris oder den von mir mal laufen lassen ?
wenn ja, was ist dabei rausgekommen ?
ransi
AW: Check Box - Linked Cell automatisieren
Udo
1600 Checkboxen machen die Datei schon mal locker um 500 kB größer.
Udo
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Automatisierung von Checkboxen mit Linked Cells in Excel


Schritt-für-Schritt-Anleitung

Um die LinkedCells für mehrere Checkboxen in Excel automatisch zuzuweisen, kannst du ein VBA-Makro verwenden. Hier ist eine einfache Anleitung:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Klicke auf Einfügen > Modul, um ein neues Modul zu erstellen.
  3. Kopiere den folgenden Code in das Modul:
Sub LinkCheckboxes()
    Dim cb As CheckBox
    For Each cb In ActiveSheet.CheckBoxes
        cb.LinkedCell = cb.TopLeftCell.Offset(0, 1).Address
    Next cb
End Sub
  1. Schließe den VBA-Editor und gehe zurück zu deinem Excel-Arbeitsblatt.
  2. Füge deine Checkboxen hinzu (über das Menü "Entwicklertools" > "Einfügen" > "Checkbox").
  3. Führe das Makro LinkCheckboxes aus, um die LinkedCells für alle Checkboxen automatisch zuzuweisen.

Häufige Fehler und Lösungen

  • Fehler: Checkboxen werden nicht verlinkt.
    Lösung: Stelle sicher, dass du die Checkboxen im richtigen Arbeitsblatt hinzugefügt hast und das Makro im entsprechenden Kontext ausführst.

  • Fehler: Mehrere Checkboxen verlinken nicht korrekt.
    Lösung: Überprüfe den Offset im VBA-Code. Möglicherweise musst du die Offset-Werte anpassen, um sicherzustellen, dass die LinkedCells in der richtigen Spalte zugewiesen werden.


Alternative Methoden

Wenn du keine VBA-Lösungen verwenden möchtest, kannst du die LinkedCells manuell zuweisen, indem du die Checkboxen einzeln bearbeitest. Dies ist jedoch zeitaufwendig und nicht empfehlenswert bei einer großen Anzahl von Checkboxen.

Eine andere Möglichkeit besteht darin, die Checkboxen aus der Formular-Symbolleiste zu verwenden. Diese Checkboxen lassen sich einfacher handhaben, da du sie direkt mit Zellen verknüpfen kannst.


Praktische Beispiele

Angenommen, du möchtest Checkboxen in den Zellen H5 bis H50 einfügen und die LinkedCells sollen in die Zellen I5 bis I50 geschrieben werden. Du kannst den VBA-Code wie folgt anpassen:

Sub LinkCustomCheckboxes()
    Dim co As OLEObject
    Dim i As Integer
    For i = 5 To 50
        Set co = Worksheets("Tabelle1").OLEObjects("CheckBox" & i)
        co.LinkedCell = "I" & i
    Next i
End Sub

Dieser Code verlinkt die Checkboxen automatisch mit den entsprechenden Zellen in der Nachbarspalte.


Tipps für Profis

  • Nutze die Möglichkeit, benutzerdefinierte Namen für deine Checkboxen zu verwenden, um die Übersichtlichkeit zu erhöhen.
  • Speichere dein Excel-Dokument im .xlsm-Format, um die Makros zu aktivieren.
  • Teste das Makro immer mit einer kleinen Anzahl von Checkboxen, bevor du es auf eine große Menge anwendest.

FAQ: Häufige Fragen

1. Wie viele Checkboxen kann ich in Excel erstellen?
Es gibt keine spezifische Obergrenze, aber eine große Anzahl von Checkboxen kann die Performance deines Arbeitsblatts beeinträchtigen.

2. Was ist der Vorteil von LinkedCells?
LinkedCells ermöglichen es dir, den Status der Checkboxen direkt in Zellen zu speichern, was die Datenverarbeitung erleichtert.

3. Kann ich die LinkedCell für mehrere Checkboxen gleichzeitig ändern?
Ja, das ist über VBA sehr einfach möglich, wie im oben beschriebenen Beispiel.

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