Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1904to1908
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
Zeilen Zählen (VBA)
24.10.2022 16:02:06
Marc
Hallo zusammen
Ich habe einen Range "ThisWorkbook.Sheets("Liste").Range("A4:A500")". Per Userform "Dropdown" wähle ich nun einen Text aus und möchte nun wissen, in welcher Zeile sich dieser Text befindet. Also A4 wäre 1, A5 wäre 2, A6 wäre 3 usw.
Könnte mir hier jemand helfen, wie ich das per VBA auslesen könnte?
Vielen Dank für die Hilfe
Marc

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeilen Zählen (VBA)
24.10.2022 16:07:46
GerdL
Moin Marc,

MsgBox Application.Match(UserForm1.ComboBox1.Value, Range("A4:A500"), 0)
Gruß Gerd
Makrorekorder ist dein Freund
24.10.2022 16:15:31
Yal
Hallo Marc,
in dem Fall hast Du einen Wert, und du willst sie finden. In Excel würdest Du Strg+f drücken, Wert eingeben, Enter.
Mache dann genau das, aber unter laufende Makrorekorder (MR). Dann hast Du den Code, den Du suchst.
Wenn ich einen Code hier liefern müsste, ich habe keinen parat, und Code, den ich mit wenig Klick fertiggebacken bekomme, merke ich mir nicht, dann würde ich den MR starten.
VG
Yal
AW: Zeilen Zählen (VBA)
24.10.2022 16:49:25
Marc
Vielen Dank für die Rückmeldungen und die Hilfe. Der Application.Match funktioniert leider nicht. Ich erhalte die Fehlermeldung Typen unverträglich.
Ich bin nun nicht sicher, ob ich mich richtig ausgedrückt habe. Ich suche nicht den Wert sondern die Startposition. Sprich, wenn A4 die 1 Position ist, dann suche mit dem Wert über die Combobox die Startposition im Range. Also einfach eine Zahl von 1 - 100 im Range.
Vielen Dank nochmals für die weitere Hilfe.
Beste Grüsse
MArc
Anzeige
ich hätte gern gehabt, ...
24.10.2022 18:26:13
Yal
... dass Du sagst "den Makrorekorder habe ich auch probiert". Aber vielleicht hast Du auch, aber nur unvollständig darüber berichtet.
Der Makrorekorder, den ich gerade eben angestossen habe, um Dir eine qualifizierte Antwort zu geben, liefert:

    Range(Selection, Selection.End(xlDown)).Select
Selection.Find(What:="Aug", After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Activate
(ich habe eine Monatsliste ab A5 aufgebaut und nach "Aug" gesucht)
Also es "aktiviere" die Zelle, wo der Treffer liegt. Mehr nicht. Vielleicht war das der Punkt, wo Du nicht weiterkam. Gut, dass wir (also eig. ich) darüber gesprochen haben.
Man braucht eine Variable vom Typ Range, die durch Find gesetzt wird. Wird nichts gefunden, bleibt diese "Nothing".
Also lange Rede (warum schreibe ich eigentlich 20 mal mehr als den Fragenden?) hier ein Beispielcode:

Sub Test()
Suche "Aug"
End Sub
Sub Suche(GesuchteWert As String)
Dim Z As Range
With Worksheets(1).Range("A5:A18")
Set Z = .Find(What:=GesuchteWert, LookAt:=xlWhole, MatchCase:=False)
If Not Z Is Nothing Then
MsgBox "Gesuchte Wert """ & GesuchteWert & """ wurde in Zelle " & Z.Address & " gefunden." & vbCr _
& "Es Entspricht Zeile " & (Z.Row - .Row + 1) & " vom geprüften Bereich " & .Address
Else
MsgBox "Gesuchte Wert """ & GesuchteWert & """ wurde in " & .Address & " nicht gefunden."
End If
End With
End Sub
Normalerweise, wenn man den Cursor auf dem Schlüsselwort (hier "Find") und F1 Drückt, kommt man an dem Online-Hilfe zum Schlüsselwort. Leider im Fall von Find gibt es zwei und es kommt immer an dem falschen Eintrag. Richtig ist:
https://learn.microsoft.com/en-us/office/vba/api/excel.range.find
Inkl. Beispiel
VG
Yal
Anzeige
AW: ich hätte gern gehabt, ...
25.10.2022 12:16:43
Marc
Hallo Yal
Vielen Dank für die Erklärungen und die Hilfe. Ich bin zwar nicht mehr Anfänger aber auch kein Profi. Ich bin dir daher sehr dankbar um den Code, welcher bestens funktioniert. Ist genau das, was ich gesucht habe und für mich abändern kann.
Vielen Dank und beste Grüsse
Marc
Vielen Dank für die Rückmeldung
25.10.2022 13:41:11
Yal
wichtig ist, dass Du den Übergang zwischen den sehr grob geschnittenen Code aus dem Rekorder und den angepassten, wie hier.
Also: es war nicht zur Strafe, sondern zur Übung.
VG
Yal
AW: Zeilen Zählen (VBA)
24.10.2022 18:32:48
GerdL
Kannst du bitte eine Beispieldatei hochladen, Marc.
Gruß Gerd

302 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige