Anzeige
Archiv - Navigation
924to928
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
924to928
924to928
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Angrenzende Zellen überwachen ...

Angrenzende Zellen überwachen ...
19.11.2007 14:50:24
Mike
Hallo zusammen,
habe wiedermal eine Vba-Frage.
Ich habe einen Bereich von A1:Z30. Hier möchte ich überprüfen, ob es Leerzellen nebeneinander gibt, die folgende Kombinationen aufweisen:
S ... Leerzelle ... F
N ... Leerzelle ... S
N ... Leerzelle ... F
Habe es schon mal Left(value,1) und Right(value,1) versucht, bin aber nicht weiter gekommen.
Vielleicht hat ja jemand einen Lösungsansatz.
Danke im Voraus !!!
Mike

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Angrenzende Zellen überwachen ...
19.11.2007 15:48:00
Jens
Hallo Mike
Versuch mal so:

Sub tt()
Dim Zelle As Range
For Each Zelle In Range("B1:Z30")
If Zelle = "" Then
If Zelle.Offset(0, -1) = "S" And Zelle.Offset(0, 1) = "F" Then MsgBox Zelle.Address
If Zelle.Offset(0, -1) = "N" And Zelle.Offset(0, 1) = "S" Then MsgBox Zelle.Address
If Zelle.Offset(0, -1) = "N" And Zelle.Offset(0, 1) = "F" Then MsgBox Zelle.Address
End If
Next Zelle
End Sub


!!! For Each Zelle In Range("B1:Z30") !!!
B1 deshalb, weil es bei einer leeren Zelle in Spalte A sonst zu einem Fehler wegen dem Offset kommt.
(Spalte A, Offset -1 geht nunmal nicht) ;-)
Gruß aus dem Sauerland
Jens

Anzeige
AW: Angrenzende Zellen überwachen ...
19.11.2007 16:07:00
Mike
Hallo Jens,
danke für die schnelle Antwort.
Funzt prima.
Habe das unter worksheet_change mit 'ner call procedure eingebunden. Jetzt wird der gesamte Bereich durchsucht. Alle Fundstellen werden angezeigt und müssen mit OK bestätigt werden. Korrigiere ich dann den Bereich und lösche entsprechend die Zelle, geht das Ganze aber von Vorne los.
Gibt es eine Möglichkeit gleich die entprechende Leer(Zelle) zu markieren, bzw. dort hin zuspringen und mit einer MsgBox "OK, Ändern, Abbrechen" das Ganze zu bearbeiten und ANSCHLIEßEND den Rest des Bereiches weiter zu überprüfen?
Gruß ...
Mike

Anzeige
AW: Angrenzende Zellen überwachen ...
20.11.2007 09:55:10
Jens
Hallo Mike
Vielleicht so?

Sub tt()
Dim Zelle As Range
For Each Zelle In Range("B1:Z30")
If Zelle = "" Then
If Zelle.Offset(0, -1) = "S" And Zelle.Offset(0, 1) = "F" Or Zelle.Offset(0, -1) = "N" And  _
Zelle.Offset(0, 1) = "S" Or Zelle.Offset(0, -1) = "N" And Zelle.Offset(0, 1) = "F" Then
Zelle.Activate
If MsgBox("Soll die Zelle bearbeitet werden?", vbYesNo, "Bearbeitung") = vbNo Then
GoTo WEITER
Else: Exit Sub
End If
End If
End If
WEITER:
Next Zelle
End Sub


Gruß aus dem Sauerland
Jens

AW: Angrenzende Zellen überwachen ...
20.11.2007 13:20:32
Mike
Spitze !!!!!
Ich danke dir ...
Gruß ...
Mike

Anzeige
Gern geschehen :-) oT
20.11.2007 14:02:41
Frank

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige