Excel - SUDKOU - hledani chyb

Programy pro práci v kanceláři (Word, Excel, Access…=>Office)

Moderátor: Mods_senior

HELPNEED
nováček
Příspěvky: 5
Registrován: leden 06
Pohlaví: Nespecifikováno
Stav:
Offline

Excel - SUDKOU - hledani chyb

Příspěvekod HELPNEED » 02 led 2006 18:34

ukol: mam vytvorit program pro hru sudoku v excelu pomoci funkci , ktery bude chybovou hlaskou upozornovat na spatne zadane cislo

problem : nevim kde a jak v excelu udelat ,aby to hodilo chybovou hlasku kdykoliv cislo nepasuje nebo se nejedna o cislo(hlavne by me zajimalo jak je to s tou chybovou hlaskou - kde se da najit nejake nastavni atd )

Reklama
Uživatelský avatar
mikel
Level 5
Level 5
Příspěvky: 2298
Registrován: květen 05
Bydliště: Karviná
Pohlaví: Muž
Stav:
Offline

Příspěvekod mikel » 04 led 2006 00:25

Žádná funkce v Excelu ti nevyhodí informační okno s chybovou hláškou. To by se dalo vyřešit makrem. Když to máš vyřešit funkcí, tak výstupem bude jenom text v nějaké buňce. V tvém případě se to dá vyřešit takto:

Řekněme že do buňky A1 máš zadat pouze číslo od 1 do 3 a v buňce A2 se ti objeví upozornění, když ho zadáš špatně. Tak do buňky A2 vložíš tuto funkci:
=KDYŽ(A(JE.ČISLO(A1);A1>=1;A1<=3);"";"Špatně zadaná hodnota!")

Funkce JE.ČISLO(A1) vyhodnotí, jestli je hodnota číslo, takže když je hodnota číslo a zároveň je větší nebo rovna 1 a zároveň menší nebo rovna 3, pak nenapíše nic, jinak napíše "Špatně zadaná hodnota!".

Může to tak být?
Znáte pravidla?
Tipy a triky ve Windows XP
Návody: HijackThis, MWAV, CCleaner (THX to mijaja)
Problémy, které chcete vyřešit pište sem do fóra. Neposílejte je emailem ani po ICQ!

HELPNEED
nováček
Příspěvky: 5
Registrován: leden 06
Pohlaví: Nespecifikováno
Stav:
Offline

Příspěvekod HELPNEED » 04 led 2006 20:18

Velmi dekuji!
A jeste mam otazecku zda by tato funkce sla rozsirit na nekolik bunek najednou ( aby to psalo 'spatna hodnota' bude-li v alepson jedne z bunek neco jineho nez vymezene cislo?) a nemusel bych se s tim slozite rozepisovat
Dekuji za odpoved

Uživatelský avatar
mikel
Level 5
Level 5
Příspěvky: 2298
Registrován: květen 05
Bydliště: Karviná
Pohlaví: Muž
Stav:
Offline

Příspěvekod mikel » 13 led 2006 13:59

Funkce JE.ČISLO nedokáže zkontrolovat více buněk než 1. Takže pro oblast by to šlo jenom s kontrolou minimální a maximální hodnoty. Kontrola, jestli je zapsaná hodnota text nebo číslo by nefungovala.

Dalo by se to elegantně vyřešit, ale jenom makrem. Je možné to tak řešit nebo makro nechceš?
Znáte pravidla?
Tipy a triky ve Windows XP
Návody: HijackThis, MWAV, CCleaner (THX to mijaja)
Problémy, které chcete vyřešit pište sem do fóra. Neposílejte je emailem ani po ICQ!

Axamith
nováček
Příspěvky: 47
Registrován: duben 05
Bydliště: Zábřeh
Pohlaví: Nespecifikováno
Stav:
Offline
Kontakt:

Příspěvekod Axamith » 14 led 2006 10:53

Pokud je výsledek chyba nabo nesplňuje podmínku, tak v Excelu je možnost toto ošetřit chybovým hlášením nebo varováním. Dělá se to pomocí Oveření dat. ( příkaz Data/Ověření ) Zatím jsem s tím jenom koketoval, ale vím, že to docela dobře funguje. Celou problematiku popsal Jan Pokorný v knize MS Excel a práce se vzorci. ( str. 11-15 ). Třeba to pomůže.

Axamith

HELPNEED
nováček
Příspěvky: 5
Registrován: leden 06
Pohlaví: Nespecifikováno
Stav:
Offline

Příspěvekod HELPNEED » 14 led 2006 22:33

dekuji
Jak by tedy vypadala funkce , ktera by udavala rozmezi od 1 do 3 pro vice bunek s tim , ze kdyby v bunce bylo jine cislo napsalo by to ''CHYBA'' ?

Uživatelský avatar
mikel
Level 5
Level 5
Příspěvky: 2298
Registrován: květen 05
Bydliště: Karviná
Pohlaví: Muž
Stav:
Offline

Příspěvekod mikel » 14 led 2006 23:16

