Eli, mikä on paras tai kätevin keinio ottaa vb-makro käyttöön tai pois päältä?
Ajatus olisi, että painonapilla voisi valita makron päälle ja käyttää sen tuomia ja tarjoamia ominaisuuksia. Tarpeen jälkeen sen voisi toisella painonapilla ottaa pois käytöstä ja käyttää exceliä ns. "normaaliin tapaan" -kuin makroa ei olisi olemassakaan.
Toisin sanoen;
makro päälle -nappi
makro pois päältä -nappi
Ajatus olisi, että painonapilla voisi valita makron päälle ja käyttää sen tuomia ja tarjoamia ominaisuuksia. Tarpeen jälkeen sen voisi toisella painonapilla ottaa pois käytöstä ja käyttää exceliä ns. "normaaliin tapaan" -kuin makroa ei olisi olemassakaan.
Toisin sanoen;
makro päälle -nappi
makro pois päältä -nappi
Vastaukset 8
Vanhimmat
Laita sivulle CheckBox "Käytä makroja" ja makrojen koodit IF-lauseeseen.
Sub Makro()
If CheckBox1.Value Then
koodi
End If
End Sub
Kiitos, pitänee treenata.
Miten olis oikea tapa toteuttaa tuo CheckBoxin toiminta, kun vb-koodilla on samaan aikaan useita toimintoja toteutettu tyyliin: target "sitä", target "tätä", target "tota" ?
Pystyykö siis noita eri toimintoja poimimaan erikseen päälle/pois CheckBoxilla?
Sinulla on Worksheet_Change, Worksheet_SelectionChange aliohjelma jotka päivittää sivun sistätöä? Varmaankin toimisi, että teet monta CheckBox:ia, joilla valitset käytössä olevat toiminnot. Aliohjelmassa olisi vastaavat if-lauseet. Jos toiminnoilla on jokin hierarkia ("sitä" ei voi tehdä ilman "tätä"), on tämä hyvä ottaa huomioon CheckBox:ien toiminnoissa ("sitä" on ei voi valita ellei "tätä" ole valittu, tai jos valitset "sitä", myös "tätä" tulee valituksi)
Joo kyllä näyttäisi Worksheet_SelectionChange olevan.
Jos jummarsin oikein tekstisi, niin en voi siis poimia "koodin seasta" yksittäistä toimintoa ja ohjata sitä CheckBoxilla.
Kokeilinkin koko vb koodin poistamista ja taas sen lisäämistä takaisin makrolla. En saanut toimimaan, eikä se varmaan voikaan onnistua. Ehkä.
Joo onnistuihan se. Tänks ohjeesta.
Taas kannatti udella täältä. :)
2 viikkoa taas oltu bannissa, joten eipähän oo voinut vastailla...
worksheetin aatapahtuma makroissa voi hyvinkin tsekata erilaisia tapahtumia. Esim. jos solun arvo muuttuu jne.
turha siihen mitään checkboxeja on sotkea vaan käyttää solun arvoja(kaavojen tuloksia)
Worksheetin eri tapahtumamakroissa esim. jos A1 muuttuu ja B1arvoaa tsekataan eri toimintaa varten...
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A1")) Is Nothing And Range("B1") = 1 Then
MsgBox "suoritetaan makrojutut 1"
End If
If Not Intersect(Target, Range("A1")) Is Nothing And Range("B1") = 2 Then
MsgBox "suoritetaan makrojutut 2"
End If
End Sub
Keep EXCELing
@Kunde
Mikä vika CheckBoxeissa on?
comppaan "pimpelipompelia".. mitä vikaa CB:ssa on. kundepuulla on varkulla joku ajatus tuossa, jota en hokaa. millä muuten noita ohjataan.. en kait hokaa niitä?
toi CB toimii mulla näppärästi, ton kundenkin vois haluta toimimaan, mut miten?