Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema Userform
BildScreenshot zu Userform Userform-Seite mit Beispielarbeitsmappe aufrufen

Userformabfrage zwei Bedingungen

Betrifft: Userformabfrage zwei Bedingungen von: Philipp
Geschrieben am: 21.08.2020 13:58:37

Hallo,


ich habe eine Userform, die sich mit werten aus mehreren Tabellen befüllt sobald in eine Nummer eingegeben wird.

Zum Beispiel gebe ich die Objektnummer 1001 ein, die wird in den verschiedenen Tabellen gesucht und die Daten aus den Zeilen werden in die Userform übernommen. jetzt möchte ich aber gerne aus mehreren Tabellen eine machen. Heißt in der Tabelle würde dann 3 mal unter einander die 1001 stehen, da ich 3 unterschiedliche Verträge habe. Es soll also zuerst nach der 1001 und dann nach der Vertragsart gesucht werden. Mein Problem ist aber, das immer nur die erste Zeile in dem die 1001 vorkommt, gefunden wird,

Es soll aber wenn 1001 gefunden wurde und die zweite Bedingung falsch ist, weitersuchen. Solange bis die Zeile gefunden wurde, wo auch die zweite Bedingung erfüllt wird.

hat hier jemand eine Lösung?

Betrifft: AW: Userformabfrage zwei Bedingungen
von: Regina Resch-Jansen
Geschrieben am: 21.08.2020 14:15:25

Hi,
wir wäre es, wenn Du eine Beispieldatei hochlädst? Das baut hier wohl keiner nach...

Gruß Regina

Betrifft: AW: Userformabfrage zwei Bedingungen
von: Philipp
Geschrieben am: 21.08.2020 14:52:08

Hi,

hier ist eine Beispieldatei:

https://www.herber.de/bbs/user/139761.xlsm

Vielen Dank im Voraus.

Betrifft: AW: Userformabfrage zwei Bedingungen
von: Nepumuk
Geschrieben am: 21.08.2020 15:40:14

Hallo Philipp,

teste mal:

Private Sub T_BUKR_Change()
    
    Dim lngSuch As Long
    Dim strFirstAddress As String
    Dim objCell As Range
    
    If IsNumeric(T_Bukr.Text) Then
        
        With Worksheets("Ziel") ' Anpassen !!!
            
            lngSuch = Clng(T_Bukr.Text)
            
            Set objCell = .Columns(1).Find(What:=lngSuch, LookIn:=xlValues, LookAt:=xlWhole)
            If Not objCell Is Nothing Then
                
                strFirstAddress = objCell.Address
                
                Do
                    
                    Select Case objCell.Offset(0, 3).Text
                            
                        Case "TFM"
                            
                            T_TFM_DL.Text = objCell.Offset(0, 1).Text
                            T_TFM_Start.Text = objCell.Offset(0, 2).Text
                            T_TFM_Betrag.Text = objCell.Offset(0, 4).Text
                            
                        Case "UHR"
                            
                            T_UHR_DL.Text = objCell.Offset(0, 1).Text
                            T_UHR_Start.Text = objCell.Offset(0, 2).Text
                            T_UHR_Betrag.Text = objCell.Offset(0, 4).Text
                            
                        Case "Außen"
                            
                            T_Außen_DL.Text = objCell.Offset(0, 1).Text
                            T_Außen_Start.Text = objCell.Offset(0, 2).Text
                            T_Außen_Betrag.Text = objCell.Offset(0, 4).Text
                            
                    End Select
                    Set objCell = .Columns(1).FindNext(After:=objCell)
                    
                Loop Until objCell.Address = strFirstAddress
            Else
                
                T_TFM_DL.Text = vbNullString
                T_TFM_Start.Text = vbNullString
                T_TFM_Betrag.Text = vbNullString
                T_UHR_DL.Text = vbNullString
                T_UHR_Start.Text = vbNullString
                T_UHR_Betrag.Text = vbNullString
                T_Außen_DL.Text = vbNullString
                T_Außen_Start.Text = vbNullString
                T_Außen_Betrag.Text = vbNullString
                
            End If
        End With
    End If
End Sub

Gruß
Nepumuk

Betrifft: AW: Userformabfrage zwei Bedingungen
von: Philipp
Geschrieben am: 25.08.2020 11:36:24

Hi Nepumuk,

Vielen Dank.

Das funktioniert einwandfrei.

Nochmals Vielen Dank.

Gruß Philipp

Beiträge aus dem Excel-Forum zum Thema "Userformabfrage zwei Bedingungen"