Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

VBA Suchmaske
#1
Hallo,

ich brauche natürlich wie immer Eure Hilfe. Ich glaube, dass es gar nicht schwer ist, aber ich stehe auf dem Schlauch

Ich habe eine Tabelle erstellt und dafür die VBA programmiert.


Public Sub SuchenKennzeichen1()
Dim rngTreffer As Range
Dim strSuchbegriff As String
strSuchbegriff = InputBox("Bitte Kennzeichen zusammenhängend eingeben z.b. M-AA299", "Datenbank durchsuchen")
Set rngTreffer = ActiveWorkbook.ActiveSheet.Columns(7).Find(strSuchbegriff, LookIn:=xlValues, _
Lookat:= _
xlWhole)
If strSuchbegriff = vbNullString Then Exit Sub
If Not rngTreffer Is Nothing Then
    rngTreffer.Select
Else
    MsgBox "Suchbegriff " & strSuchbegriff & " nicht gefunden."
End If
End Sub

Funktioniert auch tadellos. Nun möchte ich aber, dass die Suche nicht nur in Colums 7 stattfindet sondern auch in Column 8 .... das geht bestimmt über ElseIf, aber ich bekomme es einfach nicht hin..

Vielen Dank im Voraus.
Antworten Top
#2
Hallo,

so:

Code:
Set rngTreffer = ActiveWorkbook.ActiveSheet.Columns("G:H").Find(strSuchbegriff, LookIn:=xlValues, Lookat:=xlWhole)


Gruß Werner
[-] Folgende(r) 1 Nutzer sagt Danke an Werner.M für diesen Beitrag:
  • skoppe
Antworten Top
#3
Moin!
Markiere G:H und drücke beherzt Strg+f
Statt in Deine InputBox trägst Du den Suchbegriff schlicht in den Excel-Dialog ein.
Verrätst Du uns, warum Du eine Standard-Funktionalität in eine VBA-Routine auslagern willst, die absolut nix anderes macht als Dein überflüssiger Code?

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
[-] Folgende(r) 1 Nutzer sagt Danke an RPP63 für diesen Beitrag:
  • elamigo
Antworten Top
#4
Wenn man bei den Nummern bleiben möchte, geht auch
Code:
Set rngTreffer = ActiveWorkbook.ActiveSheet.Columns(7).Resize(, 2).Find(strSuchbegriff, LookIn:=xlValues, Lookat:=xlWhole)


@Ralf: Du kennst doch die Antwort bereits...
Schöne Grüße
Berni
Antworten Top
#5
Herrlich! Besten Dank!
Antworten Top
#6
@Ralf

Ich wollte es gerne idiotensicher machen. Habe hier so ein paar Spezialisten ..... :20:

Besten Dank für die Hilfe
[-] Folgende(r) 1 Nutzer sagt Danke an skoppe für diesen Beitrag:
  • elamigo
Antworten Top
#7
Hmmh …
Zunächst mal würde ich niemanden an meine Datei heranlassen, der nicht die absoluten Grundlagen beherrscht!
Schließlich könnte er ja so ziemlich alles in der Datei unwiederbringlich zerstören.
Und im Ernst:
Der Shortcut Strg+f (f wie find) löst in nahezu allen mir bekannten Programmen eine Suche mittels nicht-modalem Dialog auf.

Willste noch so ein paar allgemeingültige Shortcuts wissen (jeweils Strg+ …)?
p wie print
s wie save
c wie copy
x wie … cut  :21: (eher die symbolische Schere)
v wie … paste  :21: (eher der symbolische Trichter)

Wer also ist der Idiot?
Bevor Du Dich echauffierst:
Die aus dem Griechischen abgeleitete Bedeutung ist eher Privatperson.

In diesem Sinne
Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#8
Ralf,

vielleicht sind nicht alle solche Excel-Experten wie Du und dafür gibt es doch auch dieses Forum oder? Um Fragen stellen zu können, damit diese beantwortet werden.

Also vielen Dank für Deine Erklärung (besonders die ShortCuts, totales Neuland! Dodgy )

Keine Sorge, bin intelligent genug um so einen Post nicht ernst zu nehmen.

In diesem Sinne!
Antworten Top
#9
DU machst den Fehler, den Anwendern die Kompetenz abzusprechen.
Sollte es tatsächlich so sein, dann solltest Du sie schulen.
Schließlich lassen sich Makros relativ problemlos auch von Idioten abschalten.
Dann hilft Dir Deine Intelligenz erst mal nüscht …
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
[-] Folgende(r) 1 Nutzer sagt Danke an RPP63 für diesen Beitrag:
  • skoppe
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste