Zeilenweise Verknüpfen zweier MS Excel2003

Hallo, ich habe XP SP3 und MS Excel 2003. Ich habe eine Mappe mit Kontoauszügen der Bank und eine Mappe mit der Einnahmen-, Überschussrechnung.

Beide Mappen haben eine Spalte, in der über die Buchungsnummer ein gemeinsamer Bezug hergestellt werden - n u r: Während die EINNAHMEN-, ÜBERSCHUSSRECHNUNG ohne Leerzeilen zwischendrin aufeinanderfolgende Buchungsnummern hat, hat die Mappe BANKAUSZÜGE eben solche Leerzeilen z.B. 11,12,13,14 … in der einen und 11, , ,12, , ,13, , ,14 … in der anderen. Ich möchte jetzt mit einem Klick auf die Buchungsnummer, dass es sofort die andere Mappe öffnet und zu der betreffenden Zeile mit eben derselben Buchungsnummer springt -> HYPERLINK. Statt mit der Hand Hyperlinks zu erstellen, würde ich gerne dies mit einem Makro oder eine Formel machen. Geht das und wenn ja wie? Ich bin gespannt auf Eure Antworten. Herzlichst Johannes

Ich
möchte jetzt mit einem Klick auf die Buchungsnummer, dass es
sofort die andere Mappe öffnet und zu der betreffenden Zeile
mit eben derselben Buchungsnummer springt -> HYPERLINK. Statt
mit der Hand Hyperlinks zu erstellen, würde ich gerne dies mit
einem Makro oder eine Formel machen. Geht das und wenn ja wie?

Hallo Johannes,

unten im Blatt Rechtsklick auf den Blattnamen, dann „Code anzeigen“ auswählen.
Dort den Code reinkopieren.
Die 1 im Code bei Columns steht für Spalte A, 2 wäre dann B usw.
Ich habe dir die Codezeilen markiert durch ein nachgestelltes '* wo du ggfs. etwas anpassen mußt.
Frag nach wenn du nicht klarkommst.

Private Sub Worksheet\_SelectionChange(ByVal Target As Range)
Dim wkb As Workbook, Offen As Boolean
If Target.Cells.Count 1 Then Exit Sub
If Target.Columns 1 Then Exit Sub '\*
For Each wkb In Workbooks
 If wkb.Name = "Mappe2.xls" Then '\*
 Offen = True
 Exit For
 End If
Next wkb
If Not Offen Then Workbooks.Open "C:\Test\Mappe2.xls" '\*
With Workbooks("Mappe2.xls").Worksheets("Tabelle1") '\*
 If Application.CountIf(.Columns(1), Target.Value) \> 0 Then '\*
 .Range("A" & Application.Match(Target.Value, .Columns(1), 0)).Select '\*
 Else
 MsgBox "Buchungsnummer nicht gefunden"
 End If
End With
End Sub

Gruß
Reinhard