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

#1 5. 3. 2017 23:01:46

jirka999
Člen
Registrace: 5. 3. 2017
Příspěvků: 2

vyreseno

prosim jak udelat aby v jedne bunce bylo cislo a aby se k nemu automaticky pripocetl vysledek z  druhe bunky -  cislo  ke kteremu plusem pripoctu cislo druhe ale aby v te bunce zustalo pouze vysledne cislo a mohl jsem k nemu znovu plusem pripocist dalsi cislo a opet to plus a pripocitavane cislo znovu zmizelo a zustal pouze vysledek a  mohl jsem k nemu zase pripocist plusem  dalsi. dekuji za radu jakym vzorcem to udelat.

Editoval jirka999 (7. 3. 2017 23:23:33)

Offline

#2 5. 3. 2017 23:15:19

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

Re: vyreseno

Dobrý večer - nevím zda zareagují kolegové jinak. Jestli to dobře chápu tak chcete nějakým způsobem "fixovat" výsledek výpočtu. Já myslím že to vzorcem nelze. Většinou se na to prostě používá dlouhá tabulka, kde je výsledek, ale také zároveň všechny předchozí hodnoty, které do cílového výpočtu vstupují. Z hlediska grafické stránky můžete výsledek promítat kam libo.

Přesně to co popisujete (bez pomocné tabulky) by se dalo řešit zřejmě jen nějakým makrem.


LibreOffice 6.2.

Offline

#3 6. 3. 2017 05:54:30

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

Re: vyreseno

Docela podivný popis a ještě podivnější motivace.
Proč tam nemůže zůstat vzorec?
Uvědomujete si že když chcete připočíst číslo k danému musíte vzorec znovu vytvořit?


Když si to uvědomíte tak potom je stejně, nebo dokonce méně pracné například pro součet buněk A1 + A2 vytvořit v B2 vzorec =A1+A2. Aby tam zůstalo je číslo stačí zkopírovat (Ctrl+C) B2 a vložit zpět jen čísla  pomocí dialogu VLOŽIT JINAK > Volba jen čísla, text.
     Takže nyní máte v B2 opravdu jen číslo (řekněme 51) a Vy k němu zase chcete připočítat. Nyní musíte vytvořit buď znovu vzorec v B2 (například =A3 + 51). Nyní musíte znovu použít trik s dilogem VLOŽIT JINAK.
     Opravdu si nic méně smysluplného nedovedu představit. Ovšem v detailu se skrývá ďábel. Možná se dá pochopit důvod ale musíte to vysvětlit. Možná z toho pochopíme že hledáte úplně něco jiného. Existuje skrytí vzorců. Takže pokud je to ochrana proti zvědavým uživatelům - lze to ošetřit takto.
     Pokud je to jen ochrana proti nechtěnému přepisu tak to má také řešení podobného typu.


     Na celé věci je zarážející skutečnost, že by se mělo jednat o jedinou buňku která není klasicky zřetězitelná. To chcete například do buňky A1 načítat výběr přes celý sešit? - Ale i to umíme vzorcem pokud víte co chcete sečíst.


     Abych se do takového nesmyslu pustil musel byste zdůvodnit:
- proč nechcete aby byla vidět historie výpočtu, respektive konkrétní poslední operace.
- znáte alespoň průměrně běžnou obsluhu tabulkového procesoru.
- potřebujete takovou funkcionalitu často nebo pravidelně a s různými rozsahy součtů.
     Dovedu si představit, že si otevřete například v půlce obrazovky účetnictví a ve druhé Calc který chcete použít opravdu jako klasickou kalkulačku a přidávat jen klávesnicí čísla která Vás zajímají (z náhledu účetnictví). Ovšem i tak je divné proč nemá být vidět co se sčítalo.


     Tedy musím souhlasit s panem Trnkou - je to na makro. Makro zase není tak složité ale musíte lépe popsat odkud berete čísla do součtů. Podle popisu hodláte explicitně určit sčítance, ale nechcete aby se dalo zjistit jaké číselné hodnoty jste použil. Nechci ani domýšlet na co tohle potřebujete.


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

