Thema Datum  Von Nutzer Rating
Antwort
Rot UserForm Werte aus geschlossene Tabelle laden
16.02.2018 21:26:38 Alba
NotSolved
16.02.2018 22:18:36 Alba
NotSolved
16.02.2018 22:40:27 Gast44562
NotSolved
17.02.2018 00:01:22 Gast83092
NotSolved
17.02.2018 12:10:55 Storax
NotSolved

Ansicht des Beitrags:
Von:
Alba
Datum:
16.02.2018 21:26:38
Views:
1052
Rating: Antwort:
  Ja
Thema:
UserForm Werte aus geschlossene Tabelle laden

Hallo zusammen
Ich versuche per suche in einer TextBox Werte aus einer geschlossenen Tabelle zu laden.
Gleichzeitigt sollen aus der Zeile die den gefundenen Wert hat, Werte aus anderen Spalten andere TextBoxen füllen.
Bei mir wäre es so:
TextBox_4 = Hier soll der gesuchte Wert in Spalte B der geschlossenen Tabelle gesucht und eingefügt werden.
TextBox_3 = Hier soll der Wert aus Spalte A eingefügt werden.
TextBox_5 = Hier soll der Wert aus Spalte D eingefügt werden. (wenn möglich nur die ersten 8 Zahlen)
Prüfobjekt (das ist eine TextBox) = Hier soll der Wert aus Spalte E eingefügt werden.
Noch zur Anmerkung die Zellen sind als Text formatierte Zellen

Habe folgenden Code gefunden:

Private Sub CommandButton1_Click()
Dim strPfad$, strTabelle$, sSuchbereich$, sAusgabe$
Dim strSuchWert$

If TextBox1 <> "" Then
    strSuchWert = TextBox1
    
    If IsNumeric(strSuchWert) Then
     strSuchWert = Replace(strSuchWert, ",", ".")
    Else
     strSuchWert = Chr(34) & strSuchWert & Chr(34)
    End If
    
    
    'Datei Pfad
    strPfad = IIf(Right$(ThisWorkbook.Path, 1) = "\", ThisWorkbook.Path, ThisWorkbook.Path & "\" _
 _
)
    
    'Dateipfad und Dateiname ' davor und Dateiname in [...]
    strPfad = "'" & strPfad & "[Test.xls]"
    
    'Tabellename am ende mit '!
    strTabelle = "Tabelle1" & "'!"
    
    'Ausgabebereich
    sAusgabe = Range("A1:B65536").Address(ReferenceStyle:=xlR1C1)
    
    'Suchbereich
    sSuchbereich = Range("F1:F65536").Address(ReferenceStyle:=xlR1C1)
    
    On Error Resume Next
    'Wert für Textbox2
    TextBox2 = ExecuteExcel4Macro( _
    "INDEX(" & strPfad & strTabelle & sAusgabe & ",MATCH(" & strSuchWert & "," & strPfad &  _
strTabelle & sSuchbereich & ",0),1)" _
    )
    If Err.Number <> 0 Then TextBox2 = ""
    Err.Clear
    
    'Wert für Textbox3
    TextBox3 = ExecuteExcel4Macro( _
    "INDEX(" & strPfad & strTabelle & sAusgabe & ",MATCH(" & strSuchWert & "," & strPfad &  _
strTabelle & sSuchbereich & ",0),2)" _
    )
    If Err.Number <> 0 Then TextBox3 = ""
    On Error GoTo 0
Else
    TextBox2 = "": TextBox3 = ""
End If
End Sub

Und ihn so für mich Umgestellt (leider ohne Erfolg)


Private Sub CommandButton1_Click()
Dim strPfad$, strTabelle$, sSuchbereich$, sAusgabe$
Dim strSuchWert$

If TextBox_4 <> "" Then
    strSuchWert = TextBox_4
    
    If IsNumeric(strSuchWert) Then
     strSuchWert = Replace(strSuchWert, ",", ".")
    Else
     strSuchWert = Chr(34) & strSuchWert & Chr(34)
    End If
    
    
    'Datei Pfad
    strPfad = "P:\KF_MB_FERTIGUNG\Prüfliste\Importdaten"
    
    'Dateipfad und Dateiname ' davor und Dateiname in [...]
    strPfad = "P:\KF_MB_FERTIGUNG\Prüfliste\Importdaten\Auftragsbestand.xlsx" & strPfad & "[ _
Auftragsbestand.xls]"
    
    'Tabellename am ende mit '!
    strTabelle = "output" & "'!"
    
    'Ausgabebereich
    sAusgabe = Range("A1:E65536").Address(ReferenceStyle:=xlR1C1)
    
    'Suchbereich
    sSuchbereich = Range("B1:B65536").Address(ReferenceStyle:=xlR1C1)
    
    On Error Resume Next
    'Wert für Textbox2
    TextBox_3 = ExecuteExcel4Macro( _
    "INDEX(" & strPfad & strTabelle & sAusgabe & ",MATCH(" & strSuchWert & "," & strPfad &  _
strTabelle & sSuchbereich & ",0),1)" _
    )
    If Err.Number <> 0 Then TextBox_3 = ""
    Err.Clear
    
   TextBox_5 = ExecuteExcel4Macro( _
    "INDEX(" & strPfad & strTabelle & sAusgabe & ",MATCH(" & strSuchWert & "," & strPfad &  _
strTabelle & sSuchbereich & ",0),4)" _
    )
    If Err.Number <> 0 Then TextBox_5 = ""
    Err.Clear
    
    'Wert für Textbox3
    Prüfobjekt = ExecuteExcel4Macro( _
    "INDEX(" & strPfad & strTabelle & sAusgabe & ",MATCH(" & strSuchWert & "," & strPfad &  _
strTabelle & sSuchbereich & ",0),5)" _
    )
    If Err.Number <> 0 Then Prüfobjekt = ""
    On Error GoTo 0
Else
    TextBox_3 = "": TextBox_5 = "": Prüfobjekt = "":
End If
End Sub


Es kommt keine fehlermeldung aber es wird auch nix gesucht, ausgefüllt.
Hoffe mir kann einer weiterhelfen und sagen was ich falsch mache.

LG Alba


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
Rot UserForm Werte aus geschlossene Tabelle laden
16.02.2018 21:26:38 Alba
NotSolved
16.02.2018 22:18:36 Alba
NotSolved
16.02.2018 22:40:27 Gast44562
NotSolved
17.02.2018 00:01:22 Gast83092
NotSolved
17.02.2018 12:10:55 Storax
NotSolved