bin neu hier im Forum und hab erst vor ein paar Tagen angefangen mich mit VBA zu beschäftigen - nun stehe ich vor folgendem Problem (hoffe das es kein allzu dummes ist^^):
Ich will den Namen der Tabellenreiter ändern, dabei existieren 2 Mgl.
1) der Name dafür steht bereits in Zelle A1
2) es steht eine Nr. in Zelle B1 diese muss jetzt mit der selben Nr. aus einem anderen Excel-Sheet (Spale A) abgeglichen werden und die Bezeichnung (Spalte B) für diese entnommen werden
Mein Problem ist das ich den Verweis oder die Verwendung des 2. Excel-Sheets nicht hinbekomme (das Sheet liegt auch in einem anderen Pfad sofern das relevant sein sollte)
Mein Bisheriger Ansatz ist Folgender:
Sub test()
Dim wks As Worksheet
Dim Such As Range
Dim Ziel As Range
Dim x As Variant
Set Such = Worksheets("Tabelle2").Range("A:A")
Set Ziel = Worksheets("Tabelle2").Range("B:B")
For Each wks In Worksheets
If wks.Range("A1") "" Then
x = wks.Range("A1")
Else
With Application.WorksheetFunction
x = .Index(Ziel, .Match(wks.Range("B1"), Such, 0), 1)
End With
End If
wks.Name = x
Next
End Sub
Also sofern es alles in einer Excel wäre klappt das derzeit so (evtl. nicht die eleganteste Lösung aber es geht^^)
Die Probleme liegen ja jetzt meines Erachtens im Suchbereich "Such" und Zielbereich "Ziel" da diese ja eigentlich in einem anderen Dokument liegen
Hoffe ich habe das Problem ausreichend geschildert und das ihr mir weiterhelfen könnt :)
Und ich würde mich freuen wenn ich jetzt nicht einfach wie man das in manch einem Forum sieht den fertigen Code bekomme sondern auch ein wenig das wie es funktioniert geschildert bekomme - will es ja lernen
Gruß Matthias