range.find-Methode Laufzeitfehler 9
04.06.2024 22:23:59
JozefV
da ich wieder nicht weiter komme, stelle ich eventuell eine "dumme" Frage.
ich möchte in einem Blatt den Begriff "SW_IO_MAPPING" finden und dessen Position (Zeile und Spalte) bestimmen.
Der Begriff befindet sich in dem Blatt. Ich habe schon mehrmals (auch in vorhandenen Arbeitsblatt die Methode .Find erfolgreich benutzt. Leider stehe ich mir auf dem Schlauch und weiß nicht warum es einen Laufzeitfehler'9' "Index außerhalb des gültigen Bereichs" Fehler verursacht.
Dim suchspalte As Long
Dim suchzeileanfang As Long
Dim suchzeileende As Long
Dim rngsuchbereich22 As Range
Dim spalteX As Long
Dim zeileX As Long
Sub tabellefill() 'TabIOCC100
zeileX = Sheets(1).UsedRange.SpecialCells(xlCellTypeLastCell).Row
spalteX = Sheets(1).UsedRange.SpecialCells(xlCellTypeLastCell).Column
Set rngsuchbereich22 = ThisWorkbook.Sheets(1).Range(Cells(1, 1), Cells(zeileX, spalteX))
MsgBox rngsuchbereich22.Address
'suchspalte = ThisWorkbook.Sheets(1).Range(Cells(1, 1), Cells(zeileX, spalteX)).Find("SW_IO_MAPPING", LookIn:=xlValue, lookat:=xlWhole).Column
suchspalte = rngsuchbereich22.Find("SW_IO_MAPPING", LookIn:=xlValue, lookat:=xlWhole).Column
suchzeileanfang = rngsuchbereich.Find(SW_IO_MAPPING, LookIn:=xlValue, lookat:=xlWhole).Row
suchzeileende = Cells(Rows.Count, suchspalte).End(xlUp).Row
' For i = 1 To 8
'
' RngAnfang = Range("TabIOCC100").Find("DI " & i, LookIn:=xlValues, lookat:=xlWhole).Address
' MsgBox RngAnfang
' Next i
End Sub
Der Veriable ZeileX wird 371 zugewiesen
Der Variable SpalteX wird 66 zugewiesen
Der Fehler kommt da wo die Variable suchspalte berechnen werden soll.
Der Begriff "SW_IO_MAPPING" befindet sich in diesem fall in Sheet(1).Range("BN28")
Jetzt die Frage: Warum funktioniert mein Code nicht?
Vielen Dank im Voraus
Anzeige