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

#1 21. 9. 2015 21:05:53

dvorak-a
Člen
Registrace: 21. 9. 2015
Příspěvků: 6

Získání názvu souboru z url - VYŘEŠENO

Jak mohu získat adresu souboru z adresy - tj to za posledním lomítkem - zanoření v adresářové struktuře je různé někdy je v kořenové složce jindy v x podsložkách. Děkuji

Editoval dvorak-a (6. 10. 2015 16:42:14)

Offline

#2 21. 9. 2015 21:42:52

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

Re: Získání názvu souboru z url - VYŘEŠENO

Tomu moc nerozumím. Jak mohu získat adresu souboru z adresy - tj to za posledním lomítkem Za posledním lomítkem už je jen název a koncovka.
     Vyhledávání v textu se provádí pomocí textových funkcí FIND() a nebo SEARCH(). Pokud tedy víte, že tam je odkaz (URL) tak potom hledáte poslední lomítko. Problém je v tom, že musíte zadat pozici od které se má hledat. To se zadává z levé strany. Tam ale začínají všechna lomítka. Proto je nutné vytvořit konstrukci která může být i dost složitá.
     Sofistikovanější řešení vzorcem spočívá v odhadu délky řetězce ze které vytipujeme znaky od konce. To si tipneme podle nejdelšího názvu.
     Jiný méně sofistikovaný postup je vnořením prohledávacích funkci. Zanoření bývá různé ale zase můžeme tipnout největší počet lomítek a sestrojit konstrukci na největčí počet.
     Také můžeme hledání rozložit do více pomocných sloupců (například 5) když bude například název v root, tak bude hned v prvním sloupci a v těch ostatních se bude jen kopírovat.


     Takový problém je snadněji řešitelný makrem. Řetezec se prohledává od konce a když narazí na lomítko tak vrátí vše před lomítkem.
     Podobné řešení by bylo něco mezi těmi dvěma metodami (vzorcem a makrem). Je to maticový vzorec. Ten ale musí být napsán jako Function. Vhodný je spíš pro menší objemy dat - cca stovky "řádků".


     Někdy je lepší prohledávat přímo adresáře a z nich dělat výpis. Jde ale o individuální podmínky zejména pokud jde o místní adresář(e) s velkým objemem souborů. Paušálně není možné něco doporučit bez ukázky adresářové struktury.


      Horší by to bylo, když by text obsahoval víc nežli URL (URL uvnitř jiného textu). Toto by se muselo rozšířit o dotaz ISREF().

Editoval neutr (21. 9. 2015 21:55:07)


Moje e-mailová adresa
Pokud je Váš problém vyřešen, označte prosím svůj příspěvek za "VYŘEŠENÝ"
Zlepšíte orientaci při vyhledávání řešení JAK OZNAČIT TÉMA ZA VYŘEŠENÉ

Offline

#3 22. 9. 2015 05:55:04

dvorak-a
Člen
Registrace: 21. 9. 2015
Příspěvků: 6

Re: Získání názvu souboru z url - VYŘEŠENO

jde o to, že někdy je cesta k souboru http://priklad.cz/slozka/nazevsouboru.exe podruhe uz http://priklad.cz/slozka/slozka/nazevsouboru2.exe jindy zase http://priklad.cz/slozka/slozka/slozka/ … uboru3.exe potřebuji u toho získat pouze nazevsouboru.exe , všechny url jsou samostatně ve sloupci

Offline

#4 22. 9. 2015 08:45:00

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

Re: Získání názvu souboru z url - VYŘEŠENO

Dnes se na to mrknu. Mám podobné makro a musím ho přizpůsobit.


Moje e-mailová adresa
Pokud je Váš problém vyřešen, označte prosím svůj příspěvek za "VYŘEŠENÝ"
Zlepšíte orientaci při vyhledávání řešení JAK OZNAČIT TÉMA ZA VYŘEŠENÉ

Offline

#5 22. 9. 2015 09:25:02

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

Re: Získání názvu souboru z url - VYŘEŠENO

Vzoreček vypadá trochu složitěji, vkládá se maticově trojhmatem (ctrl-shift-enter)

=MID(A1;MAX(IF(MID(A1;ROW(INDIRECT("A1:A"&LEN(A1)));1)="/";ROW(INDIRECT("A1:A"&LEN(A1)));0))+1;1000)

Tato část rozdělí řetězec na jednotlivé znaky, to co je ve vzorci jako text v uvozovkách neměnit!

MID(A1;ROW(INDIRECT("A1:A"&LEN(A1)));1)

(netestoval jsem v LO - úpravy v poslední době pozměnily chování funkce indirect.)

Offline

#6 22. 9. 2015 12:56:28

dvorak-a
Člen
Registrace: 21. 9. 2015
Příspěvků: 6

Re: Získání názvu souboru z url - VYŘEŠENO

bohužel tato funkce vrátí celou url, zkoušel jsem i / nahradit \\ a nic hmm

Offline

#7 22. 9. 2015 14:00:42

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

Re: Získání názvu souboru z url - VYŘEŠENO

Jak jsi to vložil do listu??

Je to maticový vzorec. Vkládá se trojhmatem, tj. stiskni na klávesnici ctrl a shift, drž stisknuté a pak stiskni enter.

Offline

#8 22. 9. 2015 14:09:22

dvorak-a
Člen
Registrace: 21. 9. 2015
Příspěvků: 6

Re: Získání názvu souboru z url - VYŘEŠENO

takto už funguje ale nezmění se parametry a je tedy všude název prvního souboru

Editoval dvorak-a (22. 9. 2015 14:31:59)

Offline

#9 22. 9. 2015 20:01:04

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

Re: Získání názvu souboru z url - VYŘEŠENO

Otestujte tohle :
Funkce a makro - lze je spouštět jako vzorce

Editoval neutr (22. 9. 2015 20:03:15)


Moje e-mailová adresa
Pokud je Váš problém vyřešen, označte prosím svůj příspěvek za "VYŘEŠENÝ"
Zlepšíte orientaci při vyhledávání řešení JAK OZNAČIT TÉMA ZA VYŘEŠENÉ

Offline

#10 22. 9. 2015 20:26:19

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

Re: Získání názvu souboru z url - VYŘEŠENO

Těžko se něco radí, když se musí hádat, co jste asi dělal.

Předpokládám, že jste maticový vzorec kopíroval tažením za pravý dolní okraj.

To lze, ale je nutné při tom stisknout ctrl.

Nebo lze buňku se vzorcem vybrat, ctrl-c, vybrat cilovou oblast buněk a ctrl-v.

Offline

Zápatí