Fórum pro uživatele kancelářského balíku OpenOffice | LibreOffice
 

#1 19. 4. 2018 10:48:19

Pepee
Člen
Registrace: 19. 4. 2018
Příspěvků: 4

Součet buněk když...Datum - VYŘEŠENO

Dobrý den všem přítomným.

Chtěl bych poradit se situací, kde potřebuji sečíst počet hodnot ve sloupci A, když sloupec B obsahuje hodnotu(jedno jakou, mám tam datum).

A B
1
1 F
2 F
1 F
2
2 F
2 F

Takže řekněme, že potřebuji sečíst počet jedniček ve sloupci A, pouze pokud ve sloupci B stejný řádek obsahuje F. Výsledek by tedy měl být 2.
Možná naivně jsem to zkoušel řešit =COUNTIFS(A1:A8;1;B1:B8)
Hodnota je ale NAME?

Děkuji za každou radu.

Editoval Pepee (20. 4. 2018 07:00:06)

Offline

#2 19. 4. 2018 12:36:34

neutr
Člen
Registrace: 8. 3. 2007
Příspěvků: 2,718

Re: Součet buněk když...Datum - VYŘEŠENO

Nějak takto

=COUNTIFS(A1:A8;1;B1:B8;"F")

     Vždy se přiřazuje úsek1;hledanáHodnota1;úsek2;hledanáHodnota2;úsek3;hledanáHodnota3. Pokud to jsou čísla tak výraz bez uvozovek (i když to mohou být čísla v nějakém textovém formátu - tak se většinou načte pokud je standardně formátovaný). Když to je text tak musí být v uvozovkách.


     Když se zadává s operátorem [>, <, =, >=, ...] tak tento výraz v uvozovkách & číslo příklad ;">" & 8;.... Když to je klasicky formátované datum tak jde o číslo takže to je jeden z triků >> dáte odkaz na datum a + 1 = číslo zítřejšího dne, takže do pole datumů dáte vyhledat například ;"<" & 2320;..
     Dalším trikem je dát odkaz na buňku která výraz obsahuje. Například =COUNTIFS(A1:A8;C1;B1:B8;C2) kde v buňce C1 bude číslo 1 a v buňce C2 písmeno F.


     Podobné je to se SUMIFS. Doporučuji Vám ale hledat TAKÉ VE STARŠÍCH PŘÍSPĚVCÍCH. Takové téma se to objevilo mnohokrát. Zvolíte zde na stránce kartu hledání, zadáte výraz zvolíte z da v názvu ap, vyberete pochopitelně Calc a dáte hledat. Vyskočí odkazy.

Editoval neutr (19. 4. 2018 12:51:28)


Pokud je Váš problém vyřešen, označte prosím svůj příspěvek za "VYŘEŠENÝ"
Zlepšíte tak orientaci na fóru při vyhledávání řešení problémů
JAK OZNAČIT TÉMA ZA VYŘEŠENÉ

Offline

#3 19. 4. 2018 12:39:58

ludviktrnka
Člen
Registrace: 9. 7. 2009
Příspěvků: 525

Re: Součet buněk když...Datum - VYŘEŠENO

zapomněl jste druhé kritérium "F" takže takto: =COUNTIFS(A2:A100;1;B2:B100;"F")

:-)

Editoval ludviktrnka (19. 4. 2018 12:40:18)


LibreOffice 5.2.2.2

Offline

#4 19. 4. 2018 12:47:24

Pepee
Člen
Registrace: 19. 4. 2018
Příspěvků: 4

Re: Součet buněk když...Datum - VYŘEŠENO

No to je právě ten problém. Já jsem to trochu nešikovně popsal.  Tam není vždy jen F. Hodnoty jsou různé a já potřebuji spočítat pouze ty řádky, kde je v sloupci B nějaká hodnota. (jakákoliv hodnota).

reálně se tam zapisuje datum v daný den. Takže za měsíc je tam třeba 20 různých hodnot, které do podmínky vypsat nejde.

Offline

#5 19. 4. 2018 12:52:51

neutr
Člen
Registrace: 8. 3. 2007
Příspěvků: 2,718

Re: Součet buněk když...Datum - VYŘEŠENO

Takže potom zadat podmínku ;"<>" & "";
     Bohu žel nejsem doma abych to ověřil. Možná stačí bez toho &. Ale někdy to může vyžádat více uvozovek. Já budu doma až asi zítra. Pan Trnka je snad na stroji kde to může ověřit. Nebo to otestuje někdo jiný.


     Mělo by jít zadat také IsEmpty, respektive dotaz na Isnull, ale to musí do IF. Z hlavy nevím jestli to lze zadat jako negaci - NotIsEmpty, nebo NotIsNull pomocí dotazu na TRUE/FALSE IF(IsEmpty(B2)=False;"";1) - ale v nějaké šikovnější podobě pro úsek.

Editoval neutr (19. 4. 2018 13:06:27)


