Ich richte ein Kombinationsfeld ein, das eine Pivot-Tabelle aktualisieren wird, wenn ausgewählt. Aber ich brauche den Wert, den das Kombinationsfeld einen anderen Wert vom ausgewählten Text zurückgibt.Excel VBA Wert des Kombinationsfelds unterscheidet sich von dem Text
ex. Sie wählen einen Produktnamen in der Dropdown-Box "Cheerios". Aber es hat eine SKU-Nummer von 1234. Ich brauche das Kombinationsfeld, um das 1234 zurückzugeben, und nicht das Wort "Cheerios".
Ist das möglich?
Edit:
Unten ist ein Bild, wo ich meine Liste von bevölkert bin immer. Spalte B wird angezeigt, was in der Dropdown-Liste angezeigt wird. Spalte A ist das, was ich benötige, wenn das Produkt ausgewählt wird.
Edit 2:
Private Sub cmb_SkuSelect_Click()
Dim xlSheetSort As Worksheet
Dim lastRow As Long
Dim skuValue As Integer
Set xlSheetSort = ActiveWorkbook.Worksheets("Sort")
lastRow = xlSheetSort.Range("A1").End(xlDown).Row
With xlSheetSort.Range("B1:B" & lastRow)
Set c = .Find(cmb_SkuSelect.Value, LookIn:=xlValues)
If Not c Is Nothing Then
skuValue = xlSheetSort.Range("A" & c.Row).Value
End If
End With
cmb_SkuSelect.Value = ""
ActiveWorkbook.ActiveSheet.Range("A4").Value = skuValue
updatePivot skuValue
End Sub
updatePivot:
Public Sub updatePivot(ByVal sku As Integer)
Dim xlSheet As Worksheet
Dim xlPTable As PivotTable
Set xlSheet = ActiveWorkbook.Worksheets("Sku Inventory")
For Each xlPTable In xlSheet.PivotTables
With xlPTable
.PivotFields("Sku Number").CurrentPage = sku
End With
Next
End Sub
Was Sie bisher versucht haben? Was genau meinst du mit 1234 zurück? – sourceCode
'Wenn ComboBox.Value =" Cheerios "Dann' myvalue = "1234" usw. usw. – dwirony
Ich habe noch nichts versucht, weil ich nicht weiß, wie ich das anstellen soll. Eine If-Anweisung funktioniert nicht, da ich mehr als 15.000 verschiedene Elemente in der Dropdown-Liste habe. – Caveman42