MicroStation – VBA doplněk Přírůstek čísla v textovém prvku

VBA doplněk (makro) pro základní aritmetické operace s čísly v textových prvcích.


Sbírka VBA doplňků pro rozšíření funkčnosti MicroStationu na tomto webu zatím obsahuje 2 položky: Interpolaci a Odebrat úsečky dle délky. Dnes přidávám další položku, podle mého názoru užitečný doplněk Přírůstek čísla.

Nejčastěji používám tento doplněk při dodatečných úpravách trasy kanalizace nebo vodovodu, kdy dojde například k posunu napojovacího bodu. Tím se změní celé staničení, v situaci i v podélných profilech. Pokud se jedná třeba o kmenovou stoku několikakilometrové délky, musí se přepsat mnoho a mnoho textových prvků se staničením. Přitom se jedná o přírůstek nebo úbytek konstantní hodnoty.

S doplňkem Přírůstek čísla je řešení snadné: stačí vybrat příslušné texty se staničením, zadat hodnotu přírůstku nebo úbytku a stisknout OK:

233-1

Texty s čísly je samozřejmě možno hromadně upravovat i v jiných případech, než je staničení. Pak se mohou hodit i další základní aritmetické operace – násobení a dělení.

Doplněk umožňuje nastavení počtu desetinných míst výsledného čísla v rozsahu 0 – 5. Pokud je počet míst snižován, výsledek je zaokrouhlen, například při zadaném počtu míst 3 a přírůstku 0,05 je pro text 1,2345 výsledek 1,285.

Zadání počtu míst je možné použít i pro jejich sjednocení (doplnění nul) bez změny hodnoty. Pro čísla 1,5, 2 a 3,5, přírůstek 0 a počet míst 1 dostaneme výsledek 1,5, 2,0 a 3,5.

Textový prvek představující staničení může kromě samotného čísla obsahovat i jiný text, např. jednotky (km, m,…) nebo další údaje (ZÚ, KÚ,…). S tím si doplněk dokáže poradit, stačí použít možnost Extrahovat číslo:

233-2

Číslo může být v textu kdekoli  – na začátku, uprostřed i na konci. Vždy se ale použije pouze první nalezené číslo, případná další jsou ignorována. V textu 1 km 500 m se upraví číslo 1. Má tedy smysl přidávat pouze celé kilometry s nulovým počtem desetinných míst. S přírůstkem 1 je výsledek správný – 2 km 500 m, s přírůstkem 1,5 chybný- 3 km 500 m.

Doplněk považuje za oddělovač desetinných míst čárku i tečku.

Kombinaci různých variant (čárky, tečky a čísla s popisy) doplněk dokáže zpracovat i v rámci jedné výběrové množiny:

233-3

Jiné prvky než textové jsou z výběrové množiny odebrány, stejně jako texty, které neobsahují žádná čísla. Ty jsou navíc pro případnou kontrolu přesunuty do vrstvy x_nezpracovaný_text.

A to je vše. Velmi jednoduchá funkčnost, ale kolik práce dokáže někdy ušetřit!

Soubor zip s doplňkem jskTeInc ke stažení zde. Rozbalený soubor jksTeInc.mvba je třeba umístit do některé ze složek definovaných v konfigurační proměnné MS_VBASEARCHDIRECTORIES. Příkaz pro spuštění:

VBA RUN [jskTeInc]Start

Podrobnější popis spouštění maker je uveden v článku MicroStation – VBA makra.

Zanechat odpověď

Vyplňte detaily níže nebo klikněte na ikonu pro přihlášení:

Logo WordPress.com

Komentujete pomocí vašeho WordPress.com účtu. Odhlásit /  Změnit )

Google photo

Komentujete pomocí vašeho Google účtu. Odhlásit /  Změnit )

Twitter picture

Komentujete pomocí vašeho Twitter účtu. Odhlásit /  Změnit )

Facebook photo

Komentujete pomocí vašeho Facebook účtu. Odhlásit /  Změnit )

Připojování k %s