Excel: Žodžio radimas skaičių masyve

Categories MS ExcelPosted on

Ms-excel

Turėjau tokią situaciją: devyniuose excel’io sheet’uose yra formos iš kurių pildoma viena ir viename sheet’e yra priedas, kuris pildomas visą laiką, pildant bet kurią forma iš tų devynių.  Reikėjo padaryti taip, kad pildant bet kurią formą, sutampantys duomenys persikeltų ir į priedą. Tai pvz. užsakovo pavadinimas visada turėtų persikelti iš vienos iš tų devynių į priedą.

Bandžiau naudoti funkciją „Consolidate“ arba visuose sheet’uose reikiamas celes sužymėti tarp jų „&“ įrašant. Rezultatą šitie du būdai duoda tą patį. Ir abiem atvejais, jeigu užsakovas nepasirinktas, tai kaip rezultatą gaudavau „0“. Todėl galutiniame rezultate gaudavosi „000000000“, o jeigu kažkuriame viename pasirenki užsakovą, tai prie jo pavadinimo atsirasdavo ir 8 nuliai iš kitų sheet’ų.

Šitą reikalą sugalvojau išspręsti šitaip: pasidariau pagalbinį sheet’ą, kuriame atkėliau kiekvieno „užsakovo“ įvedimo laukelį iš kiekvieno sheet’o. Gavosi stulpelis, kuriame 8 nuliai ir kažkuriame viename tekstas. Tuomet iškilo kitas klausimas, kaip iš to stulpelio „ištraukti“ tekstą.

Pirmiausia ėjau lengviausiu keliu – ieškojau tinkamos formulės. Artimiausia į tai ko man reikia buvo MINA – ji suranda ir išveda mažiausią reikšmę. Tekstą, ši funkcija, laiko „0“, tai kitus nulius paverčiau vienetu ir tikėjausi, kad viskas bus gerai, tačiau funkcija rezultate duoda ne tekstą, o „0“, taigi netiko ir ji. Todėl mečiau paieškas ir pagalvojęs pats parašiau tokią eilutę, kuri davė norimą rezultatą:

=IF(B4>0;B4;IF(B5>0;B5;IF(B6>0;B6;IF(B7>0;B7;IF(B8>0;B8;IF(B9>0;B9;IF(B10>0;B10;IF(B11>0;B11;IF(B12>0;B12;0)))))))))

FiksavimasEsmė čia tokia: pirmiausia patikriname celę B4, jei reikšmė didesnė už 0 ją, išvedame į D3, jei ne, tokiu pat principu tikrinam toliau B5, ir t.t.

Tai vat, kuo toliau tuo įdomiau man darosi dirbti su tuo Exceliu, gera programa.

 

2 comments

  1. Aš irgi ne kartą esu vargęs vargęs, kol galiausiai įsitikindavau, kad nieko nėra geriau kaip kilometrinis IFų rinkinys. Tas visada savo darbą padaro neišsidirbinėdamas.

  2. Senokai dirbau su excel’iu rimtesnius darbus. Bet kažkada kai susidūriau su panašia problema naudojau kažką panašaus į celių pavadinimus. T. y. įvedamoms kintamoms suteikdavau pavadinimus ir paskui, kur tik reikėdavo naudoti tas reikšmes, tiesiog celių vardus vietoje reikšmių įrašydavau. Va čia kažkas panašaus aprašyta. https://support.office.com/en-us/article/Define-and-use-names-in-formulas-4d0f13ac-53b7-422e-afd2-abd7ff379c64#bmquickly_name_a_cell_or_range_of_cells Dar buvau susigalvojęs tokią formą, į kurią susivedi visus norimus duomenis (PVZ pvm tarifą, metus, įmonės kodą, adresą, vardą ir pan.). Nežinau ar tinktų tokiai problemai spręsti šis patarimas, bet jeigu nesi bandęs, išmėgink. Gal ateityje pravers.

Parašykite komentarą

IP Blocking Protection is enabled by IP Address Blocker from LionScripts.com.
%d bloggers like this: