Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1788to1792
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
Inhaltsverzeichnis

For...Next beschleunigen

For...Next beschleunigen
20.10.2020 13:22:14
Clara
Hello:)
kann man das hier noch irgendwie beschleunigen, wenn der Fall eintritt, dass der zu suchenden Inhalt in B:B nicht vorhanden ist?
Sub AufzeigenSuche()
Dim rngSearch As Range
For Each rngSearch In ActiveSheet.Columns("B:B").Cells
If Range("C4").Value = "" Then
Range("C4").Select
MsgBox "Bitte Nummer des Anlageguts eingeben oder, falls nicht vorhanden, neue  _
Anlage erstellen.", 64
Exit For
ElseIf rngSearch = Range("C4") Then
rngSearch.Activate
Exit For
End If
Next
End Sub
Bisher läuft es gut, wenn (i) der Inhalt vorhanden ist (bis dato aber auch lediglich ca 100 Zeilen zu durchsuchen, kann aber enorm anwachsen) oder wenn (ii) C4 = "".
LG

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

Betreff
Datum
Anwender
Anzeige
AW: For...Next beschleunigen
20.10.2020 13:37:04
max.kaffl@gmx.de
Hallo Clara,
teste mal:
Public Sub AufzeigenSuche()
    
    Dim rngSearch As Range
    
    If IsEmpty(Range("C4").Value) Then
        Range("C4").Select
        MsgBox "Bitte Nummer des Anlageguts eingeben oder, " & _
            "falls nicht vorhanden, neue Anlage erstellen.", vbInformation
    Else
        Set rngSearch = Columns(2).Find(What:=Range("C4").Value, _
            LookIn:=xlValues, LookAt:=xlWhole, MatchCase:=True)
        If Not rngSearch Is Nothing Then
            rngSearch.Select
            Set rngSearch = Nothing
        Else
            MsgBox Range("C4").Value & " nicht gefunden.", vbExclamation, "Hinweis"
        End If
    End If
End Sub

Gruß
Nepumuk
Anzeige
AW: For...Next beschleunigen
20.10.2020 15:00:16
Clara
Ich weiß zwar nicht, warum das schneller ist bzw. besser funktioniert, aber es tut was es soll.
Danke Nepumuk!
AW: For...Next beschleunigen
20.10.2020 13:39:44
UweD
Hallo
so?

Sub AufzeigenSuche()
Dim Such As String
Such = Range("C4").Value
If Such = "" Then
Range("C4").Select
MsgBox "Bitte Nummer des Anlageguts eingeben oder, falls nicht vorhanden, neue " _
& "Anlage erstellen.", 64
Else
If WorksheetFunction.CountIf(Columns(2), Such) > 0 Then
Columns(2).Find(What:=Such, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext).Activate
Else
MsgBox Such & ": Nicht gefunden"
End If
End If
End Sub
LG UweD
Anzeige
Besten Dank Uwe owT
20.10.2020 14:59:18
Clara
Danke für die Rückmeldung (owT)
20.10.2020 15:42:35
UweD

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige