Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Anzeige
Inhaltsverzeichnis

Sverweis / InputBox

Forumthread: Sverweis / InputBox

Sverweis / InputBox
Hoffmann
Hallo,
ich habe eine Schlüssel-Liste erstellt mit vielen unterschiedlichen Makros.
Wenn ich die Datei starte erscheint bei mir ein Dialogfenster (Formular) mit unterschiedlichen Buttons.
Einer davon ist Suchen.
Mit den Button Suchen möchte ich das ein InputBox-Fenster öffnet und dort entweder eine Zahl (dreistellig) oder einen Namen (Vor-und Zuname) eingeben. Sobald ich das bestätige soll er im hintergrund die Sverweis-Funktion ablaufen.
Das Ergebnis, wenn Nummer in der InputBox eingegeben wurde, soll der Name in einer MsgBox angezeigt werden. Wenn ich den Namen eingebe, soll das Ergebnis (Schlüsselnummer) in einer MsgBox angezeigt werden.
Ergänzung:
Die Schlüsselnummern stehen in der Spalte A ab Zeile 5
Die Namen stehen in der Spalte B ab Zeile 5
Es ist möglich das weitere Personen Schlüssel erhalten, daher sollte dieses Makro dementsprechend angepasst werden
Wie gehe ich am besten vor?
Für weitere Fragen stehe ich gerne zur Verfügung.
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Sverweis / InputBox
03.06.2010 19:44:54
Josef

Hallo ?,
versuch mal diesen Code.

' **********************************************************************
' Modul: Modul3 Typ: Allgemeines Modul
' **********************************************************************

Option Explicit

Sub SearchAndShow()
  Dim objShSrc As Worksheet
  Dim rng As Range, strFirst As String, strSearch As String, strMsg As String
  Dim lngSearchColumn As Long, lngResColumn As Long
  
  strSearch = InputBox("Bitte Suchbegriff eingeben!", "Suche")
  
  If strSearch <> "" Then
    If IsNumeric(strSearch) Then
      lngSearchColumn = 1
      lngResColumn = 2
    Else
      lngSearchColumn = 2
      lngResColumn = 1
    End If
    
    Set objShSrc = Sheets("Tabelle1") 'Tabelle in welcher gesucht wird
    
    Set rng = objShSrc.Columns(lngSearchColumn).Find(What:=strSearch, LookIn:=xlValues, _
      LookAt:=xlWhole, after:=objShSrc.Cells(Rows.Count, lngSearchColumn))
    If Not rng Is Nothing Then
      strFirst = rng.Address
      Do
        strMsg = strMsg & objShSrc.Cells(rng.Row, lngResColumn).Text & vbLf & vbTab
        Set rng = objShSrc.Columns(lngSearchColumn).FindNext(rng)
      Loop While Not rng Is Nothing And strFirst <> rng.Address
    End If
    If Len(strMsg) Then
      MsgBox "Die Suche nach '" & strSearch & "' ergab folgende Treffer" & vbLf & vbLf & vbTab & strMsg, vbInformation, "Suche"
    Else
      MsgBox "Kein Treffer!", vbInformation, "Suche"
    End If
  End If
  
  Set rng = Nothing
  Set objShSrc = Nothing
End Sub

Gruß Sepp

Anzeige
AW: Sverweis / InputBox
04.06.2010 14:28:08
Hoffmann
Hallo Sepp,
danke für die schnelle Antwort. Es funktioniert, aber nur wenn ich den Namen in den InputBox eingebe.
Wenn ich aber eine Zahl (Schlüsselnummer) eingebe dann zeigt er mir an das er keine Eintrag gefunden hat.
Wie kann ich das kombinieren? D.h. in der InputBox soll entweder der Name oder die Zahl eingetragen werden und dementsprechend Name oder Zahl (Eingabe Name = Schlüsselnummer ; Eingabe Schlüsselnummer = Name) als Ergebnis anzeigen.
Anzeige
AW: Sverweis / InputBox
04.06.2010 20:01:58
Josef

Hallo ?,
mein Code orientiert sich an deinen Vorgaben!
Wenn es bei dir nicht funktioniert, dann lade eine entsprechende Tabelle hoch.

Gruß Sepp

Anzeige
AW: Sverweis / InputBox
07.06.2010 09:53:31
Hoffmann
Hallo Sepp,
war mein Fehler, es hat doch funktioniert. Muss die komplette Schlüsselnummer eingeben, dann funktioniert das auch.
Ich entschuldige mich für die unangebrachte Kritik.
Gruß
Björn
Anzeige
Anzeige
Live-Forum - Die aktuellen Beiträge
Datum
Titel
14.05.2026 13:31:09
14.05.2026 09:50:42
13.05.2026 19:14:18