Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Schleife Endet nicht (.Find Method)
#11
Code:
Sub M_snb()
  With UsedRange.Columns(6)
    .AutoFilter 1, "sz"
    .Offset(1, 1).Resize(.Cells.Count - 1) = "sz"
    .AutoFilter
  End With
End Sub

>1 Mal Suchen = Filtern
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
[-] Folgende(r) 1 Nutzer sagt Danke an snb für diesen Beitrag:
  • derHoepp
Antworten Top
#12
Hallo

Toll, eiskalt von einem aufmerksamen Kollegen erwischt!!

@EarlFred   Danke, du warst sehr aufmerksam, ich baute mir wieder mal in der AW einen Flüchtigkeitsfehler ein.

Entweder vor Adr1 -If Not Find Is Nothing- , oder nach Set Find -If Find is Nothing- mit MsgBox und Exit Sub enden.
Passiert mir selten das ich das bei mir vergesse, aber hier war ich einfach zu eilig im Antwort geben.

mfg Gast 123
Antworten Top
#13
Wink 
Hallo zusammen, 

entschuldigt die lange Reaktionszeit, ich war im Urlaub und somit nicht am Rechner ^^

Folgender Code hat das Problem gelöst:

Code:
    With Worksheets("Arbeitsblatt AV").Range("F2:F500")
        Set c = .Find("SZ", LookIn:=xlValues)
        If Not c Is Nothing Then
            firstAddress = c.Address
            Do
                c.Offset(0, -1) = "SZ"
                Set c = .FindNext(c)
            Loop While Not c Is Nothing And c.Address <> firstAddress
        End If
    End With

Vielen herzlichen Dank euch allen :)
Antworten Top
#14
Hallo Markus,

Dein Vba-Code ist noch verbesserungswürdig:
- laut Vba-Hilfe soll man bei Range.Find folgende Parameter unbedingt angeben:
  LookIn, LookAt, SearchOrder und MatchByte
  siehe: https://learn.microsoft.com/de-de/office...range.find (Bemerkungen)
- Loop While Not c Is Nothing And c.Address <> firstAddress kann man kürzen auf
  Loop While c.Address <> firstAddress
- denn zu diesem Schleifenende kommt man nur, wenn der 1. Find-Befehl erfolgreich war
- also ist das Objekt 'c' dann nicht mehr 'Nothing' und die Abfrage auf 'Nothing' erübrigt sich so

Gruß von Luschi
aus klein-Paris
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste