> mam tu v Excelu seznam asi 60000 polozek (radku), u kterych potrebuji doplnit > cislo zakazky na zaklade identifikace podle textu. > Cili ve sloupci A mam cisla od 1 do 60000, ve sloupci B mam textovy popis a do > sloupce C potrebuji napsat ciselny kod toho, o co se jedna. Napr. pokud se > nekde v textu vyskytne retezec "PC", potrebuji do sloupce C dosadit cislo 1313. > Pokud tam bude retezec "MW", pak cislo 1414. > Nemuzu ale pouzit VLOOKUP, protoze ono "PC" se muze vyskytnou v kterekoli casti > toho textoveho popisu. Jako "PC do kancelare 8", "2 PC pro pana Novaka" nebo > "dil pro PC" a podobne. Napadla me funkce T, ale ono je tech kodovych cisel asi > 20 a tady jde jen jedno. U VLOOKUPu by bylo hrozne dat dohromady vzorec kde by > bylo soucasne 20 krat OR.(pokud je to vubec mozne a pokud bych to vubec > zvladla). Napadlo me makro, ktere by vzdy prohledalo textove pole na zadany > retezec a byla by tam nejaka podminka -hledej string "PC", pokud tam je napis > do slouce C ve stejnem radku cislo "1313", pokud nenajdes, hledej string > "monitor",pokud tam je, napis do sloupce C cislo "1414" atd atd. A az najdes > nekterou z tech variant, tak tam dosad to cislo a pokracuj na dalsi radek. A to > cele zastav, az bude radek A prazdny. > Jo a pokud nenajdes ani jeden z retezcu, nech bunku ve slouci C prazdnou a > pokracuj na dalsi A. Myslis neco podobneho? Nepochopil jsem jestli je na neco udaj v sl A.. Nepouzivam ho! Ty kody si musis napsat rucne... Sli by nacist z jineho sesitu.. Do sloupce C das "=dosad_kod(B3)" a do modulu hodis: ____________________________________________________ Function dosad_kod(text) Dim i As Integer Dim kod(2, 1) kod(0, 0) = "PC" kod(0, 1) = 1313 kod(1, 0) = "MW" kod(1, 1) = 1414 kod(2, 0) = "AH" kod(2, 1) = 552 For i = 0 To UBound(kod, 1) If text Like "*" & kod(i, 0) & "*" Then text = kod(i, 1) dosad_kod = text Exit For End If Next i If i = UBound(kod, 1) + 1 Then 'kdyz jsme nic nenasli dosad_kod = "" End If End Function ____________________________________________________ -- cao, Kamil
This archive was generated by hypermail 2.1.2 : 07. 11. 2002, 10:46 CET