Willkommen

Pivottabelle

Spezialfilter

Formeln

Zellformate

Bedingte Formate

Gültigkeit

Programmierung

UDF - Funktionen

Tipps & Tricks

Webabfrage

Fehlersuche

Farbindex

Shortcuts

Limitationen

Downloads

Links

Kontakt

Disclaimer

Impressum

Sverweis mit integrierter Matrix erstellen
 
 
Sollen aus Werten einer Spalte Gruppen / Cluster gebildet werden, so geht dies einfach mit dem Sverweis. Aber nicht immer ist die ausgelagerte Matrix gewünscht, welche nicht selten auf einem separaten ausgeblendeten Tabellenblatt steht. Die Such- und Ergebniswerte können auch direkt in der Formel integriert werden.
 
 
Sverweis
 ABCDEF
1Suchwert:6,3  ZahlwertAusgabe
2Ausgabe Sverweis mit externer Matrix:Stufe2  0Stufe1
3Ausgabe Sverweis mit integrierte Matrix:Stufe2  5Stufe2
4    10Stufe3
5    15Stufe4
6    20Stufe5
7    25Stufe6
8    30Stufe7
9    40Stufe8
10    50Stufe9
11    100Stufe10
Formeln der Tabelle
B2 : =SVERWEIS(B1;E2:F11;2;1)
B3 : =SVERWEIS($B$1;{0."Stufe1";5."Stufe2";10."Stufe3";15."Stufe4";20."Stufe5";25."Stufe6";30."Stufe7";40."Stufe8";50."Stufe9";100."Stufe10"};2)
 
Diagramm - Grafik - Excel Tabellen einfach im Web darstellen    Excel Jeanie HTML  3.0    Download  
 
 
Um die Formel in Zelle B3 bequem zu erzeugen, hilft der nachfolgende Code.
Code für ein allgemeines Modul:
 
Public Sub Create_Sverweis()
'########################################################################################
'Code erzeugt in der aktiven Zelle eine Sverweisformel mit integrierter Matrix.
'Autor: Jürgen Hennekes
'Erste Inputbox erwartet die Zelle mit dem Suchkriterium
'Zweite Inputbox erwartet die Zellen der Suchspalte
'Dritte Inputbox erwartet die Zellen der Ergebnisspalte
'########################################################################################
On Error Resume Next
Dim objDic As Object
Dim vntKey As Variant
Dim rngCrit As Range
Dim rngCol1 As Range
Dim rngCol2 As Range
Dim intI As Integer
Dim strFormula As String
 
Set objDic = CreateObject("Scripting.Dictionary")
Set rngCrit = Application.InputBox("Bitte die Zelle mit dem Suchkriterium auswählen", "Suchkriterium", , , , , , 8)
Set rngCol1 = Application.InputBox("Bitte Zellen in der Suchspalte auswählen", "Spalte1", , , , , , 8)
Set rngCol2 = Application.InputBox("Bitte Zellen in der Ergebnisspalte auswählen", "Spalte2", , , , , , 8)
If rngCrit Is Nothing Or rngCol1 Is Nothing Or rngCol2 Is Nothing Then Exit Sub
On Error GoTo 0
 
For intI = 1 To rngCol1.Cells.Count
    If IsNumeric(rngCol2.Cells(intI, 1).Value) Then
        objDic(rngCol1.Cells(intI, 1).Value) = rngCol2.Cells(intI, 1).Value
            Else
        objDic(rngCol1.Cells(intI, 1).Value) = """" & rngCol2.Cells(intI, 1).Value & """"
    End If
Next
 
For Each vntKey In objDic.keys
   strFormula = strFormula & vntKey & "." & objDic.Item(vntKey) & ";"
Next
 
strFormula = "=SVERWEIS(" & rngCrit.Address & ";{" & Left(strFormula, Len(strFormula) - 1) & "};2)"
ActiveCell.FormulaLocal = strFormula
 
Set rngCrit = Nothing
Set rngCol1 = Nothing
Set rngCol2 = Nothing
Set objDic = Nothing
End Sub