Pokud je Váš problém vyřešen, označte prosím svůj příspěvek za "VYŘEŠENÝ"
Zlepšíte tak orientaci na fóru při vyhledávání řešení problémů
JAK OZNAČIT TÉMA ZA VYŘEŠENÉ

Offline

#6 19. 4. 2018 17:47:30

Pepee
Člen
Registrace: 19. 4. 2018
Příspěvků: 4

Re: Součet buněk když...Datum - VYŘEŠENO

Děkuji mnohokrát za plodné rady. Zní to velmi logicky, ale stále mi nad tím nejde nějak zvítězit.
Zkoušel jsem zadat podmínku pomocí operátorů "<>" & větší než 1 menší než 2030 bez úspěchu.
Pokud jsem zvolil správnou funkci, tak netuším kde dělám chybu. Vzorec nefunguje ani když kritéria mechanicky naklikám na buňkách a zvolím buňku pouze s jedním konkrétním datem, kde by to mělo zkušebně vyhodit výsledek 1. Ale opět NAME?
Formát data mám dd.mm.rrrr

Offline

#7 19. 4. 2018 20:24:03

LIT
Člen
Místo Liberec
Registrace: 8. 12. 2012
Příspěvků: 41

Re: Součet buněk když...Datum - VYŘEŠENO

Takto napsaný vzorec mi funguje: =COUNTIFS(A1:A8;1;B1:B8;">1.1.2018")


Pokud je Váš problém vyřešen, označte prosím svůj příspěvek za "VYŘEŠENÝ"
Zlepšíte tak orientaci na fóru při vyhledávání řešení problémů
JAK OZNAČIT TÉMA ZA VYŘEŠENÉ
Linux Mageia 6,Libre Office 5.3.4.2, Acer Aspire E15

Offline

#8 20. 4. 2018 07:02:41

Pepee
Člen
Registrace: 19. 4. 2018
Příspěvků: 4

Re: Součet buněk když...Datum - VYŘEŠENO

LIT napsal(a)

Takto napsaný vzorec mi funguje: =COUNTIFS(A1:A8;1;B1:B8;">1.1.2018")

Ano tento zápis funguje i mně. Při zkoušce toho jsem tam měl buď mezeru a nebo hodně uvozovek.  Děkuji mnohokrát.
Hodně mi to pomohlo.

Offline

#9 20. 4. 2018 10:19:26

neutr
Člen
Registrace: 8. 3. 2007
Příspěvků: 2,718

Re: Součet buněk když...Datum - VYŘEŠENO

Už jsem doma takže správně funguje toto :

=COUNTIFS(A1:A10;1;B1:B10;"<> """)

     Vámi popsané řešení je nesprávné přestože vrací správný výsledek. Musíte si uvědomit že podmínka ">1.1.2018" řeší případy kdy je ve sloupci B číslo menší nežli datum 1.1.2018. Jenomže podle autora dotazu tam může být cokoliv - tedy i číslo větší nežli 43101 (to je číselná hodnota datumu 1.1.2018). Takže tam zadejte číslo větší například 43101,2 a uvidíte že je to chyba.
A : - testovat se musí prázdná buňka
B : - test chbně podmíněný funguje jen do čísla s velikostí 43101. Takže když už tak číslo mnohem větší - například 15! (faktoriál čísla 15).
C : - Test hledá číslo ale ve slouci jsou alfabetické znaky (písmo - nikoliv čísla). Při vyhodnocování hodnoty string je vždy velikost nula.
D : - I když by to teoreticky vyhovovalo protože ve sloupci B mohou být jen alfabetické výrazy (ačkoliv autor psal cokoliv), tak se může stát že textový výraz bude rozpoznán jako zápis čísla v hexadecimální soustavě (kombinace znaků [0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F]. Takže náhodně postavené hexadecimální číslo překročí snadno uvedenou číselnou limitu - a máte ihned chybu. Proti tomu prakticky neexistuje ochrana.


     Uvedený vzorec =COUNTIFS(A1:A10;1;B1:B10;"<> """) se nedá oklamat ani mezerou - ta není okem viditelná. Jsem přesvědčený že tento vzorec lze nahradit úpravou s obsahem funkce ISBLANC ale i mnoha dalších ze série INFORMACE nebo také pomocí textových funkcí jako je CODE(odkaz) a podobně další.


     Řešení odkazem :

=COUNTIFS(A1:A10;1;B1:B10;"<>" & $G$1)

     Tento princip spočívá v dotazu na odkaz do prázdné buňky G1, konkr=tně v absolutní notaci adresy $G$1 - každá buňka testovaného úseku (sloupec B) dotazuje jedinou stejnou buňku. Takže stejným způsobem lze odkazovat na buňky sloupce A.


Pokud je Váš problém vyřešen, označte prosím svůj příspěvek za "VYŘEŠENÝ"
Zlepšíte tak orientaci na fóru při vyhledávání řešení problémů
JAK OZNAČIT TÉMA ZA VYŘEŠENÉ

Offline

Zápatí