Hallo,
erst einmal danke für die Antwort(en). Wie bereits oben beschrieben habe ich mich bereits durch Foren durchgelesen, konnte so etwas leider nicht finden. Wenn ihr da einen passenden Thread auf die Schnelle parat habt, schickt ihn mir doch gern. Für konstruktive Hilfe bin ich stets offen.
Selbstredend suche ich nicht nach einer Fertiglösung für mein Problem!
Ich habe an dem oben geposteten Code weitergearbeitet, da er nach der ersten Zeile, in der er die 58 gefunden hat, die Suche beendet.
1) Zum einen soll er das gesamte Dokument nach der 58 durchsuchen
2) Zum anderen soll der entsprechende Bereich kopiert und in Tabelle 2 eingefügt werden.
Leider bin ich nicht so erfahren im Umgang mit VBA, für mich ist das alles nicht so leicht nachvollziehbar wie bspw. mit Python.
Option Explicit
Sub Test()
Dim rngCell As Excel.Range
Dim ws As Worksheet, wsZiel As Worksheet
Dim iSpalte As Integer
Set wsZiel = Worksheets("Tabelle2")
Set ws = Worksheets("Tabelle1")
Set rngCell = Worksheets("Tabelle1").UsedRange.Find( _
What:=58, _
LookIn:=xlValues, _
LookAt:=xlWhole, _
SearchOrder:=XlSearchOrder.xlByRows, _
MatchCase:=False)
With ThisWorkbook.Worksheets("Tabelle1")
For iSpalte = 1 To 32
If Not rngCell Is Nothing Then
'die Zelle in der der Suchbegriff gefunden wurde
Debug.Print "rngCell : "; rngCell.Address.Copy Destination:=ThisWorkbook.Worksheets("Tabelle2").Range("A3")
'Zelle eins links davon
Debug.Print "O(0, -1) : "; rngCell.Offset(0, -1).Address.Copy Destination:= _
ThisWorkbook.Worksheets("Tabelle2").Range("A2")
'Zelle zwei links davon
Debug.Print "O(0, -2) : "; rngCell.Offset(0, -2).Address.Copy Destination:= _
ThisWorkbook.Worksheets("Tabelle2").Range("A1")
'Zelle eins rechts davon
Debug.Print "O(0, 1) : "; rngCell.Offset(0, 1).Address.Copy Destination:= _
ThisWorkbook.Worksheets("Tabelle2").Range("A4")
End If
Exit For
End With
End Sub
|