Herbers Excel-Forum - das Archiv
bedingte Zellsuche
Betrifft: bedingte Zellsuche
von: helge
Geschrieben am: 13.11.2003 22:14:46
Hallo,
mit
Cells.Find(What:="T", After:=[A1], LookIn:=xlFormulas, LookAt:= _
xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Activate
suche ich in meiner Tabelle nach einer Zelle mit nur T als Inhalt.
Problem nur wenn ich kein T in meinem Tabellenblatt habe gibt mir das makro eine Unterbrechung ( weil es nix finden kann )zurueck.
Nun moechte ich vorher eine wenn klausel oder if klausel formulieren um dies zu verhinder, also er soll nur Cells.Find... ausfuehren wenn auch wirklich eine Zelle mit nur T als Inhalt vorhanden ist.
Kann mir jemand helfen wie ich das mit vba vorher sicherstellen kann
danke helge
Betrifft: AW: bedingte Zellsuche
von: GerdW
Geschrieben am: 13.11.2003 22:20:44
Wie soll der Code feststellen, ob ein T vorhanden ist, wenn er nicht
danach suchen darf?
Am einfachsten ein On Error resume next davor.
Gerd
Betrifft: AW: bedingte Zellsuche
von: Charlie
Geschrieben am: 13.11.2003 22:23:33
Hallo Helge,
eine andere Möglichkeit (abgesehen von "On Error Resume Next") könnte wie folgt aussehen:
Sub Test()
Dim varFind As Variant
With ActiveSheet
Set varFind = .Cells.Find(What:="T", After:=[A1], LookIn:=xlFormulas, LookAt:= _
xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False)
'Wenn "T" nicht gefunden wird, passiert nichts,
If varFind Is Nothing Then
'sonst wird die Zelle ausgewählt.
Else: varFind.Activate
End If
End With
End Sub
Viel Erfolg,
Charlie
Betrifft: AW: bedingte Zellsuche
von: helge
Geschrieben am: 13.11.2003 23:01:27
danke Gerd das war was ich brauchte. ich wusste nicht wie man die unterbrechung eines makros verhindern kann. jetzt weiss ich s :-)
und auch an Charlie herzlichen dank, deins ist eine elegante alternative
mfg helge