Axamih má pravdu! Vůbec jsem si na to nevzpoměl.
Vyber všechny buňky, do kterých chceš zapisovat a spusť Data/Ověření.
Namísto "Jakoukoli hodnotu" dej "Celé číslo", pak vyber "je mezi" a minimum 1 a maximum 3. Na záložce Zpráva při zadávání můžeš napsat zprávu, která se zobrazí při zadávání a na záložce Chybové hlášení vybereš akci, která se stane při chybném zadání, a hlášku, která se zobrazí.
Znáte pravidla?
Tipy a triky ve Windows XP
Návody: HijackThis, MWAV, CCleaner (THX to mijaja)
Problémy, které chcete vyřešit pište sem do fóra. Neposílejte je emailem ani po ICQ!

HELPNEED
nováček
Příspěvky: 5
Registrován: leden 06
Pohlaví: Nespecifikováno
Stav:
Offline

Příspěvekod HELPNEED » 15 led 2006 13:07

No prave to overeni pres data mi nefunguje , protoze sem funkci cetnosti vypsal pocet 1,2,3 az 9 v kazdem radku , sloupci a ctverci sudoku a pokud by to vypsalo , ze je nekde nekde nejake cislo vice nez jednou tak tam musi byt chyba.
Proto potrebuji funkci ktera by nekde napsala ''chyba'' pokud se v te matici cetnosti objevi nejake cislo vice nez jednou....

Uživatelský avatar
mikel
Level 5
Level 5
Příspěvky: 2298
Registrován: květen 05
Bydliště: Karviná
Pohlaví: Muž
Stav:
Offline

Příspěvekod mikel » 16 led 2006 19:03

Tak mě asi napadlo, jak to udělat. Zkusím to, ale chci si ještě upřesnit, jestli dobře rozumím pravidlům SUDOKU. "Hrací pole" je čtverec o velikosti 9x9 a do všech řádků a sloupců se doplňují čísla 1 - 9, tak aby v žádném řádku ani sloupci nebyly 2 stejná čísla.
Je to tak?
Znáte pravidla?
Tipy a triky ve Windows XP
Návody: HijackThis, MWAV, CCleaner (THX to mijaja)
Problémy, které chcete vyřešit pište sem do fóra. Neposílejte je emailem ani po ICQ!

HELPNEED
nováček
Příspěvky: 5
Registrován: leden 06
Pohlaví: Nespecifikováno
Stav:
Offline

Příspěvekod HELPNEED » 17 led 2006 16:57

Tak jsem to vyresil tak ,ze sem na prvni cetnost udelal dalsi cetnost , ktera pocitala pocet 1 a 0 z te prvni a pokud by nebyl soucet tech jednicek a nul 9 , tak to napise chybu.Pokud ma nekdo lepsi napad tak sem s nim :smile:

Uživatelský avatar
mikel
Level 5
Level 5
Příspěvky: 2298
Registrován: květen 05
Bydliště: Karviná
Pohlaví: Muž
Stav:
Offline

Příspěvekod mikel » 18 led 2006 08:13

Já jsem to vyřešil pomocí funkce MODE(). Tato funkce vypíše hodnotu, která se v zadané oblasti vyskytuje nejčastěji. Pokud žádná z hodnot nemá nejčastější výskyt (každá číslice se vyskytuje jenom jednou) vrátí funkce chybu #N/A. To se vyřeší pomocí JE.NEDEF(). Tato funkce vrátí PRAVDA, když je hodnota právě #N/A. To znamená, že pro řádek nebo sloupec, ve kterém se neopakuje žádná číslice je funkce JE.NEDEF(MODE(oblast)) rovna PRAVDA. Pro lepší použitelnost jsem to ještě vylepšil tak, že pro každý řádek i sloupec a pro čtverce jsem použil tento zápis:
=KDYŽ(JE.NEDEF(MODE(oblast));0;1)
Výsledkem této funkce je 0 (pro všechny číslice různé) nebo 1 (pro aspoň jednu opakující se číslici). No a konečné ověření mám pomocí funkce SUMA. Když je součet výsledných hodnot všech těch funkcí roven 0, tak se neopakuje ani jedno číslo, jinak je někde stejná číslice.
Znáte pravidla?
Tipy a triky ve Windows XP
Návody: HijackThis, MWAV, CCleaner (THX to mijaja)
Problémy, které chcete vyřešit pište sem do fóra. Neposílejte je emailem ani po ICQ!


  • Mohlo by vás zajímat
    Odpovědi
    Zobrazení
    Poslední příspěvek
  • PC byl restartován z důvodu procesu kontroly chyb
    od mvesely » 14 čer 2023 20:40 » v BSOD (Blue Screen Of Death)
    3
    1988
    od petr22 Zobrazit poslední příspěvek
    15 čer 2023 07:37
  • Excel a OneDrive
    od sginfo » 11 zář 2023 15:28 » v Kancelářské balíky
    16
    6271
    od mirekol Zobrazit poslední příspěvek
    20 říj 2023 08:31
  • excel-posun makra
    od actionboy » 12 bře 2024 18:59 » v Kancelářské balíky
    1
    390
    od Grimm Zobrazit poslední příspěvek
    12 bře 2024 21:43
  • Excel komparacedvou soborů Příloha(y)
    od teichmann.ondrej » 15 dub 2024 17:26 » v Kancelářské balíky
    7
    1809
    od teichmann.ondrej Zobrazit poslední příspěvek
    včera, 12:28
  • Excel - vlastní formát Příloha(y)
    od Story-Long » 11 srp 2023 14:50 » v Kancelářské balíky
    3
    1984
    od Story-Long Zobrazit poslední příspěvek
    14 srp 2023 10:11

Zpět na “Kancelářské balíky”

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 2 hosti