Ich möchte mein heute morgen geschildertes Problem nochmal mit einer stark vereinfachten Beispieldatei posten...
Mit dem folgenden Code von Rudi Maintaire, der von mir etwas umgebaut wurde,
klicke ich doppelt in Mappe1.Tabelle1.Spalte A auf einen Eintrag.
In Mappe1.Tabelle2.Spalte A wird der Eintrag gesucht und mit den daneben stehenden
Daten in die Textboxen einer Userform1 der Mappe 1 eingelesen. So werden sie angezeigt, können bearbeitet und in die Tabelle2 zurückgeschrieben werden.
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim varRet As Variant
If Target.Column = 1 And Target "" Then
Cancel = True
varRet = Application.Match(Target, Sheets("Tabelle2").Columns(1), 0)
With UserForm1
.Tag = IIf(IsNumeric(varRet), varRet, Sheets("Tabelle2").Cells(Rows.Count, 1).End(xlUp). _
Row + 1)
.TextBox1 = Target
If IsNumeric(varRet) Then
.TextBox1 = Sheets("Tabelle2").Cells(varRet, 1).Text
.TextBox2 = Sheets("Tabelle2").Cells(varRet, 2).Text
.TextBox3 = Sheets("Tabelle2").Cells(varRet, 3).Text
.TextBox4 = Sheets("Tabelle2").Cells(varRet, 4).Text
.TextBox5 = Sheets("Tabelle2").Cells(varRet, 5).Text
End If
.Show
End With
End If
End Sub
Problem :Wie kann der Code modifiziert werden, so daß ich die Suche in einer zweiten, bisher geschlossenen Arbeitsmappe durchführen kann ?
Also : Bei Klick auf einen Eintrag in Mappe1.Tabelle1.Spalte A soll die Mappe2 geöffnet werden und in Mappe2.Tabelle1.Spalte A der angeklickte Wert gesucht werden.
Anschließend sollen die Daten der Fundzeile in die Textboxen der Userform eingelesen werden. Dort soll man die Daten bearbeiten und in die Mappe2 zurückschreiben können.
Wie immer hat sich meine Frage aus meiner täglichen Büroarbeit ergeben und eine Lösung würde mir wirklich sehr helfen.
Vielen Dank für sachdienliche Hinweise und ein schönes Wochenende.
Gruß
Wolfgang
https://www.herber.de/bbs/user/129857.xlsm