Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
280to284
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
280to284
280to284
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Mittels Inputbox Daten auf einem Sheet selektieren

Mittels Inputbox Daten auf einem Sheet selektieren
18.07.2003 21:35:04
RalfH
Hallo zusammen,
ich möchte durch Vorgabe einer Kundennummer in eine Inputbox alle Datensätze für diese Kundennummer selektieren. Leider funktioniert das ganze nicht so wie es soll.
Die KdNr steht in Spalte C, das Makro bleibt in der Zeile:
Selection.AutoFilter Field:=3, Criterial:=KdNr
hängen.
Ich füge mal den Code bei, hoffentlich hat jemand einen Tip
Dim KdNr
KdAuswahl:
On errorlevel GoTo Fehlermeldung
KdNr = InputBox("", "Bitte die Kundennummer eingeben!", "")
If KdNr <> "" Then
Windows("Kopfdaten.XLS").Activate
Sheets("Eingang").Select
Columns("A:F").Select
'
Selection.AutoFilter Field:=3, Criterial:=KdNr

End If
Exit Sub
'
Fehlermeldung:
MsgBox ("Kundennummer bitte prüfen, ggf. korrekt eingeben!")
GoTo KdAuswahl
End Sub
Schon mal besten Dank
Ralf

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Mittels Inputbox Daten auf einem Sheet selektieren
18.07.2003 21:40:14
Hajo_Zi
Hallo Ralf
auf Select usw. kann zu 99% verzichtet werden. Ich geje mal davon aus das de Tabelle aktiv ist

Sub Test()
'   erstellt von Hajo.Ziplies@web.de 12.04.03
Dim Found As Range
Dim LoLetzte As Long
Dim sSearch As String
sSearch = InputBox("Suchbegriff:", , "test")
If sSearch = "" Then Exit Sub
LoLetzte = 65536
If Range("C65536") = "" Then LoLetzte = Range("C65536").End(xlUp).Row
Set Found = Range("C1:C" & LoLetzte).Find(sSearch, Range("C" & LoLetzte), , xlPart, , xlNext)
If Found Is Nothing Then Exit 

Sub  'falls nicht gefunden wird 

Sub verlassen
Range(Found.Address).Select
End Sub

Gruß Hajo
Falls Code vorhanden wurde dieser getestet unter Betriebssystem XP Pro und Excel Version XP SBE.
Bitte kein Mail, Probleme sollen im Forum gelöst werden.
Microsoft MVP für Excel
Das Forum lebt auch von den Rückmeldungen.

Anzeige
AW: Mittels Inputbox Daten auf einem Sheet selektieren
18.07.2003 22:15:08
RalfH
Hallo Hajo,
erst mal danke schön, ich habe deinen Vorschlag gleich mal ausprobiert.
Aber leider ist das nicht was ich brauche, denn es können KdNr'n mehrfach enthalten sein und mit Deinem Code wird nur die erste Zelle mit der KdNr angesprungen, und leider nicht alle Zeilen mit der vorgegebenen Nr gefiltert.
Ich möchte also nur die Datensätze mit der speziellen KdNr angezeigt bekommen (wie bei Daten - Autofilter - Benutzer definiert - entspricht KdNr).
Evtl. hast Du ja einen Tip wie die KdNr als Parameter in den Benutzer definierten Filter bekomme.
Gruß
Ralf

AW: Mittels Inputbox Daten auf einem Sheet selektieren
19.07.2003 08:22:24
Hajo_Zi
Hallo Ralf
es ist mir ein wenig zu aufwendig, mich in Deinen Code einzuarbeiten. Aus meinem Archiv. Mit folgendem Code werden alle Datensätze in einer Userform in einer Listbox dargestellt.

Private Sub UserForm_Initialize()
'   erstellt von Hajo.Ziplies@web.de
Dim Found As Range
Dim FirstAddress As String
Dim Search As String
Dim LoLetzte As Long
Dim LoI As Long
LoLetzte = 65536
If Range("B65536") = "" Then LoLetzte = Range("B65536").End(xlUp).Row
Search = InputBox("Welcher Begriff wird gesucht ?")
If Search = "" Then Exit Sub
Me.ListBox1.ColumnCount = 3
With ActiveSheet.Range("B1:B" & LoLetzte)
'   von Peter Haserodt
Set Found = .Find(Search, ActiveSheet.Range("B" & LoLetzte), , xlPart, , xlNext)
If Found Is Nothing Then Exit Sub  'falls nicht gefunden wird sub verlassen
FirstAddress = Found.Address
Me.ListBox1.AddItem Found.Value                   ' Spalte B
Me.ListBox1.List(LoI, 1) = Found.Offset(0, -1) ' Spalte A
Me.ListBox1.List(LoI, 2) = Found.Offset(0, 1)  ' Spalte C
LoI = LoI + 1
Do
Set Found = .FindNext(Found)
If Found.Address = FirstAddress Then Exit Sub
Me.ListBox1.AddItem Found.Value                   ' Spalte B
Me.ListBox1.List(LoI, 1) = Found.Offset(0, -1) ' Spalte A
Me.ListBox1.List(LoI, 2) = Found.Offset(0, 1)  ' Spalte C
If Found.Row = LoLetzte Then Exit Sub
LoI = LoI + 1
Loop While Not Found Is Nothing
End With
End Sub

Gruß Hajo
Falls Code vorhanden wurde dieser getestet unter Betriebssystem XP Pro und Excel Version XP SBE.
Bitte kein Mail, Probleme sollen im Forum gelöst werden.
Microsoft MVP für Excel
Das Forum lebt auch von den Rückmeldungen.
Hans hat Extra den Button Level eingebaut. Benutzt ihn auch, damit auch entsprechend geantwortet werden kann.

Anzeige

62 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige