Discussion:
VBA Suchen und Zeilen- und Spaltennr. übergeben
(zu alt für eine Antwort)
Sven
2006-10-12 09:35:01 UTC
Permalink
Hallo,

ich suche zwei Zahlen in einer Datei mit über 5000 Zeilen. Die Zahlen sind
eindeutig und stehen in Spalte A.
Ich suche die Zahlen mit Cells.Find
Wie bekomme ich die Werte für die Zeilen und Spalten raus. Ich benötige
diese Werte auf jeden Fall einzeln, weil ich später um die gefunden Felder
noch ein paar Sachen ändern muss und diese mit Cells(x,y) anspreche.
Danke schonmal vorab.

Gruß
Sven
k.oppel
2006-10-12 10:06:02 UTC
Permalink
Post by Sven
Hallo,
ich suche zwei Zahlen in einer Datei mit über 5000 Zeilen. Die Zahlen sind
eindeutig und stehen in Spalte A.
Ich suche die Zahlen mit Cells.Find
Wie bekomme ich die Werte für die Zeilen und Spalten raus. Ich benötige
diese Werte auf jeden Fall einzeln, weil ich später um die gefunden Felder
noch ein paar Sachen ändern muss und diese mit Cells(x,y) anspreche.
Danke schonmal vorab.
Gruß
Sven
Hallo Sven,

Was machst du den mit den gefundenen Feldern? Schreibst du diese in eine
"Range"-Variable oder markierst diese?
Wenn ja, dann hast du an der gefundenen Zelle die Möglichkeit die
Eigenschaften .Row und .Column dir seperat ausgeben zu lassen - das sollte
das sein, was du suchst.

Gruß - Kai
Sven
2006-10-12 10:23:03 UTC
Permalink
Post by k.oppel
Post by Sven
Hallo,
ich suche zwei Zahlen in einer Datei mit über 5000 Zeilen. Die Zahlen sind
eindeutig und stehen in Spalte A.
Ich suche die Zahlen mit Cells.Find
Wie bekomme ich die Werte für die Zeilen und Spalten raus. Ich benötige
diese Werte auf jeden Fall einzeln, weil ich später um die gefunden Felder
noch ein paar Sachen ändern muss und diese mit Cells(x,y) anspreche.
Danke schonmal vorab.
Gruß
Sven
Hallo Sven,
Was machst du den mit den gefundenen Feldern? Schreibst du diese in eine
"Range"-Variable oder markierst diese?
Wenn ja, dann hast du an der gefundenen Zelle die Möglichkeit die
Eigenschaften .Row und .Column dir seperat ausgeben zu lassen - das sollte
das sein, was du suchst.
Gruß - Kai
Hi Kai,
danke für deine schnelle Antwort.
Ja die Spalten und Zeilen sollen in eine Range-Variable.
Wie geb ich das denn separat aus?
k.oppel
2006-10-12 11:13:02 UTC
Permalink
Post by Sven
Post by k.oppel
Post by Sven
Hallo,
ich suche zwei Zahlen in einer Datei mit über 5000 Zeilen. Die Zahlen sind
eindeutig und stehen in Spalte A.
Ich suche die Zahlen mit Cells.Find
Wie bekomme ich die Werte für die Zeilen und Spalten raus. Ich benötige
diese Werte auf jeden Fall einzeln, weil ich später um die gefunden Felder
noch ein paar Sachen ändern muss und diese mit Cells(x,y) anspreche.
Danke schonmal vorab.
Gruß
Sven
Hallo Sven,
Was machst du den mit den gefundenen Feldern? Schreibst du diese in eine
"Range"-Variable oder markierst diese?
Wenn ja, dann hast du an der gefundenen Zelle die Möglichkeit die
Eigenschaften .Row und .Column dir seperat ausgeben zu lassen - das sollte
das sein, was du suchst.
Gruß - Kai
Hi Kai,
danke für deine schnelle Antwort.
Ja die Spalten und Zeilen sollen in eine Range-Variable.
Wie geb ich das denn separat aus?
Hallo Sven,

Du kannst in der Excel VBA - Hilfe dir auch das Beispiel zur Find-Methode
dazu anschauen.
Aber das Prinzip ist so, dass du dir deine Variable als Range(-objekt)
deffinierts und dann über Set den Inhalt (Suchergebnis) zuordnest:

Sub Findezelle
Dim spalte, zeile as Long
Dim zellenfund as Range
...
Set zellenfund = Cells.Find(<gesuchte Zahl>, lookin:=xlValues)
spalte = zellenfund.column
zeile = zellenfund.row
...
End Sub

Ich hoffe es hilft dir so weiter.

schöne Grüße - Kai
Sven
2006-10-12 11:42:01 UTC
Permalink
looks good, but works bad...
hab es ziemlich genau so übernommen, wie du es gepostet hast, aber in der
zeile:

zeile = zellenfund.row

meckert er: "objektvariable oder with-blockvariable nicht festgelegt"

hier nochmal so, wie ich es übernommen habe:

Dim zeile As Long
Dim zellenfund As Range

Set zellenfund = Cells.Find(875, LookIn:=xlValues)
zeile = zellenfund.Row
k.oppel
2006-10-12 11:49:01 UTC
Permalink
Hallo Sven,

Ups, ich hatte es jetzt nicht ausgetestet, sonst schau dir mal den letzten
Threat von Melanie in deinem ersten Posting an. Das Beispiel scheint mir
besser zu funktionieren, sie gibt die Zeile und Spalte durch die Debug.Print
- Methode zurück

Gruß - Kai
Post by Sven
looks good, but works bad...
hab es ziemlich genau so übernommen, wie du es gepostet hast, aber in der
zeile = zellenfund.row
meckert er: "objektvariable oder with-blockvariable nicht festgelegt"
Dim zeile As Long
Dim zellenfund As Range
Set zellenfund = Cells.Find(875, LookIn:=xlValues)
zeile = zellenfund.Row
Loading...