Find-Methode mit xlWhole

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

Betrifft: Find-Methode mit xlWhole
von: Christian Jäger
Geschrieben am: 09.10.2015 13:07:14

Hallo werte Gemeinde,
folgendes Problem tut sich für mich bei der Benutzung der Find-Methode auf.
Es sollen zunächst die zu findenden Begriffe in ein Array eingelesen werden.
Danach erfolgt nacheinander eine Abfrage der Spaltennummer der einzelnen Begriffe aus dem Array.
In der Zeile 3 befinden sich die abzufragenden Begriffe. Gesucht werden soll in der Zeile 2.

  • 
    Sub FindeSpalte()
    Dim Spalte As Integer
    Dim Formel() As Variant
    Dim x As Long
    Dim y As Long
    ReDim Formel(8)
    For x = 1 To 8
        Formel(x) = Worksheets("Tabelle4").Cells(4, x)
    Next x
    For y = 1 To 8
        Spalte = Worksheets("Tabelle4").Range("A2:V2").Find(what:=Formel(y)).Column
        MsgBox ("Der Meilenstein " & Formel(y) & " ist in der Spalte " & Spalte & " zu finden.")
    Next y
    End Sub

  • Wenn ich hinter den Find-Befehl noch "lookin:=xlwhole" setze, erscheint eine Fehlermeldung(Laufzeitfehler 9. Index außerhalb des gültigen Bereichs)
    Vielen Dank für die Hilfe
    Christian

    Bild

    Betrifft: AW: Find-Methode mit xlWhole
    von: fcs
    Geschrieben am: 09.10.2015 13:16:21
    Hallo Christian,
    der Fehler tritt auf, wenn der SUchbegriff nicht gefunden wird.
    Versuche es mit nachfolgender Variante.
    Gruß
    Franz

    Sub FindeSpalte()
        Dim Spalte As Integer
        Dim Formel() As Variant
        Dim x As Long
        Dim y As Long
        Dim Zelle As Range
        
        ReDim Formel(1 To 8)
        
        For x = 1 To 8
            Formel(x) = Worksheets("Tabelle4").Cells(4, x)
        Next x
        
        For y = 1 To 8
            Set Zelle = Worksheets("Tabelle4").Range("A2:V2").Find(what:=Formel(y), _
                LookIn:=xlValues, lookat:=xlWhole)
            If Zelle Is Nothing Then
                MsgBox ("Der Meilenstein " & Formel(y) & " ist nicht zu finden.")
            
            Else
                Spalte = Zelle.Column
                MsgBox ("Der Meilenstein " & Formel(y) & " ist in der Spalte " _
                        & Spalte & " zu finden.")
            End If
        Next y
    End Sub
    


    Bild

    Betrifft: AW: Find-Methode mit xlWhole
    von: Christian Jäger
    Geschrieben am: 09.10.2015 14:50:27
    Hallo Franz,
    das Problem lag wohl nicht wirklich am Code sondern vielmehr daran, dass die Formatierung (Zeilenumbruch und so komische vorangestellte Hochkomma) der Begriffe unterschiedlich war zu denen in der Suchzeile.
    Aber Dein Hinweis mit dem "nicht finden" hat mich auf die Spur gebracht.
    DANKE!!!!!
    Viele Grüße
    Christian

     Bild

    Beiträge aus den Excel-Beispielen zum Thema "Wortteile kopieren und in andere Tabelle"