Thema Datum  Von Nutzer Rating
Antwort
24.10.2022 08:30:24 Detlef
NotSolved
24.10.2022 10:31:35 Mase
NotSolved
24.10.2022 11:15:16 Detlef
NotSolved
24.10.2022 11:33:18 Mase
NotSolved
Rot Excel VBA - ComboBox Value zuweisen - Laufzeitfehler
24.10.2022 12:00:56 Detlef
Solved
24.10.2022 12:04:00 Mase
NotSolved

Ansicht des Beitrags:
Von:
Detlef
Datum:
24.10.2022 12:00:56
Views:
291
Rating: Antwort:
 Nein
Thema:
Excel VBA - ComboBox Value zuweisen - Laufzeitfehler

Hey Mase,

Vielen Dank für den Denkanstoss..

Habe es auf die schnelle folgendermaßen gelöst (aktuell noch ohne Fehlerbehandlung).

Ich habe eine Function getListIndex() erstellt:

Die packt die .List-Eigenschaft einer ComboBox in ein Array, durchsucht das Array und gibt die Position (also den ListIndex) des Treffers zurück:


Option Explicit

Private Sub UserForm_Initialize()
    Dim varArray(2, 1)  As Variant

    Me.ComboBox1.ColumnCount = 2
    Me.ComboBox1.BoundColumn = 1
    Me.ComboBox1.TextColumn = 2
    Me.ComboBox1.ColumnWidths = "0;20"
    
    varArray(0, 0) = 10
    varArray(1, 0) = 20
    varArray(2, 0) = 30
    varArray(0, 1) = "Apfel"
    varArray(1, 1) = "Birne"
    varArray(2, 1) = "Zitrone"
    
    Me.ComboBox1.List = varArray
    Me.ComboBox1.ListIndex = getListIndex(ComboBox1, 10)   '<- Hier kann ein beliebiger Value übergeben werden, zurück kommt hier der ListIndex
End Sub

Private Function getListIndex(cmb As ComboBox, varValue As Variant) As Variant
    Dim varArray As Variant
    Dim i        As Long
    varArray = cmb.List
    
    For i = LBound(varArray) To UBound(varArray)
        If varArray(i, 0) = varValue Then
            getListIndex = i
            Exit For
        End If
    Next
End Function

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
24.10.2022 08:30:24 Detlef
NotSolved
24.10.2022 10:31:35 Mase
NotSolved
24.10.2022 11:15:16 Detlef
NotSolved
24.10.2022 11:33:18 Mase
NotSolved
Rot Excel VBA - ComboBox Value zuweisen - Laufzeitfehler
24.10.2022 12:00:56 Detlef
Solved
24.10.2022 12:04:00 Mase
NotSolved