Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem Excel, pevná velikost buňky (počet znaků)

Dá se nějak v Excelu nastavit formát buňky, aby tato měla stanovený počet znaků (podobně jako je tomu v databázových programech)?

Například chci, aby velikost buňky byla vždy 12 znaků, číslo se dvěma desetinnými místy, tedy od 0,00 do 999999999,99 a to tak, aby se v případě kratšího čísla než ve stovkách miliónů (které "zabere" všech 12 míst) v té buňce vždy byl i příslušný počet mezer zleva. Když například půjde o číslo "12500,50", tak aby ve skutečnosti to bylo považováno za "mezera mezera mezera mezera 12500,50" (včetně 4 mezer zleva, aby počet pozic byl vždy 12).

Vím, mohl bych to obejít možná přes rozsekání čísla do 12 buněk a číslo vyplňovat zprava, ale to mi připadá hodně kostrbaté.

Potřebuji to pro vytvoření datové věty pro zdravotní pojišťovny, například podle vzoru tady: https://www.my213.cz/aviza/doc/Datove_rozhrani_PPPZ-X.pdf
Tam je například počet zaměstnanců jako pětimístné číslo, pokud je jich jen třeba 6, má tam být "mezera mezera mezera mezera 5". Pokud je jich 133, tak "mezera mezera 133".

Potřebné údaje pro vytvoření datové věty nemám problém shromáždit na jeden list (i když nevadí, že jsou různě po celém složitém sešitu). Skládal bych to dohromady v nějaké buňce asi přes concatenate, následný export celého řetězce do *txt a import na www není problém.

Díky za tip.

Předmět Autor Datum
Uf, ty teda vymýšlíš speciality! :-p Omezení počtu znaků lze přes Data -> Ověření. Ale to doplnění…
host 05.12.2019 12:30
host
cez overenie by to šlo, že by neprekročil 999999999,99 ale to mu nedoplní prázdne miesta pred číslom…
robert13 05.12.2019 12:41
robert13
To si vymýšlejí zdravotní pojišťovny (navíc různé ZP mají ten formát odlišný). Kdyby tam byly možné…
L-Core 05.12.2019 13:35
L-Core
Pozor, toto by nespĺňalo Tvoju potrebu, pretože ako som už písal, ak dáš vlastný formát bunky napr 0…
robert13 05.12.2019 14:34
robert13
No vida, jaké jsem trdlo… :-[
L-Core 05.12.2019 14:54
L-Core
ale no tak!!! :beer:
robert13 05.12.2019 15:04
robert13
Formát, obávam sa, nenastavíš (problém sú medzery... Keby tam mohli byť bezvýznamové nuly, nie je pr…
robert13 05.12.2019 12:39
robert13
Díky! :beer:
L-Core 05.12.2019 13:35
L-Core
Já bych udělal jednoduše šířku sloupce takovou, aby se tam vešel požadovaný počet číslic + nějaká ta…
Kráťa 05.12.2019 17:28
Kráťa
Uniká, viz dotaz a odkaz na *pdf :-) Číslo musí mít stejnou délku, musí být doplněno mezerami zleva.… poslední
L-Core 05.12.2019 17:46
L-Core

To si vymýšlejí zdravotní pojišťovny (navíc různé ZP mají ten formát odlišný). Kdyby tam byly možné nuly zleva, prostě bych použil jednoduše formát třeba pro až 5-místné číslo "00000" a bylo by to.

Robertovo řešení je plně vyhovující, pomocné buňky nevadí. Stejně jich tam různě mám mnoho a mnoho. A mnoho.

Pozor, toto by nespĺňalo Tvoju potrebu, pretože ako som už písal, ak dáš vlastný formát bunky napr 00000 a do danej bunky napíšeš číslo napr 32, tak sa ti síce zobrazí ako 00032, LENŽE ak preskúmaš dĺžku reťazca v tejto bunky, výsledkom bude 2! T.j. tie bezvýznamové nuly sú len formou ZOBRAZENIA, nie skutočným obsahom bunky! Ak pri takejto bunke (00032 získanej cez formát 00000) dáš zobraziť prvý znak zľava, bude to 3 a nie 0!

Formát, obávam sa, nenastavíš (problém sú medzery... Keby tam mohli byť bezvýznamové nuly, nie je problém, ale aj vtedy ide u formátu bunky len o zobrazenie, keby si to chcel roztínať a získavať jednotlivé cifry bezvýznamových núl, ony tam v skutočnosti nie sú. Detto keby to dokázal formát aj s medzerami: bolo by to len zobrazenie ale pri roztínaní by tam medzery neboli)
Ale ak ti neprekáža pomocný stĺpec, tak ak máš číslo v bunke A1, tak :

=REPT(" ";12-LEN(A1))&A1

v českej verzii:
=OPAKOVAT(" ";12-DÉLKA(A1))&A1

Ak by si nesmel mať pomocný stĺpec, dalo by sa to makrom (sledujúcim zmeny v hárku), ktorý vykoná túto funkciu a vlepí výsledok funkcie natvrdo na pôvodné miesto.

Ale aj Tvoje riešenie napĺňaním sprava je úplne v pohode!

Já bych udělal jednoduše šířku sloupce takovou, aby se tam vešel požadovaný počet číslic + nějaká ta vnitřní mezera a ve vlastnostech buňěk dal zarovnání vpravo, typ číslo se dvěma desetinnými čísly.
Nebo mi něco uniká? Asi ano, jelikož na takovou triviální věc by ses neptal. :-)

Zpět do poradny Odpovědět na původní otázku Nahoru