per UDF von u_
11.04.2007 14:47:55
u_
Hallo Lukas,
dafür hat u_ hier ´mal eine UDF gepostet.
Wechsel in das VBA-Projekt Deiner Datei durch die Tastenkombi Alt+F11, füge ein neues Modul ein und kopiere den folgenden Code in den rechten Teil des Bildschirms:
Function SVERWEIS2(strKriterium As String, rngBereich As Range, iSuch As Integer, iErg As _
Integer, Optional strTrenner As String) As String
'strKriterium=Suchkriterium
'rngBereich=Bereich in dem gesucht wird
'iSuch=Spalte in rngBereich, in der strKriterium gesucht wird
'iErg=Spalte in rngBereich, aus der das Ergebnis geliefert wird
'strTrenner= optionales Trennzeichen
'sverweis2("x";G1:H100;2;1;"-") liefert alle Werte aus G, die in H ein x haben
'Somit auch "sverweis() nach links" möglich
'Original UDF von u_ am 19.01.2006 in einem Thread von ransi
Dim arrTmp
Dim i As Long
arrTmp = rngBereich
If strTrenner = "" Then strTrenner = ","
For i = 1 To UBound(arrTmp)
If arrTmp(i, iSuch) = strKriterium Then SVERWEIS2 = SVERWEIS2 & arrTmp(i, iErg) & _
strTrenner
Next
SVERWEIS2 = Left(SVERWEIS2, Len(SVERWEIS2) - 1)
End Function
In Deiner Zelle, in der bisher die Funktion sverweis() zum Einsatz kam, kannst Du jetzt die Funktion sverweis2() benutzen. Im Ergebnis werden die gefundenen Daten per Komma getrennt.
Klappt´s?
Gruß Heiko