< návrat zpět

MS Excel


Téma: Makro, které vymaže ovládací prvky rss

Zaslal/a 2.4.2015 10:42

Dobrý den, potřebuji poradit s tímto problémem: Mám makro, které do listu vloží tři ovládací prvky.
Sub Makro1()
'
' Makro1 Makro
'

'
Range("A4").Select
ActiveSheet.CheckBoxes.Add(1.5, 45, 93.75, 17.25).Select
Selection.Characters.Text = "Zateplení"
With Selection
.Value = xlOff
.LinkedCell = "A4"
.Display3DShading = True
End With
Range("C4").Select
ActiveSheet.CheckBoxes.Add(96, 45, 91.5, 17.25).Select
Selection.Characters.Text = "Výměna zdroje"
With Selection
.Value = xlOff
.LinkedCell = "B4"
.Display3DShading = True
End With
Range("E4").Select
ActiveSheet.CheckBoxes.Add(191.25, 44.25, 99.75, 17.25).Select
Selection.Characters.Text = "Využití odpadního tepla"
With Selection
.Value = xlOff
.LinkedCell = "C4"
.Display3DShading = True
End With
Range("B2").Select
End Sub


Je podmíněně spouštěno dalším makrem na základě hodnoty v buňce B2. Když je B2="5.1" vloží se ovládací prvky.

Private Sub Worksheet_Change(ByVal Target As Excel.Range)

Dim VRange As Range

Set VRange = Range("B2") 'hlídaná buňka

If Union(Target, VRange).Address = VRange.Address Then

If VRange = "5.1" Then Call Makro1 'zavolá makro vase_makro


End If

End Sub

Nyní ale potřebuji, aby když se hodnota B2 změní, ovládací prvky zase zmizely. Zkoušel jsem přes záznam makra, ale nefunguje to

Zaslat odpověď >

#024362
avatar
....ještě doplňuji: nemám zkušenosti, nevím, zda raději vytvořit nové makro, které bude prvky mazat, nebo jestli je možné něco jako undo makra, případně zda to lze vyřešit úpravou spouštěcího makra...

Mohl by mi tedy někdo, prosím, poradit?
Děkuji.citovat
#024366
Hav-Ran
Zobrazovať a skrývať je možné formuláre s tlačítkami.
Na vymazanie skús do kódu dať

ActiveSheet.DrawingObjects.Select
Selection.Deletecitovat
#024371
elninoslov
Mám ti ten kód aj popísať ?
Tým "5.1" si asi myslel zadané číslo 5,1 (rozdiel v zápise Excel/makro - čiarka/bodka)
Prečo CheckBoxy vkladáš do A4,C4,E4 a LinkedCell dávaš nie pod nimi ale A4,B4,C4 ??? Upravil som to.
Toto by malo fungovať aj keď budú na liste iné CB ako tie tebou podmienene vytvorené.
Nastavuje to aj priesvitný formát textu TRUE/FALSE v LinkedCells.
Bude to fungovať, aj keď sa hodnota v B2 zmení inak ako Tvojou rukou, pričom sa uchová predtým použitý výber (Selection).
Celý hlavný problém je v tom, že potrebuješ uložiť niekde mená vytvorených CB Form (Ty nevytváraš CB ActiveX, ale CB Form), ktoré sa stále menia, ktoré budeš mať k dispozícii aj po znovuotvorení zošita (globálna premenná sa použiť nemôže). Ja som použil uloženie mien v Definovanom názve. Ďalšia možnosť je použiť pomocný list, či nejaký TXT súbor.
Žiadaj o prípadnú úpravu.
Příloha: rar24371_dynamickecheckboxy.rar (19kB, staženo 26x)
citovat
#024372
elninoslov
A ešte verzia so zapínaním a vypínaním Visible, pretože je veľký rozdiel, či ich potrebuješ dynamicky vytvárať a mazať, tak ako píšeš, alebo budú vytvorené permanentne a nemenne, len sa budú schovávať.
Pekný deň.
Příloha: rar24372_dynamickecheckboxy2.rar (20kB, staženo 30x)
citovat

Uživatelské menu

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

Menu

On-line nástroje

Formulář Faktura

Formulář Faktura IV

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

Aktivní diskuse