Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem VBA Excel 2010 - odlišnosť výsledkov medzi makrom VBA a manuálnym vykonaním náhrady znakov

Hmm, problém je v tom, že některé hodnoty jsou již jakoby na čísla převedené a u nich VBA bere, že mají jako oddělovač desetinných míst tečku. Proto dojde k té náhradě a posunu desetinného znaménka.
Napadla mě jedna možnost, jak to obejít:
1. do buňky B2 zapsat vzorec ="X" & A2 a rozkopírovat jej pro zbytek řádků (čili před číslo doplnit znak "X")
2. celý sloupec B zkopírovat jako hodnoty do sloupce C (tím mám zaručeno, že ve sloupci C bude 100% řetezec)
3. v tom sloupci C teprve provést náhradu "." za ""
4. do buňky D2 zapsat vzorec =ČÁST(C2;2;30)*1 a rozkopírovat pro další řádky (čili vezmu část řetězce bez znaku "X" a vynásobením jedničkou z něj navíc vyrobím číslo.
Je to trochu krkolomné, ale funguje to a asi to bude rychlejší, než všehno procházet v cyklu. Vzorce ve sloupci B a D můžou být předpřipravené a zkopírování A do C jako hondoty můžeš udělat makrem.
Možná ještě někoho napadne něco elegantnějšího ...

Reakce na odpověď

1 Zadajte svou přezdívku:
2 Napište svou odpověď:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět do poradny