Die Adressen zweier Zellen für If-Abfrage verwende

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
MsgBox
Bild

Betrifft: Die Adressen zweier Zellen für If-Abfrage verwende
von: Liesenkötter
Geschrieben am: 08.04.2005 21:27:29
Hallo zusammen,
ich bin jetzt seid längerer Zeit mit dem VBA-Editor zugange und habe in diesem Forum schon sehr viele gepostete Beiträge gefunden welche mir gute Hilfestellung gaben. *Danke dafür* Leider stehe ich jetzt vor folgendem Problem für welches ich einfach keinen Beitrag finden kann:
Wie kann ich Excel dazu veranlassen nur die Adressen zweier Zellen miteinander zu vergleichen ohne dabei die Inhalte der Zellen zu berücksichtigen,um sie später in einer If-Abfrage zu verwenden wie z.B. bei folgendem Beispiel:
'If ActiveCell.Address (kleiner) "$B$20" Then

'i = lonEnde
'End If
Problem: Mein Problem ist das er trotz dem Befehl "ActiveCell.Address" den
Inhalt der beiden Zellen miteinander vergleicht. Angenommen die
aktive Zelle ist "$B$50$ und hat den Inhalt "10" und die angegebene
Zelle "$B$20" hat den Inhalt "50", so würde die Bedingung zutreffen
obwohl die eigentliche Adresse der Activen Zelle nicht kleiner ist.

Wenn ich mir die Adresse der aktiven Zelle mit einer MsgBox ausgeben
lasse gibt er mir auch die Adresse zurück. z.B. "$B$50"

Bin Dankbar für jeden Tipp
Gruß Marco

Bild

Betrifft: AW: Die Adressen zweier Zellen für If-Abfrage verwende
von: ransi
Geschrieben am: 08.04.2005 21:33:16
hallo
bin mir nicht sicher ob ich dich richtig verstanden habe?
if activecell.value<range("b50").value then
.
.
ransi
Bild

Betrifft: oder: if activecell.row<20 then..o.T.?
von: ransi
Geschrieben am: 08.04.2005 21:37:27

Bild

Betrifft: AW: oder: if activecell.row<20 then..o.T.?
von: Liesenkötter
Geschrieben am: 09.04.2005 01:35:20
Hallo ransi,
es geht mir bei dem ganzen nicht um den Inhalt der Zelle (Activecell.value)
sondern um die Adresse dieser Zelle (ActiveCell.Adress z.B. Range("$A$10")
"A1" ist immer kleiner als "A2" und "A20" größer als "A10"
Ich möchte anhand der Adresse einer Zelle ein Abruchkriterium für eine Zählschleife schaffen. Leider funktioniert das nicht da Excel trotz des von mir oben verwendeten Befehls (der laut msgBox auch den richtigen Wert ausgibt z.B. "$A$10") immer noch den Zelleninhalt (value) in der If-Abfrage verwendet.
Anfang = "$A$1"
For i = 1 To lonEnde
On Error GoTo Fehler
Range(Anfang & ":A" & lonEnde).Find(What:=TFSuche.Value, After:=Range(Anfang), _
LookIn:=xlFormulas, LookAt:=xlPart, _
SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False).Activate

If ActiveCell.Address < Anfang Then
' Problem: Größer oder kleiner wird von Excel anhand des Zelleninhalts und nicht anhand der Adresse der Zelle entschieden

i = lonEnde
End If

ActiveCell.EntireRow.Copy Worksheets("Listenfeld").Rows(i + 1 & ":" & i + 1)

Anfang = ActiveCell.Address

Next i
Gruß Marco

Bild

Betrifft: AW: oder: if activecell.row<20 then..o.T.?
von: ransi
Geschrieben am: 09.04.2005 11:17:29
hallo
"A1" ist immer kleiner als "A2" und "A20" größer als "A10"
heisst in deinem verständniss nichts anderes als
die zeilenummer von a1 (Range("a1").row=1) ist kleiner
als
die zeilennummer von a2 (range("a2").row=2)
du musst also so prüfen:
.
.
if activecell.row<range(anfang).row then
.
.
ransi
Bild

Betrifft: AW: oder: if activecell.row<20 then..o.T.?
von: Liesenkötter
Geschrieben am: 09.04.2005 20:36:55
Hallo ransi,
ich hatte deine Antwort anfangs nicht richtig verstanden und darum nicht umsetzen können *arrg*
Habs aber nun endlich kapiert. Stumpf einfach, die Frage war einen Post im Forum garnicht wert (-:
Danke Dir
Gruß
Marco
Bild

Betrifft: gern geschehen
von: ransi
Geschrieben am: 09.04.2005 20:44:13
hallo
wenn man etwas nicht weiss ist es immer einen Post wert.
schlechtestenfalls bekommt man einen hinweis "wonach" man in der hilfe suchen muss.
ransi
 Bild

Beiträge aus den Excel-Beispielen zum Thema "Die Adressen zweier Zellen für If-Abfrage verwende"