< návrat zpět

MS Excel


Téma: - rss

Zaslal/a 15.6.2015 11:23

Ahoj,
mám 30 jmen a ke každému jménu přísluší jeden list v excelu. Jde vytvořit nějaká možnost výběru, kde si z těch 30 jmen vyberu jedno a excel mě přesměruje na ten správný list?
Děkuju :)

Zaslat odpověď >

#025553
elninoslov
EDIT:
Upravil som prílohu, teraz tam máte ešte okrem Hypertextového odkazu v riadkoch (A1:A30), aj hypertextový odkaz B1, ktorý sa počíta pomocou výberového zoznamu C1. Teraz ten výberový zoznam berie mená z A1:A30, ale to si môžete kľudne schovať na nejaký list, a budú použité len 2 bunky B1 a C1 (alebo adekvátne)
Příloha: rar25553_odkaznalist2.rar (16kB, staženo 29x)
citovat
#025554
avatar
To je přesně to, co jsem potřebovala (buňky B1, C1). Můžu poprosit ještě o nějaký stručný návod?citovat
#025555
avatar
Už jsem na to přišla, moc děkuju za rychlou odpověď.citovat
#025557
elninoslov
V Exceli nieje možné urobiť zoznam listov pomocou vzorcov. Ak nechcete alebo nemôžete použiť makrá, máte iba jedinú možnosť. Ručne si udržiavať menný zoznam listov. Ak chcete a/alebo môžete používať makro, tak Vám napíšem kód, ktorý Vám ten zoznam urobí. Napr. vytvorte si nový list, ktorý si nazvite napr. ZoznamListov.
1.a ) Do tohoto listu napíšte od bunky A1 dole zoznam všetkých listov na ktoré sa budete chcieť prepínať.
1.b ) Zoznam práve používaných listov Vám tam vloží makro.

2.a) Do listu, kde chcete mať to prepínanie si rozvrhnite, kde chcete mať výberový zoznam, a kde hyperlinkový odkaz. Označte bunku kde bude výberový zoznam, a na karte Údaje, kliknite na Overenie údajov, tam vyberte v poli Povoliť položku Zoznam. Do poľa Zdroj zadajte tento vzorec, ktorý Vám vypočíta zaplnenú oblasť s menami v liste ZoznamListov
=OFFSET(ZoznamListov!A1;;;COUNTA(ZoznamListov!A:A);)
COUNTA spočíta zaplnené bunky v stĺpci A, a OFFSET zväčší oblasť od A1 o tento počet.
2.b) Do toho listu, v ktorom budete prepínať, vložte do bunky, na ktorú budete klikať tento vzorec :

=HYPERLINK(MID(CELL("filename");SEARCH("[";CELL("filename")); SEARCH("]";CELL("filename"))-SEARCH("[";CELL("filename"))+1)&"'"&$C$1&"'!$A$1";"Prejdi na")

pričom "Prejdi na" si nahraďte za čo chcete, a $C$1 nahraďte za adresu bunky so zoznamom (z kroku 2.b)

3. Toto si nevšímajte, to zisťuje názov zošitu, potrebný pre fungovanie hyperlinku

MID(CELL("filename");SEARCH("[";CELL("filename")); SEARCH("]";CELL("filename"))-SEARCH("[";CELL("filename"))+1)

Neviem, aký iný návod chcete.citovat
#025598
avatar
ja mam nieco taketo este z mojich zaciatkou s makrami, pouzivam bez zmeny dodnes.
Příloha: zip25598_menu.zip (17kB, staženo 27x)
citovat
#025620
elninoslov
Zoznam listov v Rozbaľovacom Zozname by som asi urobil takto :
Private Sub Worksheet_Activate()
Dim S As String, sh As Worksheet
For Each sh In ThisWorkbook.Worksheets
If IsError(Application.Match(sh.Name, Array("ABC"), 0)) Then S = S & sh.Name & ","
Next sh
S = Left(S, Len(S) - 1)
With Cells(8, 1).Validation
.Delete
.Add Type:=xlValidateList, Formula1:=S
End With
If IsError(Application.Match(CStr(Cells(8, 1)), Split(S, ","), 0)) Then Cells(8, 1) = Split(S, ",")(0)
End Sub

Pričom v tom ...Array("ABC")... majú byť čiarkami oddelené názvy listov, ktoré v zozname byť nemajú.
A ten posledný riadok zabezpečí, že pri aktualizácii, sa skontroluje, či hodnota, ktorá v zozname bola predtým, môže v zozname byť, ak nie tak sa vloží prvá zo zoznamu.
Tento kód by som dal do udalosti Activate toho listu, v ktorom je zoznam. Zabezpečí to aktualizáciu zoznamu listov pri každom aktivovaní listu.citovat

Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

Formulář Faktura

Formulář Faktura IV

Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.

Helios iNuvio

Používáte podnikový systém Helios iNuvio? Potřebujete pomoci se správou nebo vyvinout SQL proceduru? Více informací naleznete na stránce Helios iNuvio.

On-line nástroje