Hiperpovezava, dolžina podatka

Pomoč pri delu z MS Excelom
Odgovori
dragopre
Prispevkov: 105
Pridružen: To Dec 11, 2012 11:46 pm

Hiperpovezava, dolžina podatka

Odgovor Napisal/-a dragopre »

Pozdravljeni

V Excel prenašam povezavo na pripravljeno ruto v Google zemljevidu. Če je naslov povezava daljši od 256 znakov ostanek odreže.
Ali obstaja kakšna rešitev za ta problem?

Lep pozdrav, Drago
admin
Site Admin
Prispevkov: 3687
Pridružen: Sr Jul 20, 2005 10:06 pm

Re: Hiperpovezava, dolžina podatka

Odgovor Napisal/-a admin »

Pozdravljeni,

Excel ima zaradi zgodovinskih razlogov nekatere omejitve postavljene na 255 znakov. Ker ne vem kaj točno počnete in koliko znanja imate vam je nalažje, da URL-je razbijete na DVE ali več celic in potem postavite formulo:

Koda: Izberi vse

=hyperlink(A1&A2,"klikni me")
lp,
Matjaž Prtenjak
Administrator
dragopre
Prispevkov: 105
Pridružen: To Dec 11, 2012 11:46 pm

Re: Hiperpovezava, dolžina podatka

Odgovor Napisal/-a dragopre »

Sem probal, pa ne deluje.
Očitno funkcija HYPERLINK ne prenese daljšega naslova od 256 znakov.
Dokler je sestavljeni naslov dolg največ 256 znakov deluje, ko je pa znakov več, se pa v celici pojavi napaka napaka #VREDN!.

Lep pozdrav, Drago
admin
Site Admin
Prispevkov: 3687
Pridružen: Sr Jul 20, 2005 10:06 pm

Re: Hiperpovezava, dolžina podatka

Odgovor Napisal/-a admin »

Prilepite primer takšne dolge povezave, ki ne deluje
lp,
Matjaž Prtenjak
Administrator
dragopre
Prispevkov: 105
Pridružen: To Dec 11, 2012 11:46 pm

Re: Hiperpovezava, dolžina podatka

Odgovor Napisal/-a dragopre »

Sem pripravil kar en testni zvezek. Tule je povezava: https://www.dropbox.com/s/opk6sjft9k7lm ... .xlsx?dl=0

Lep pozdrav,
Drago
admin
Site Admin
Prispevkov: 3687
Pridružen: Sr Jul 20, 2005 10:06 pm

Re: Hiperpovezava, dolžina podatka

Odgovor Napisal/-a admin »

Pozdravljeni,

Res je. Ne deluje. Omejitev je c sami funkciji HyperLink in ne v Excelu kot takem.

Glede na zapisano torej ne vidim druge, kot uporaba makra. Prilagam makro, ki bo sprožil povezavo če dvokliknete celico G7. Kot vidite je povezava zalo dolga, torej daljša kot 255 znakov in deluje.

Koda: Izberi vse

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
  If Not Intersect(Target, Range("G7")) Is Nothing Then
    ActiveWorkbook.FollowHyperlink ("https://www.google.si/maps/dir/RAMNA+SLIVNI%C5%A0KO+JEZERO,+Rakitovec+1,+3263+Gorica+pri+Slivnici/Loka+pri+%C5%BDusmu,+3223/Podsreda,+3257/REPNICE+NAJGER,+ALJO%C5%A0KA+NAJGER+RUNTAS,+Brezovica+na+Bizeljskem+32,+8259+Bizeljsko/%C5%BDupjek,+8259+Bizeljsko/Brod+na+mostecu,+Mostec+50,+8257+Dobova/@46.0424037,15.4303014,11z/data=!3m1!4b1!4m37!4m36!1m5!1m1!1s0x47659db363a5c8a5:0xc0f8f31f70090d32!2m2!1d15.4430661!2d46.1873398!1m5!1m1!1s0x4765996488102cf5:0x48fe7d88fc87b65!2m2!1d15.5149185!2d46.1584826!1m5!1m1!1s0x4765bdbdc32f05f1:0x976c441f652bf1b2!2m2!1d15.5898169!2d46.0397136!1m5!1m1!1s0x4765bf138b2544fd:0x33d2639fa5dffa56!2m2!1d15.6831494!2d45.9976364!1m5!1m1!1s0x4765bf0856ff6b83:0x633212974e3a684a!2m2!1d15.6839257!2d46.0095078!1m5!1m1!1s0x4765b78c5a97620d:0xd37f5c742380a37a!2m2!1d15.6270198!2d45.8962674")
  End If
  Cancel = True
End Sub
lp,
Matjaž Prtenjak
Administrator
dragopre
Prispevkov: 105
Pridružen: To Dec 11, 2012 11:46 pm

Re: Hiperpovezava, dolžina podatka

Odgovor Napisal/-a dragopre »

Pozdravljeni!

Najprej hvala za nasvet. Sem uporabil in deluje, ampak:

Namesto s konstanto sem v ukaz ActiveWorkbook.FollowHyperlink zapisal naslov s spremenljivko ali kot vsebino celice. Tudi to deluje.
Ker pa so se občasno še pojavile napake, sem pa malo potestiral in štel znake, ugotovitev pa je:

Ukaz deluje dokler je dolžin podatka (naslova) manjša ali enaka od 1034, pri daljših pa ne.
Nekam čudna omejitev se mi zdi 1034. Saj 16,256,1024, .. so mi znane, ..

Sedaj vsaj vem. Kontroliram dolžino in reagiram.

Pa še zanimivost.
Če pri teh zelo dolgih spletnih naslovih (za Google zemljevid, planirano traso) odrežem kar dobršen del na koncu, mi kljub vsemu pokaže pravi zemljevid oziroma turo.
Problem pa je, ker ne vem pravila, kaj in koliko lahko odrežem.
No, pa to ni več Excel.

Še enkrat hvala in lep pozdrav
Drago
Odgovori