< návrat zpět

MS Excel


Téma: Excel 2007 - Jak zjistit pozici výsledku vzorce? rss

Zaslal/a 21.7.2013 21:55

Zdravím,

existuje nějaká funkce v Excelu, která zjistí, pozici buňky, která je výsledkem jiné funkce?

Např. pro vyhledání nejmenší hodnoty v neuspořádaném seznamu (který může obsahovat i duplikáty) použiji funkci SMALL. A já potřebuji vědět, na jaké pozici se ta nejmenší hodnota nachází, stačí řádek.

Problém je ten, že jde o neuspořádaný seznam datumů a když je v něm více stejných datumů, které ale nejsou u sebe, tak zbytek nefunguje jak má.

Děkuji
_____________________________________________________

Pozn. omlouvám se za vložení tématu do Obecné diskuse.

Zaslat odpověď >

Strana:  1 2   další »
icon #014411
eLCHa
Příloha by nejlépe vysvětlila toto:
když je v něm více stejných datumů, které ale nejsou u sebe, tak zbytek nefunguje jak má.

jinak fce POZVYHLEDATcitovat
#014413
avatar
Tak jsem vytvořil malou předlohu. Ještě jednou řeknu, co je mým cílem. Chci najít v seznamu v levém sloupci 5 nejmenších datumů a zjistit jejich pozice, je jedno jestli absolutní nebo relativní podle pořadí v seznamu.
Stačí mi znát pouze číslo řádku.

Ty "datumy, které nejsou u sebe" jsou v tomto případě 6.9.2012
Příloha: rar14413_poz.rar (8kB, staženo 32x)
citovat
icon #014416
eLCHa
Třeba
=POZVYHLEDAT(C3;POSUN($A$3;(C3=C2)*(D2);0):$A$15;0)+(C3=C2)*(D2)
Příloha: zip14416_poz.zip (8kB, staženo 33x)
citovat
#014417
avatar
To je přesně ono. Jen nechápu jak funguje POSUN($A$3;
(C3=C2)*(D2);0). Mohl bys mi to prosím vysvětlit?citovat
icon #014420
eLCHa

mountDoom napsal/a:

Jen nechápu jak funguje POSUN($A$3;C3=C2)*(D2);0)


(C3=C2) dává hodnoty PRAVDA (=1) nebo NEPRAVDA (=0)

(C3=C2) je totéž jako KDYŽ(C3=C2;1;0)
tedy
(C3=C2)*D2 je totéž jako KDYŽ(C3=C2;D2;0)

používám i ve VBA, tam je ale třeba dát pozor
true = -1citovat
#014421
avatar
OK, rozumím.

Když už je řeč o VB :)..

Je možné vytvořit tlačítko s následující funkcí?

Vyberu jednu buňku z C3-C7. Poté kliknu na tlačítko a datum ze sloupce A, které odpovídá tomu, na které jsem předtím kliknul ve sloupci
C se zvýší o jeden rok. Poté by funkce SMALL měla zajistit aktualizaci sloupce C.

Snad jsem to popsal trochu srozumitelně. :)citovat
#014423
avatar
s VB ide skoro vse

ale pracovat v myslienke ze zobrat udaj co som klikol pred tym je dost komplikovane :)))

ked napisete presnejsie co ta funkcia ma mat INPUT a co ma byt OUTPUT tak vam ju spravim :)citovat
icon #014424
eLCHa
zkuste něco takového

Sub Button_Click()
With ActiveCell
.Value = DateSerial(Year(.Value) + 1, Month(.Value), Day(.Value))
End With 'ActiveCell
End Sub
citovat
#014426
avatar
Tak já to uvedu na konkrétním prípadě:

1. příklad

vyberu buňku C3 -> Kliknu na tlačítko -> Datum v A6 se zvýší o 1 rok -> A6 už tedy nebude ve sloupci C, protože nepatří mezi 5 nejmenších.
____________________________________________

2. příklad

vyberu buňku C6 -> Kliknu na tlačítko -> Datum v A8 se zvýší o rok -> A8 až tedy nebude ve sloupci C, protože nepatří mezi 5 nejmenších.
____________________________________________________

Jinak na získání hodnoty z buňky, na kterou jsem předtím klikl se myslím dá zjistit pomocí Selection.Value.citovat
#014427
avatar

eLCHa napsal/a:

zkuste něco takového

Sub Button_Click()
With ActiveCell
.Value = DateSerial(Year(.Value) + 1, Month(.Value), Day(.Value))
End With 'ActiveCell
End Sub


toto změní hodnotu buňky, na ktero jsem klikl a "zničí" vzorec, který tam má být. Myslím si, že by tam nějak měl být implementován vzorec ze sloupce D, následně sloupce F, aby se našla "původní buňka" a tu zvýšit o jeden rok, jestli rozumíte. Možná to ale jde jesnodušeji, nevím.citovat

Strana:  1 2   další »

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