#4 6. 3. 2017 08:29:05

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

Re: vyreseno

A) Hloupý nápad. Lze pochopit jen, pokud se pokoušíte poznat možnosti calcu.
B) Přes vzorce by možná šlo nasimulovat - srozumitelnost = 0, nechce se mi takový nesmysl skládat.
C) Makrem to jde.

ALE

Je velice obtížné zajistit korektní fungování podle popisu - jestli se buňka přičetla - musíte umět detekovat změnu a poznat, že stejná hodnota je někdy změna a někdy omyl, kolikrát se přičetla, možná je vhodné počítat s možností opravy zadané chyby, zajistit funkcionalitu po uložení a zavedení listu, ...

Vymyslete si to nějak jinak.

Offline

#5 6. 3. 2017 16:57:59

jirka999
Člen
Registrace: 5. 3. 2017
Příspěvků: 2

Re: vyreseno

dobry den, upresnění meho dotazu.Jedna se o skladovou tabulku kde mam v radku typ mater v jedne bunce prijato celk v druhé přijato nove a ve tretí  vydano celkem a ve ctvrté  vydano nově v paté skladem celkem a jde mi o to ,abych v první a tretí mel neustale celkovy stav -přijato a vydano v pate skladem celkem tedy rozdíl mezi přijato celkem a vydano nove  a abych mohl do druhé a ctvrté mohl zadavat nově přijato a nově vydano a císlo se připocetlo do přijato cel a vydano celk a bunka poté zústala prazdná abych mohl vložit novy udaj a přitom nemusel mít na pozadí spoustu pomocnych tabulek nebot druhu mater je asi 80. hledam nejednodušší zpusob jak toho docílit bud pomocí vzorce nebo makra. Dekuji za radu

Offline

#6 6. 3. 2017 19:31:01

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

Re: vyreseno

Pošlete ukázku nekolika řádků - popište tak aby to bylo k pochopení. Tohle vypadá na obyčejné vzorce bez mazání vzorců. Vzorec totiž může obsahovat prázdnou hodnotu ale 80 položek asi bude lepší ošetřit makrem. Udělejte fiktivní položky ale tak aby to bylo věcně věrné a popisné zcela. Jde například o jednotky (objemové, váhové, délkově, ks, bm ap.).
      Pokud se jedná o zboží podléhající zkáze (s dobou expirace) tak také popište a podobně všechny speciality. Většinou odpovíme a pak přichází další a další upřesnění.


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

#7 6. 3. 2017 21:57:12

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

Re: vyreseno

Právě skladové hospodářství je jedna z věcí která se bez makra (podle mne) neobejde. Prostě tlačítko nebo formulář "přijmout na sklad" a "vydat ze skladu" jsou nutná, to vzorci prostě nejde udělat. Ovšem makro které vám obash buňek ve slouci X připočte (nebo odečte) k obsohu buněk ve sloupci Y je skutečně jednoduché.

Sub PridejNaSklad
        dim doc as object

	doc = thisComponent
	list = doc.getCurrentController.getActiveSheet()

	prijem = list.getCellRangeByName("A2:A1000")
	sklad = list.getCellRangeByName("B2:B1000")
	
	for i = 0 to 998
	hodnota = prijem.getCellByPosition(0,i).value
    	if hodnota <> 0 then
    	   sklad.getCellByPosition(0,i).value = sklad.getCellByPosition(0,i).value + hodnota
    	end if
    next i    

End Sub

Výdej bude stejně jen s opačným znaménkem. Ještě by se mělo přidat vymazání zdrojového sloupce atd. ale jádro je opravdu jednoduché.


LibreOffice 6.2.

Offline

#8 7. 3. 2017 09:39:32

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

Re: vyreseno

kydyby vám to pomohlo nahrál jsem skladový souborek sem: https://www.dropbox.com/s/3ct1aku6mgvia … d.ods?dl=0
V podstatě to jen přičítá a odečítá příjem a výdej.

Editoval ludviktrnka (10. 4. 2017 20:40:08)


LibreOffice 6.2.

Offline

Zápatí