jak najít složku a změnit její název pomocí formuláře

Programy pro práci v kanceláři (Word, Excel, Access…=>Office)

Moderátor: Mods_senior

crgo77
Level 1
Level 1
Příspěvky: 68
Registrován: duben 14
Pohlaví: Muž
Stav:
Offline

jak najít složku a změnit její název pomocí formuláře

Příspěvekod crgo77 » 04 srp 2014 02:45

Zdravím všechny,prosím o pomoc.
S pomocí tohoto fóra jsem téměř zprovoznil databázi, která využívá excelu.
V současné době ale v této databázi řeším problém,se kterým si nevím rady.Pokusím se popsat můj problém.
1)Pomocí formuláře mohu upravit řádek který má 16 sloupců.Tři z nich se používají jako názvy složek.
2)S těmito názvy složek jsou spřaženy hypertextové odkazy v jiných třech sloupcích-kliknutí na tento odkaz otevře "průzkumníka" a tuto složku.

Nyní můj problém.

Někdy se kolegům stane,že špatně zadá název složky a potřebuje ji přejmenovat,to je ale bohužel zjištěno až po uložení.
Tím mi nastane problém - musím přejmenovat dotyčnou (špatně pojmenovanou složku),upravit její název v patřičném sloupci a navíc ještě upravit odkaz na tuto složku.
Nevím,jestli to bude možné udělat,ale pokouším se o to,abych byl schopen tuto složku přejmenovat,bohužel se mi to ale nedaří.
Názvy těch složek Dokážu načíst do formuláře-do textového pole,ale tato pole mám uzamčena proti přepisu(z důvodu vytvoření odkazu).

Nevěděl by někdo jak na to? Jak najít složku a dokázat ji přejmenovat + upravit odkaz na tuto složku?

Doufám,že jsem můj problém popsal dostatečně.

Předem děkuju všem za rady.

Reklama
guest
Pohlaví: Nespecifikováno

Re: jak najít složku a změnit její název pomocí formuláře

Příspěvekod guest » 04 srp 2014 09:42

A teď se dvacet lidí bude snažit z vaší hromady slov vysypané z klávesnice a dotazu bez obrázku, sešitu s příkladem atd. vytvořit zadání... Popsal jste to dostatečně - nesrozumitelně.

Nechat uživatele přejmenovávat stávající složku v operačním systému a čekat, že na to zareaguje program, je prostě nesmysl. Neexistuje mezi nimi vazba.
Obsluhovat pár buněk z formuláře je zpravidla volovina.
Excel nezná jen natvrdo sestavený hypertextový odkaz, obsahuje i funkci k tomuto účelu, která zvládá slepování odkazu.
Ano, programově dokážete z VBA složky vytvářet, testovat existenci, přejmenovávat, mazat. Postará se o to převážně vypůjčený model FSO a ne nebudu tu dávat desítky příkladů, když nevím, jestli je to to, co potřebujete.
Vaše zamykaní/odemykání nechápu, i kdybych se rozkrájel.
Je hezké, že používáte česká slova jako "spřaženy", ale srozumitelnosti zadání to nepřidalo.
KDO nebo CO mění složku, JAK, KDY a KDE, případně PROČ? Věnujte úsilí podstatnému - jaký smysl má v zadání, že máte řádek se 16 sloupci?

crgo77
Level 1
Level 1
Příspěvky: 68
Registrován: duben 14
Pohlaví: Muž
Stav:
Offline

Re: jak najít složku a změnit její název pomocí formuláře

Příspěvekod crgo77 » 12 srp 2014 11:08

Zdravím všechny,

po dlouhém zkoušení a dohledávání mr.googlem vsem vytvořil co jsem potřeboval (není to přesně tak jak jsem chtěl,ale funguje to jak potřebuju).

V příloze je userform s kódem,který používám já.Je to doplněno i o optionbutton,které používám v mé databázi.

Kód využívá načítání pří spouštění okna a poté je možné složku (její přesné umístění je zřejmé ve vba kódu) přejmenovat a dokonce i následně vytvořit
odkaz na tuto složku.
Vkládám sem můj výtvor,kdyby někdo někdy potřeboval něco podobného. ( kód je sice bez komentářů,ale je to myslím si celkem srozumitelně napsané).

P.S.: Když jsem psal o uzamčených textových polích,myslel jsem tím,že když načítám tabulku a při načtení obsahuje text,tento text nelze přepisovat,pokud text neobsahuje,je možné do tohoto pole zapisovat.
Přesto děkuji za pomoc.
Přílohy
prejmenovani.xlsm
(20.67 KiB) Staženo 17 x

guest
Pohlaví: Nespecifikováno

Re: jak najít složku a změnit její název pomocí formuláře

Příspěvekod guest » 14 srp 2014 22:54

Inu, nevím jak to má fungovat, takže vám poradím jen podívat se po Select..Case namísto většiny ElseIf a prvky pro hromadné ovládání seskupovat do prvku Frame, nebo si naštudovat vlastnost GroupName. Kdyby někdo potřeboval něco, o čem nebude vědět zhola nic, ať to použije. Četl jste si to vaše P. S.? Jak říct slušně, aby to nevyznělo arogantně, že je to totální blábol?

crgo77
Level 1
Level 1
Příspěvky: 68
Registrován: duben 14
Pohlaví: Muž
Stav:
Offline

Re: jak najít složku a změnit její název pomocí formuláře

Příspěvekod crgo77 » 17 srp 2014 14:17

Zdravím,
je mi jasné,že každý,kdo se v programování v exceu vyzná víc než já,napsal by to úplně jinak a určitě mnohem jednodušším způsobem.
Mé znalosti jsou bohužel dost omezené,ale neustále se snažím učit - když mi to čas dovolí,hledám na internetu i zde na fóru a učím se z toho co zde jiní navrhují.
Přesto děkuji za rady,které jsem zde našel.

Tím uzamčením textového pole jsem myslel:

Kód: Vybrat vše

With UserForm1.TextBox1
If IsEmpty(Range("A" & ActiveCell.Row)) Then
.Locked = False
Else:
.Text = Range("A" & ActiveCell.Row).Value
.Locked = True
End If
End With


Proto jsem nevěděl jak to zakomponovat do stávajícího kódu,který jsem měl.

guest
Pohlaví: Nespecifikováno

Re: jak najít složku a změnit její název pomocí formuláře

Příspěvekod guest » 20 srp 2014 16:10

Problém není ve znalostech a návrhu řešení,ale neschopnosti slovně popsat problém.

With UserForm1.TextBox1
If IsEmpty(Range("A" & ActiveCell.Row)) Then
.Locked = False
Else:
.Text = Range("A" & ActiveCell.Row).Value
.Locked = True
End If
End With


Slovně:
Jestliže je buňka ve sloupci A aktivního řádku prázdná, pak zpřístupni textové pole, v opačném případě do pole vepiš obsah buňky a zablokuj jej. Problém je kde?


  • Mohlo by vás zajímat
    Odpovědi
    Zobrazení
    Poslední příspěvek

Zpět na “Kancelářské balíky”

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 1 host