< návrat zpět

MS Excel


Téma: Jak vylepšit funkci SVYHLEDAT pomocí VBA rss

Zaslal/a 30.1.2012 10:59

Ahoj. Potřeboval bych funkci, která funguje podobně jako SVYHLEDAT, ale v případě vícenásobného výskytu hledané hodnoty by vrátila do buňky všechny výskyty oddělené středníkem.

Příklad dat:

X|aa|
Y|bb|
Z|cc|
X|dd|
X|ee|

SVYHLEDAT by mi při zápisu =SVYHLEDAT(A1;A:B;2;0) vrátila toto: aa

Já bych chtěl pomocí VBA a vlastní funkce vrátit do 1 buňky: aa; dd; ee

Uměl by mi někdo něco takového prosím napsat?

Byl bych moc vděčný.
Děkuji.

stop Uzamčeno - nelze přidávat nové příspěvky.

#007109
Jeza.m
Editor maker -> vložit modul -> do modulu vložit:
Public Function SVYHLEDAT2(co As String, oblast As Range, sloupec As Single) As String
For i = 1 To oblast.Rows.Count
If oblast.Cells(i, 1) = co Then If SVYHLEDAT2 <> "" Then SVYHLEDAT2 = SVYHLEDAT2 & "; " & oblast.Cells(i, sloupec) Else SVYHLEDAT2 = oblast.Cells(i, sloupec)
Next
If SVYHLEDAT2 = "" Then SVYHLEDAT2 = "NENALEZENO"
End Function

Do buňky pak napsat vzorec v podobě:
=SVYHLEDAT2("co";oblast;číslo sloupce)
=SVYHLEDAT2("X";A1:B5;2)
přičemž "co" může být reprezentováno hodnotou v nějaké buňce.

M@citovat
#007111
avatar
Jeza.m:

Perfektní! Moc ti děkuju. 1citovat

Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

Formulář Faktura

Formulář Faktura IV

Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.

Helios iNuvio

Používáte podnikový systém Helios iNuvio? Potřebujete pomoci se správou nebo vyvinout SQL proceduru? Více informací naleznete na stránce Helios iNuvio.

On-line nástroje