Anstelle des Dropdown-Felds eignet sich das Listenfeld am besten zum Hinzufügen von Kontrollkästchen für die Mehrfachauswahl.
Lassen Sie mich erklären, wie dies in Excel geschieht (die meisten Excel-Befehle und -Methoden sind auch auf Google Sheet anwendbar.)
Wie es funktioniert:
- Klicken Sie auf die Registerkarte Entwickler, Einfügen, Listenfeld (von ActiveX-Steuerelement).
- Nachdem Sie das Listenfeld gezeichnet haben, klicken Sie mit der rechten Maustaste darauf.
- Wählen Sie dann Eigenschaften aus dem Menü.
- Finden ListFillRange & einfügen Quelldatenbereich (A155: A164).
- Finden Liststyle - Box, wählen Sie 1-FMLIST style.
- Wählen Sie dann 1 – fmMultiSelectMulti aus dem MultiSelect.
- Wählen Sie dann eine beliebige Zelle (E155) aus, und nennen Sie sie ListBoxOutput.
- Klicken Sie dann auf Einfügen, Formen und zeichnen Sie eine geeignete Form (C155) über dem Listenfeld.
- Klicken Sie dann mit der rechten Maustaste auf die Form, und wählen Sie im Menü die Option Makro zuweisen (Rechteck2_Click) .
Fügen Sie den unten stehenden Code als Modul ein.
Sub Rectangle2_Click() Dim xSelShp As Shape, xSelLst As Variant, I As Integer Set xSelShp = ActiveSheet.Shapes(Application.Caller) Set xLstBox = ActiveSheet.ListBox1 If xLstBox.Visible = False Then xLstBox.Visible = True xSelShp.TextFrame2.TextRange.Characters.Text = "Click After Pickup Options" Else xLstBox.Visible = False xSelShp.TextFrame2.TextRange.Characters.Text = "Click To Select Options" For I = xLstBox.ListCount - 1 To 0 Step -1 If xLstBox.Selected(I) = True Then xSelLst = xLstBox.List(I) & "," & xSelLst End If Next I If xSelLst <> "" Then Range("ListBoxOutput") = Mid(xSelLst, 1, Len(xSelLst) - 1) Else Range("ListBoxOutput") = "" End If End If End Sub
- Klicken Sie auf das Shape, um das Listenfeld zu öffnen, wählen Sie Elemente aus und klicken Sie erneut auf das Shape, um die ausgewählten Elemente in Zelle einzufügen
E155
.
Beachten Sie, dass Sie die Zellverweise für die Liste der Quellelemente, das Listenfeld, die Position der Form und für die Ausgabezelle anpassen.