WWW pro školy
Jak na Office - tutoriály, video návody











Vytvoř si párové triko

Poradna - Vytvořil jsem si modul..

Vložení příspěvku
Předmět:
Vaše jméno: (povinný údaj) Váš e-mail:
Text:(Zbývá: 1000 znaků - povinný údaj)
Připojit ukázkový soubor:
(Maximální velikost souboru jsou 2MB.)
 Opište následující text (kvůli zneužití):  AXQHQ   

hlavní kategorie | zpět | + odpovědět na toto téma
Vytvořil jsem si modul.. - diskuze na toto téma
Podařilo se mi vytvořit modul, který mi vytáhne ze stránky určitý text, ale potřeboval bych upravit tak, aby mi vytáhl jen část tohoto textu, jen tu část za mezerou, poradíte jak na to?

elninoslov | 28.2.2019 00:08  
 
 
Mid$(reťazec, InStr(1, reťazec, " ") + 1, Len(reťazec))
Odpověď
betcup | 28.2.2019 08:55  
 
 
Můžete to trochu rozepsat? :-) Zas tolik toho neumím.
Odpověď
elninoslov | 13.4.2019 09:36  
 
 
A čomu na tom nerozumiete? Máte predsa nejakú premennú RETAZEC. Chcete z nej nechať časť za medzerou. Teda si tú medzeru nájdeme pomocou hľadania znakov - funkcia InStr(1, RETAZEC, " "). Teda "nájdi pozíciu medzery v RETAZEC a hľadaj od prvého znaku". Ak nenájde medzeru, dá číslo 0. Potom vo funkcii MID() vyberieme tú časť z RETAZEC, ktorá je od medzery o znak za ňou (preto +1, ak nebola medzera, tak 0+1=1, teda výsledkom bude celý text) a v dĺžke celého reťazca. Je jedno či tam bude posun za medzeru, stále chceme od neho akože toľko znakov, koľko RETAZEC mal, ale on nám vráti vždy iba toľko koľko ostáva v reťazci znakov. Čiže medzera spôsobí napr. vynechanie 3 znakov z 10, a my stále požadujeme 10 znakov, tak pri požadovaní 10 znakov zo zostávajúcich 6, dostaneme len 6. Takže vo VBA to bude RETAZEC = Mid$(RETAZEC, InStr(1, RETAZEC, " ") + 1, Len(RETAZEC)) a vzorcom v Exceli to bude =MID(B6;IFERROR(FIND(" ";B6);0)+1;LEN(B6)) v CZ to bude =ČÁST(B6;IFERROR(NAJÍT(" ";B6);0)+1;DÉLKA(B6))
Odpověď