Werte aus einer anderen Tabelle auslesen

22/11/2013 - 09:00 von guido.seemann | Report spam
Guten Morgen Zusammen,

hab mal wieder ein Problem.

In Tabelle „Bestellungen“ stehen in Spalte A sogenannten Bestellnr. welche mehrfach vorkommen, in B bis

H verschiedene Daten.

In Tabelle“Übersicht“ habe ich wieder andere Informationen. Dort steht in Spalte B auch diese Bestellnr. Aber nur 1 mal pro Zeile.

Mein Wunsch wàre folgendes:

Habe die Tabelle“Übersicht“ geöffnet. Wenn ich jetzt auf eine Zeile klicke ( z.b in Zeile 10 )soll das Macro folgendes machen:

in der Zeile wo ich mich befinde ( beispiel Zeile 10) den Wert in Spalte B (B10) in Tabelle“Bestellungen“ mit der Spalte A vergleichen und in einer Userform oder Tabelle anzeigen.
Wie gesagt es können mehrere Zeilen sein. Und auch nur die Werte von Tabelle“Bestellungen“ Spalte BDF ( In beispiel "Bestellungen" B10,D10 und H10)

Wer kann mir hier helfen?

Vielen Dank

Guido
 

Lesen sie die antworten

#1 Claus Busch
22/11/2013 - 10:29 | Warnen spam
Hallo Guido,

Am Fri, 22 Nov 2013 00:00:01 -0800 (PST) schrieb
:

Habe die Tabelle?Übersicht? geöffnet. Wenn ich jetzt auf eine Zeile klicke ( z.b in Zeile 10 )soll das Macro folgendes machen:

in der Zeile wo ich mich befinde ( beispiel Zeile 10) den Wert in Spalte B (B10) in Tabelle?Bestellungen? mit der Spalte A vergleichen und in einer Userform oder Tabelle anzeigen.
Wie gesagt es können mehrere Zeilen sein. Und auch nur die Werte von Tabelle?Bestellungen? Spalte BDF ( In beispiel "Bestellungen" B10,D10 und H10)



Rechtsklick auf Tabellenblattreiter von "Übersicht" => Code anzeigen und
Code einfügen:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim LRow As Range
Dim c As Range
Dim firstaddress As String
Dim myStr As String

With Sheets("Bestellungen")
Set LRow = .Cells(Rows.Count, 1).End(xlUp)
With .Range("A1:A" & LRow.Row)
Set c = .Find(Cells(Target.Row, 2), after:=LRow, _
LookIn:=xlValues, lookat:=xlWhole)
If Not c Is Nothing Then
firstaddress = c.Address
Do
myStr = myStr & c.Offset(, 1) & ", " & _
c.Offset(, 3) & ", " & c.Offset(, 7) & Chr(10)
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> firstaddress
End If
End With
End With
If myStr <> "" Then
MsgBox myStr
End If
End Sub


Mit freundlichen Grüßen
Claus
Win XP Prof SP3 / Vista Ultimate SP2
Office 2003 SP3 /2007 Ultimate SP3

Ähnliche fragen