

Tabulka vyhledávání
Ahoj te, můžete mě, prosím pomoci s makrem manželka by potřebovala tabulku kde bude zapisovat údaje klientů, protože jich má hodně tak aby to vyhledávalo bohužel si dál si nevím rady.
zkouším to jak se dá, ale nejde mě to. Tak jsem si řekl, že napíši sem i když manželka moc nevěří, že by stým někdo pomohl ale já jo snad se někdo najde v dnešní době a pomůže.
Chtěl bych Vás požádat o pomoc mám Excel a makro na vyhledávání posílám přílohu
Za 1. Vyhledává to jen do K6 a nejde vyhledávat v buňkách L6 až P6
Za 2. Vyhledává to se sešitu Data pouze do 10 v poli zadám 11 a už to nevyhledá potřeboval bych to, aby to
vyhledávalo aspoň do 10000 nebo neomezeně.
Za 3. Pokud v buňce počet fotek není hodnota je možné, aby to nepsalo nic ani tu nulu.
Za 4. Je možné to napsat tak, aby to vyhledalo podle ID i podle Jména a příjmení. Př. zadám: Ka a ono to vyhledá.
Tak Vám moc Děkujeme,
Lukáš Macek
Můžete prosím poslat tak jak to má byt v příloze.
Zkouším to jak napsal MM... ale nejde mě to.
Díky moc pokud něco můžu zato zaplatit nějakou malou částku.
Co zkousis. OMG.
Cele makro:
Skopiruj a vloz si namiesto toho co mas.
A teraz napises ze chces pre stlpce K - P to same co pre pocet fotek, s tou 0. Kukaj na to jak som to urobil, a skus to sam(a), jak sa to robi vidis.
Děkuji, ale nenapíšu to jsem zvládl sám.
Akorát nemůžu přijít nato aby to vyhledávalo podle jména.
Nebo současně buď jména nebo ID.
Můžete poradit.
Musíš si někde nastavit, jestli to má hledat podle ID nebo jména. Např. pro to vyhradíš buňku D3, do níž zapíšeš buď 0 (= hledat podle ID) nebo 1 (= hledat podle jména). Makro pak samozřejmě musíš větvit dle hodnoty této buňky.
Ale pozor na minimálně dva problémy:
1. Když budeš hledat podle jména, nedostaneš tímto postupem do výsledků hodnoty polí, ležící vlevo od sloupce Jméno.
2. Při hledání podle jména to najde jen první záznam, který bude vyhovovat podmínce (to samé platí i pro hledání dle ID? ale tam je to očekávané chování, ID by mělo být jedinečné). Pokud bys chtěl vypsat všechny záznamy, vyhovující zadanému jménu, musel bys makro zcela předělat.
Osobně bych to makro úplně předělal - neřešil bych to zápisem vzorců do buněk, ale v makru bych přímo vyhledal řádek na listu DATA (buď podle ID nebo podle JMÉNA - dle hodnoty signální buňky) a ten pak zkopíroval na vyhledávací list. Tím bych měl vyřešenej první problém. Pak by bylo možné - v závislosti třeba na nastavení další signální buňky - buď hledání ukončit nebo v něm pokračovat a vracet všechny záznamy, vyhovující podmínce (vyřešen 2. problém).
Obávám se ale, že tyto úpravy jsou zcela nad Tvé možnosti. Pokud bys chtěl více proniknout do tajů Excelu a programování ve VBA, zcela bezkonkurenční jsou tyto stránky: Kurz Excel VBA - on-line a zdarma
Můžu tě poprosit abys to upravil a poslal vzor.
Pokud bys chtěl můžu poslat nějakou částku za to.
Děkuji
Současné makro:
Sub Makro2()
'
' Makro2 Makro
' nahrané Záznamom makra
'
Application.ScreenUpdating = False
Range("B6").Select
ActiveCell.FormulaR1C1 = "=R[-4]C[2]"
Range("C6").Select
ActiveCell.FormulaR1C1 = "=IF(ISBLANK(VLOOKUP(R[-4]C4,Data!R4C2:R10000C16,2 ,0)),"""",VLOOKUP(R[-4]C4,Data!R4C2:R10000C16,2,0) )"
Range("D6").Select
ActiveCell.FormulaR1C1 = "=IF(ISBLANK(VLOOKUP(R[-4]C4,Data!R4C2:R10000C16,3 ,0)),"""",VLOOKUP(R[-4]C4,Data!R4C2:R10000C16,3,0) )"
Range("E6").Select
ActiveCell.FormulaR1C1 = "=IF(ISBLANK(VLOOKUP(R[-4]C4,Data!R4C2:R10000C16,4 ,0)),"""",VLOOKUP(R[-4]C4,Data!R4C2:R10000C16,4,0) )"
Range("F6").Select
ActiveCell.FormulaR1C1 = "=IF(ISBLANK(VLOOKUP(R[-4]C4,Data!R4C2:R10000C16,5 ,0)),"""",VLOOKUP(R[-4]C4,Data!R4C2:R10000C16,5,0) )"
Range("G6").Select
ActiveCell.FormulaR1C1 = "=IF(ISBLANK(VLOOKUP(R[-4]C4,Data!R4C2:R10000C16,6 ,0)),"""",VLOOKUP(R[-4]C4,Data!R4C2:R10000C16,6,0) )"
Range("H6").Select
ActiveCell.FormulaR1C1 = "=IF(ISBLANK(VLOOKUP(R[-4]C4,Data!R4C2:R10000C16,7 ,0)),"""",VLOOKUP(R[-4]C4,Data!R4C2:R10000C16,7,0) )"
Range("I6").Select
ActiveCell.FormulaR1C1 = "=IF(ISBLANK(VLOOKUP(R[-4]C4,Data!R4C2:R10000C16,8 ,0)),"""",VLOOKUP(R[-4]C4,Data!R4C2:R10000C16,8,0) )"
Range("J6").Select
ActiveCell.FormulaR1C1 = "=IF(ISBLANK(VLOOKUP(R[-4]C4,Data!R4C2:R10000C16,9 ,0)),"""",VLOOKUP(R[-4]C4,Data!R4C2:R10000C16,9,0) )"
Range("K6").Select
ActiveCell.FormulaR1C1 = "=IF(ISBLANK(VLOOKUP(R[-4]C4,Data!R4C2:R10000C16,1 0,0)),"""",VLOOKUP(R[-4]C4,Data!R4C2:R10000C16,10, 0))"
Range("L6").Select
ActiveCell.FormulaR1C1 = "=IF(ISBLANK(VLOOKUP(R[-4]C4,Data!R4C2:R10000C16,1 1,0)),"""",VLOOKUP(R[-4]C4,Data!R4C2:R10000C16,11, 0))"
Range("M6").Select
ActiveCell.FormulaR1C1 = "=IF(ISBLANK(VLOOKUP(R[-4]C4,Data!R4C2:R10000C16,1 2,0)),"""",VLOOKUP(R[-4]C4,Data!R4C2:R10000C16,12, 0))"
Range("N6").Select
ActiveCell.FormulaR1C1 = "=IF(ISBLANK(VLOOKUP(R[-4]C4,Data!R4C2:R10000C16,1 3,0)),"""",VLOOKUP(R[-4]C4,Data!R4C2:R10000C16,13, 0))"
Range("O6").Select
ActiveCell.FormulaR1C1 = "=IF(ISBLANK(VLOOKUP(R[-4]C4,Data!R4C2:R10000C16,1 4,0)),"""",VLOOKUP(R[-4]C4,Data!R4C2:R10000C16,14, 0))"
Range("P6").Select
ActiveCell.FormulaR1C1 = "=IF(ISBLANK(VLOOKUP(R[-4]C4,Data!R4C2:R10000C16,1 5,0)),"""",VLOOKUP(R[-4]C4,Data!R4C2:R10000C16,15, 0))"
Range("B6").Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Range("D2:E2").Select
Application.ScreenUpdating = True
End Sub
Jednoduchý nástřel, fungující makro:
Makro vyhledává dle hodnoty v buňce D3:
0 = hledá dle ID
1 = hledá dle jména
Omezení
- Musí být zadáno celé jméno, přesně jako na listu data.
- Vyhledá vždy jen první záznam.
Pokud nic nenajde, nebo najde záznam s 0 fotkami, vymaže řádek s nálezem.
Můžeš to poslav v příloze nefunguje mě to.
Vyhledá to jen ID 1 nebo to prví jméno to další ne.
Pokud není v buňce záznam tak to nevyhledá. Počet fotek 0 už to žádný záznam nenajde nebo pokud datum narození to samé.
A vynulovat vše pokud to nenajde nic.
Tady to máš: www.uschovna.cz
Doplň si do dat u více lidí počet fotek a bude to hledat i další záznamy (podmínka na nenulový počet fotek).
V jaké buňce? Jaký záznam? Musíš být konkrétní.
Tak jsi to snad chtěl, nebo ne?
Co jako má být s datumem? Vůbec s ním v makru nepracuji.
To už dělá.
Ještě jednou když dám do vyhledávacího pole 2 vyhledá to, ale pokud zadám 3 a větší nenajde to nic.
Ve trojce je ID 3, Jméno Lenka a Rodné číslo 72468521 nic to nevyhledá ani podle ID ano podle Jména.
Posílám vzor
Ještě jednou:
Když zadáš číslo 3, makro zjistí, že položka č.3 má v datech nevyplněný počet fotek a jedním z Tvých požadavků bylo:
Ujasni si, co vlastně chceš.
Byl to jen příklad Počet fotek pokud je 0 tak má byt prázdná buňka ale pokud je prázdná buňka i OP nebo pohlaví ...... má byt na místo 0 prázdná buňka.
Tak jsem to myslel. Podle tvé opravy to funguje. OK
A když to jméno napíšu malým písmem nevyhledá to musí se to psát velkým písmem.
Dalo by seto upravit tak abych nemusel klikat na to Vyhledat!
Díky moc
No tvl, to chceš upravovat donekonečna?
Člověk musí mít instinkt čmuchacího psa, aby z toho popsanýho zmatku něco kloudnýho pochopil! Co kdybys taky projevil trochu inciativy?
Pro hledání bez rozlišení malá/velká použij funkce UCase() nebo LCase(), převedou řetězec na velká nebo malá písmena.
Pro hledání bez klikání musíš použít událost Worksheet_Change.
Nechápu raději pokud by to šlo tak vzor.
Daj si tie slova do google a najdes vzor. Ja uz mam dost :D Alebo si pockaj na Machr55, mozno on este nema dost :D
P.S: inac cele to bola hovadina v tom ze sa to dalo robit aj bez makier, keby sa tie vzorce (trochu zmenene) z toho vcerajsieho makra napisali rovno do buniek, a bolo by to aj interaktivne bez tlacitka. Vcera som sa hodinu divil naco tam kto cpal to makro a tlacitko a dnes ze ci to nejde bez tlacitka :D
Jak bez maker ukaž???
Chytráku to se radí když to umíš.
Ved som ti napisal jak. Aspon cist umis? Za 5minut mas vsetky informacie ktore potrebujes staci si zadat 1 slovo do googlu. Napr. to vlookup.
P.S. a makra ani excel nerobim a ani som sa s tym "umim" nenarodil, len na rozdiel od podaktorych nie som lenivy si najst za minutu informacie, aby som ti odpovedal co mas robit. Ale uz sa mi nechce, ptz tebe sa tiez nechce a potrebujes to ty a ne ja.