Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1392to1396
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
Inhaltsverzeichnis

VBA Finden-Funktion

VBA Finden-Funktion
18.11.2014 23:16:16
HaWe
Hallo liebe VBA-Spezialisten und Helfer,
habe mal wieder ein VBA-Problem mit der "Find"-Funktion.
In so einer (vereinfachten) Tabelle mit Spalte A und B OHNE Spaltennamen(!!), die über VBA erstellt wird, soll nach einem Eintrag in Spalte "A" gesucht werden (Die Punkte vor 'A' und 'B' sollen nur als Trenner zur Übersicht fungieren, da ich nicht weiss wie man hier vernünftige TABs setzen kann):
...A....B
1 1 tab1
2 1 tab2
3 1 tab3
4 3 xxx1
5 3 xxx2
6 4 yyy5
7 4 zzz1
8 4 kkk9
9 1 mmm1
Das Makro lautet so:
Option Explicit
Dim c As Range
Sub finden_was()
With ActiveSheet.Columns(1)
'Set c = .Find(Cells(i, 1), LookIn:=xlValues)
Set c = .Find(Cells(9, 1), LookIn:=xlValues)
'Eintrag gefunden
If Not c Is Nothing Then
MsgBox "gefundene Tabelle Nr.: " & c
MsgBox "gefunden in Zeile: " & c.Row
Else
MsgBox "nichts gefunden"
End If
End With
End Sub
Es gilt eigentlich die auskommentierte Zeile mit 'Set c, die nur zum Testen durch
die nächste Zeile ersetzt wurde, damit man in '.Find(Cells(9,1), ....' mit dem
Zeilenwert 9 oder ähnlich spielen kann.
Ziel: Es soll die "1" aus Zeile 9, Spalte 1 in der Spalte 1 beginnend mit Zeile 1
gefunden werden und der erste gefundene Eintrag (Zeile) ausgegeben werden, in dem
Fall also "1" für Zeile 1.
Wenn Zeile 9 in Cells(9,1) ausgewählt ist, liefert die Suchfunktion ein falsches
Ergebnis, nämlich "2" und nicht "1". Bei einem anderen Wert, z.B. 8 (Cells(8,1))
wird das richtige Ergebnis, nämlich "6" ausgegeben.
Wie ist die Logik von "Find" und wie muss der Algorithmus geändert werden?
Hoffentlich ist das so verständlich
Vielen Dank für Eure Hilfe
HaWe

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Finden-Funktion
19.11.2014 07:05:24
Hajo_Zi
gebe die letzte Zelle in der Spalte a.
Set C = .Find(Cells(9, 1), Range("A9"), LookIn:=xlValues)

Abspann kurz

AW: VBA Finden-Funktion
19.11.2014 21:02:22
HaWe
Hallo Hajo,
ganz herzlichen Dank für diesen einfachen Supertip!!
Habe ich das in der VBA/Excel-Hilfe überlesen oder gibt solche wichtigen Tips dort nicht? - Zum Glück gibt es ja dieses Forum.
Gruß
HaWe
Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige