Hallo Leute,
in einem Arbeitsblatt habe ich einen benannten Datenbereich.
Stellt euch also z.B. ein Preisliste vor. Spalte A enthält die Namen eines Produktes und Spalte B den dazugehörigen Stückpreis
In einem anderen Arbeitsblatt habe ich ich ein DropDownmenü.
Es ist mir gelungen, dieses mit den Produktnamen zu füllen und das ausgewählte Produkt in einer weiteren Zelle abzulegen.
Jetzt möchte ich auch den Stückpreis ebenfalls neben dem Produkt ausweisen.
Wie geht das (Acc2003, VBA wäre nett)
:)
Interessant zu wissen wäre, WIE Du per Dropdownmenue das Produkt in die Zelle bringst. Ich vermute, Du hast da schon mit VBA rumgebastelt (was nicht zwingend nötig wäre). Ein wenig Code wäre dann nützlich. Man könnte ihn einfach ergänzen.
(Ich nehme an, Du meinst Excel 2003 und nicht Acc2003?)
Die Alternative "SVERWEIS" kommt nicht in Frage?
Ja, ich meinte Excel 2003 * ;)
Und ja, ich will das mit VBA machen, wegen der Flexibilität :)
Ohne Code ist es natürlich nur ins Blaue geraten:
Ich gehe im Beispiel davon aus, dass Deine Datenbasis auf Tabelle2 in den Spalten A und B steht. Als Suchwert müsstest Du dann den Inhalt Deines Dropdowns mitgeben
Option Explicit
'
Function SecondValue(ByVal myValue As Variant, _
ByRef myMatrix As Range, _
ByVal myIndex As Integer) As Variant
Dim temp As Variant
temp = Application.VLookup(myValue, myMatrix, myIndex, False)
If Not IsError(temp) Then
SecondValue = temp
Else
SecondValue = "Nicht vorhanden"
End If
End Function
'
Sub losgehts()
Dim Suchwert As Variant
Suchwert = "Test" 'Hier den Wert aus dem Dropdown hinein
ActiveCell.Offset(0, 1).Value = SecondValue(Suchwert, Tabelle2.Range("A:B"), 2)
End Sub
:) Sehr gut, genau das ist es wohl, wonach ich suchte.
Sobald ich es getestet habe, melde ich mich wieder.
Erstmal vielen Dank ;)
Hallo,
hier meine Lösung
Private Sub ComboBox1_Click()
Dim zx As Integer, MyValue As Variant
Worksheets("Basisdaten").Activate
zx = Me.ComboBox1.ListIndex
Worksheets("Basisdaten").Cells(zx + 12, 6).Select
MyValue = Worksheets("Basisdaten").Cells(zx + 12, 6).Value
Worksheets("Rechner").Activate
Range("Gegenstand1").Activate
ActiveCell.Offset(0, 5).Value = MyValue
End Sub