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.
jak najít složku a změnit její název pomocí formuláře
-
- Pohlaví:
Re: jak najít složku a změnit její název pomocí formuláře
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?
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?
Re: jak najít složku a změnit její název pomocí formuláře
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.
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
-
- Pohlaví:
Re: jak najít složku a změnit její název pomocí formuláře
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?
Re: jak najít složku a změnit její název pomocí formuláře
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:
Proto jsem nevěděl jak to zakomponovat do stávajícího kódu,který jsem měl.
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.
-
- Pohlaví:
Re: jak najít složku a změnit její název pomocí formuláře
Problém není ve znalostech a návrhu řešení,ale neschopnosti slovně popsat problém.
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?
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
-
- 8
- 2970
-
od ArtisPier
Zobrazit poslední příspěvek
09 říj 2023 19:15
-
- 4
- 330
-
od petr22
Zobrazit poslední příspěvek
02 kvě 2024 13:59
-
-
Jak hromadně změnit datum a čas souborů?
od atari » 11 črc 2023 14:41 » v Programování a tvorba webu - 3
- 2575
-
od X
Zobrazit poslední příspěvek
14 črc 2023 15:17
-
-
- 13
- 134
-
od zeus
Zobrazit poslední příspěvek
před méně než minutou
-
-
Teamviewer - jak ovládat gps (pc) pomocí vzdálené podpory
od Antonín » 27 bře 2024 14:35 » v Vše ostatní (sw) - 3
- 1737
-
od Antonín
Zobrazit poslední příspěvek
15 dub 2024 13:06
-
Kdo je online
Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 4 hosti