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

#1 6. 9. 2010 11:53:54

alfonz_mucha
Člen
Registrace: 6. 9. 2010
Příspěvků: 19

CUT a změna vzorců při zamčeném souboru/listu

Dobrý den,

narazil jsem na situaci se změnou vzorců při zamčeném listu. Takže mám list který obsahuje několik vzorců (hlavně podmínky) a vkládá se do něj obsah pro výpočet. Část listu je odemčená, pro vkládání dat a manipulaci s daty a další část s vzorci je uzamčená proti změnám.

Předpokládal jsem tedy, že ať se provede jakákoliv operace nad daty, zamčené buňky se nezmění (jsou přeci ZAMČENÉ). Ovšem nyní jsem zjistil, že ne tak docela, při operaci CUT vyjmout a PASTE vložit (control x a control v) se vzorce dost změní. Vše je patrné na přiložených obrázcích. Šedivé buňky jsou zamčené.

před CUT a PASTE
img837.imageshack.us/i/68511824.png/

po CUT a PASTE
img546.imageshack.us/i/76317321.png/


Chápu, že tomu lze zamezit například tak, že se změny provádí na jiném listu, a poté teprve vloží do listu, který je určený pro výpočty, ale změny probíhají i za výpočtu, takže by bylo vždy nutné zkopírovat vše do jiného listu a poté zase zpět.

Moje otázka tedy zní, jakým způsobem docílit toho, aby i vzorce zůstaly zamknuty???


btw, bylo by super mít možnost sem nahrát obrázky

Offline

#2 6. 9. 2010 13:11:06

Ondra.kl
Člen
Registrace: 30. 9. 2008
Příspěvků: 933

Re: CUT a změna vzorců při zamčeném souboru/listu

... nepoužívat CUT and PASTE ... OOo se tímhle chrání před těmi kdo jsou schopni si takto rozbít výpočty a pak to dávat za vinu balíku. Nevím jestli se to dá někde nějak ovlivnit.

Offline

#3 6. 9. 2010 17:15:23

lp.
Člen
Registrace: 24. 9. 2009
Příspěvků: 782

Re: CUT a změna vzorců při zamčeném souboru/listu

alfonz_mucha napsal(a)

Dobrý den,
Moje otázka tedy zní, jakým způsobem docílit toho, aby i vzorce zůstaly zamknuty???

Zkuste postavit vzorce tak, aby při těchto změnách nebyly vzorce ovlivněny.

Při malém počtu parametrů můžete použít funkci indirect. Např.

=INDIRECT("RC[-1]";0) zkopíruje hodnotu ze sousedního (levého) sloupce, a dá se kopírovat.

=INDIRECT("RC1";0) zkopíruje hodnoru ve stejném řádku za sloupce A. Zase, lze kopírovat.

Tj. lze snadno vytvořit kopie zadávaných polí, a vlastní vzorce s výpočty odkazovat na kopie.

Offline

#4 8. 9. 2010 09:58:14

alfonz_mucha
Člen
Registrace: 6. 9. 2010
Příspěvků: 19

Re: CUT a změna vzorců při zamčeném souboru/listu

Dobrý den,

Ondra.kl, děkuji tato odpověď je uspokojivá, avšak je trošku problematická, kalkulačku nepoužívám pouze já.

lp., to zní zajímavě, ještě nikdy jsem tuto funkci nepoužil takže se na ní zároveň podívám. Děkuji


btw, proč se zamykání listu jmenuje zamknout list, když to nefunguje? Asi by se to mělo nahlásit jako "zvláštní chování". Chápu, že při nezamknutým listu je to normální.

Editoval alfonz_mucha (8. 9. 2010 09:59:11)

Offline

#5 8. 9. 2010 11:55:32

alfonz_mucha
Člen
Registrace: 6. 9. 2010
Příspěvků: 19

Re: CUT a změna vzorců při zamčeném souboru/listu

Dobrý den,

takže nakonec se mi podařilo funkci INDIRECT přimět dělat to co jsem požadoval. Použil jsem tedy =INDIRECT("RC1";0) a poté několik podobných variant.

potom jsem jsem ještě potřeboval načítat takto data ale z jiného listu a na to jsem použil

=IF(ISBLANK(INDIRECT("$list"&".A"&ROW()));"";INDIRECT("$list"&".A"&ROW()))


takže pokud někdo bude taky potřebovat odkazovat na buňky a přitom měnit data tohle pomůže.

Ještě menší OFFTOPIC, ale mám otázku na tvorbu CSV souboru.
Je možné při ukládání listu jako CSV zabránit tomu, aby se do souboru uložili prázdné řádky (mají sice v sobě IF, ale ta vrací "") tedy prázdný char. Nebo jak donutit FUNKCI IF aby zapsala úplně prázdnou buňku? Nyní zapíše

"";"";"";"";"";"";"";"";"";"";"";""

pro prázdnou řádku (obsahuje fci) > takže něco jako =EMTPY()

Offline

Zápatí