ComboBox-Objekt (Access)
Dieses Objekt entspricht einem Kombinationsfeld-Steuerelement. Das Kombinationsfeld-Steuerelement kombiniert die Features eines Textfelds und eines Listenfelds. Verwenden Sie ein Kombinationsfeld, wenn Sie die Möglichkeit haben möchten, einen Wert einzuben oder einen Wert aus einer vordefinierten Liste auszuwählen.
Control | Tool |
---|---|
In der Formularansicht zeigt Microsoft Access die Liste erst an, wenn Sie auf den Pfeil des Kombinationsfelds klicken.
Wenn die Steuerelementassistenten aktiviert sind, bevor Sie das Kombinationsfeld auswählen, können Sie ein Kombinationsfeld mit einem Assistenten erstellen. Um die Steuerelementassistenten zu aktivieren oder deaktivieren, klicken Sie auf das Tool Steuerelementassistenten in der Toolbox.
Die Einstellung der Eigenschaft LimitToList bestimmt, ob Sie Werte eingeben können, die nicht in der Liste vorhanden sind.
Die Liste kann ein- oder mehrspaltig sein, und die Spalten können mit oder ohne Überschriften angezeigt werden.
Das folgende Beispiel zeigt, wie Sie mehrere Kombinationsfeld-Steuerelemente verwenden, um Kriterien für eine Abfrage zur Verfügung zu stellen.
Private Sub cmdSearch_Click()
Dim db As Database
Dim qd As QueryDef
Dim vWhere As Variant
Set db = CurrentDb()
On Error Resume Next
db.QueryDefs.Delete "Query1"
On Error GoTo 0
vWhere = Null
vWhere = vWhere & " AND [PymtTypeID]=" & Me.cboPaymentTypes
vWhere = vWhere & " AND [RefundTypeID]=" & Me.cboRefundType
vWhere = vWhere & " AND [RefundCDMID]=" & Me.cboRefundCDM
vWhere = vWhere & " AND [RefundOptionID]=" & Me.cboRefundOption
vWhere = vWhere & " AND [RefundCodeID]=" & Me.cboRefundCode
If Nz(vWhere, "") = "" Then
MsgBox "There are no search criteria selected." & vbCrLf & vbCrLf & _
"Search Cancelled.", vbInformation, "Search Canceled."
Else
Set qd = db.CreateQueryDef("Query1", "SELECT * FROM tblRefundData WHERE " & _
Mid(vWhere, 6))
db.Close
Set db = Nothing
DoCmd.OpenQuery "Query1", acViewNormal, acReadOnly
End If
End Sub
Im folgenden Beispiel wird gezeigt, wie die Eigenschaft RowSource eines Kombinationsfelds festgelegt wird, wenn ein Formular geladen wird. Wenn das Formular angezeigt wird, werden die im Feld Abteilungen gespeicherten Elemente des Kombinationsfelds tblDepartment im Kombinationsfeld cboDept angezeigt.
Private Sub Form_Load()
Me.Caption = "Today is " & Format$(Date, "dddd mmm-d-yyyy")
Me.RecordSource = "tblDepartments"
DoCmd.Maximize
txtDept.ControlSource = "Department"
cmdClose.Caption = "&Close"
cboDept.RowSourceType = "Table/Query"
cboDept.RowSource = "SELECT Department FROM tblDepartments"
End Sub
Das folgende Beispiel zeigt, wie Sie ein Kombinationsfeld erstellen, das an eine Spalte gebunden ist, während eine andere angezeigt wird. Das Festlegen der ColumnCount-Eigenschaft auf „2“ gibt an, dass das cboDept-Kombinationsfeld die ersten beiden Spalten der Datenquelle anzeigt, die in der RowSource-Eigenschaft angegeben wird. Das Festlegen der BoundColumn-Eigenschaft auf „1“ gibt an, dass der in der ersten Spalte gespeicherte Wert zurückgegeben wird, wenn Sie den Wert des Kombinationsfelds prüfen.
Die ColumnWidths-Eigenschaft gibt die Breite der zwei Spalten an. Durch Festlegen der Breite der ersten Spalte auf 0in. wird die erste Spalte nicht im Kombinationsfeld angezeigt.
Private Sub cboDept_Enter()
With cboDept
.RowSource = "SELECT * FROM tblDepartments ORDER BY Department"
.ColumnCount = 2
.BoundColumn = 1
.ColumnWidths = "0in.;1in."
End With
End Sub
Das folgende Beispiel zeigt, wie Sie einem gebundenen Kombinationsfeld ein Element hinzufügen.
Private Sub cboMainCategory_NotInList(NewData As String, Response As Integer)
On Error GoTo Error_Handler
Dim intAnswer As Integer
intAnswer = MsgBox("""" & NewData & """ is not an approved category. " & vbcrlf _
& "Do you want to add it now?", vbYesNo + vbQuestion, "Invalid Category")
Select Case intAnswer
Case vbYes
DoCmd.SetWarnings False
DoCmd.RunSQL "INSERT INTO tlkpCategoryNotInList (Category) " & _
"Select """ & NewData & """;"
DoCmd.SetWarnings True
Response = acDataErrAdded
Case vbNo
MsgBox "Please select an item from the list.", _
vbExclamation + vbOKOnly, "Invalid Entry"
Response = acDataErrContinue
End Select
Exit_Procedure:
DoCmd.SetWarnings True
Exit Sub
Error_Handler:
MsgBox Err.Number & ", " & Err.Description
Resume Exit_Procedure
Resume
End Sub
- AfterUpdate
- BeforeUpdate
- Change
- Click
- DblClick
- Dirty
- Enter
- Exit
- GotFocus
- KeyDown
- KeyPress
- KeyUp
- LostFocus
- MouseDown
- MouseMove
- MouseUp
- NotInList
- Undo
- AddColon
- AfterUpdate
- AllowAutoCorrect
- AllowValueListEdits
- Application
- AutoExpand
- AutoLabel
- BackColor
- BackShade
- BackStyle
- BackThemeColorIndex
- BackTint
- BeforeUpdate
- BorderColor
- BorderShade
- BorderStyle
- BorderThemeColorIndex
- BorderTint
- BorderWidth
- BottomMargin
- BottomPadding
- BoundColumn
- CanGrow
- CanShrink
- Column
- ColumnCount
- ColumnHeads
- ColumnHidden
- ColumnOrder
- ColumnWidth
- ColumnWidths
- Controls
- ControlSource
- ControlTipText
- ControlType
- DecimalPlaces
- DefaultValue
- DisplayAsHyperlink
- DisplayWhen
- Enabled
- EventProcPrefix
- FontBold
- FontItalic
- FontName
- FontSize
- FontUnderline
- FontWeight
- ForeColor
- ForeShade
- ForeThemeColorIndex
- ForeTint
- Format
- FormatConditions
- GridlineColor
- GridlineShade
- GridlineStyleBottom
- GridlineStyleLeft
- GridlineStyleRight
- GridlineStyleTop
- GridlineThemeColorIndex
- GridlineTint
- GridlineWidthBottom
- GridlineWidthLeft
- GridlineWidthRight
- GridlineWidthTop
- Height
- HelpContextId
- HideDuplicates
- HorizontalAnchor
- Hyperlink
- IMEHold
- IMEMode
- IMESentenceMode
- InheritValueList
- InputMask
- InSelection
- IsHyperlink
- IsVisible
- ItemData
- ItemsSelected
- KeyboardLanguage
- LabelAlign
- LabelX
- LabelY
- Layout
- LayoutID
- Left
- LeftMargin
- LeftPadding
- LimitToList
- ListCount
- ListIndex
- ListItemsEditForm
- ListRows
- ListWidth
- Locked
- Name
- NumeralShapes
- OldBorderStyle
- OldValue
- OnChange
- OnClick
- OnDblClick
- OnDirty
- OnEnter
- OnExit
- OnGotFocus
- OnKeyDown
- OnKeyPress
- OnKeyUp
- OnLostFocus
- OnMouseDown
- OnMouseMove
- OnMouseUp
- OnNotInList
- OnUndo
- Parent
- Properties
- ReadingOrder
- Recordset
- RightMargin
- RightPadding
- RowSource
- RowSourceType
- ScrollBarAlign
- Section
- Selected
- SelLength
- SelStart
- SelText
- SeparatorCharacters
- ShortcutMenuBar
- ShowOnlyRowSourceValues
- SmartTags
- SpecialEffect
- StatusBarText
- TabIndex
- TabStop
- Tag
- Text
- TextAlign
- ThemeFontIndex
- Top
- TopMargin
- TopPadding
- ValidationRule
- ValidationText
- Wert
- VerticalAnchor
- Visible
- Width
Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.