Nuolinäppäinohjaus VBA:lla

Worra

Millä koodinpätkällä saadaan nuolinäppäimet määriteltyä tekemään jotain tapahtumaa? Esim. NuoliYlös-painallus aiheuttaa tietyn tapahtuman jne. Normistihan nuolinäppäimillä Excell-taulukon soluvalinta liikkuu, eli normikäytös pois ja tilalle oma koodi.

5

186

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • taulukon moduuliin...

      Option Explicit

      Private Sub Worksheet_SelectionChange(ByVal Target As Range)
      Application.OnKey "{RIGHT}", "Oikealle"
      Application.OnKey "{LEFT}", "Vasemmalle"
      Application.OnKey "{UP}", "Ylös"
      Application.OnKey "{DOWN}", "Alas"
      End Sub

      tavalliseen moduuliin...(koodin pätkät resetoinnille ja käytöstä poistoon kanssa)

      Option Explicit

      Sub Oikealle()
      MsgBox "oikealle"
      End Sub
      Sub VAsemmalle()
      MsgBox "vasemmalle"
      End Sub
      Sub Ylös()
      MsgBox "ylös"
      End Sub
      Sub Alas()
      MsgBox "alas"
      End Sub
      Sub Poistaakäytöstä()
      Application.OnKey "{RIGHT}", ""
      Application.OnKey "{LEFT}", ""
      Application.OnKey "{UP}", ""
      Application.OnKey "{DOWN}", ""
      End Sub
      Sub Resetoi()
      Application.OnKey "{RIGHT}"
      Application.OnKey "{LEFT}"
      Application.OnKey "{UP}"
      Application.OnKey "{DOWN}"
      End Sub

      Keep EXCELing
      @Kunde

      • Worra

        Kiitos! Hetken sovellettuani koodia se toimii juuri kuten halusin. :)


      • Worra
        Worra kirjoitti:

        Kiitos! Hetken sovellettuani koodia se toimii juuri kuten halusin. :)

        Lisään vielä.. soluvalinta liikahtaa kerran ennenkuin omat nuoliohjaukset alkavat toimimaan, mutta kun resetointikoodiin lisää esim.

        ActiveSheet.Range("A1").Select

        niin nuolinäppäimet pelittävät heti ekasta painalluksesta omalla koodilla. "A1" paikalla voi tietty olla mikä muu solu tahansa.


    • Worra

      Ettei lisäykset lopu ..

      Soluvalinta täytyykin tehdä kahdesti, että nuolet pelittää heti, eli esim..

      ActiveSheet.Range("B1").Select

      ActiveSheet.Range("A1").Select

    • ei tartte kikkailla kun lisäät

      ThisWorkbook moduuliin...

      Sub Auto_Open()
      Application.OnKey "{RIGHT}", "Oikealle"
      Application.OnKey "{LEFT}", "Vasemmalle"
      Application.OnKey "{UP}", "Ylös"
      Application.OnKey "{DOWN}", "Alas"
      End Sub

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Persut ja Tall poppy -syndrooma

      Persut ovat uhranneet käytännössä koko elämänsä lannistaakseen tai sabotoidakseen yksilöitä, jotka erottuvat joukosta ky
      Maailman menoa
      7
      4815
    2. Oot mahtava tyyppi

      En tiedä luetko palstaa. Koitan siitä huolimatta. Oot mun mielestä tosi erityinen tyyppi. Nopeesti taisin ihastua. Jot
      Ikävä
      44
      4704
    3. Orpo: Seuraavalla hallituksella ei ole yhtään enempää rahaa

      Valtiovarainministeriön virka-arvion mukaan julkisen talouden sopeutuksen tarve on noin kymmenen miljardia euroa ensi va
      Maailman menoa
      180
      3845
    4. Suomen kieli hiipuu vähitellen Vantaalla

      nykytahdilla jo joka kolmas vantaalainen on vieraskielinen 2030-luvun alussa. Maahanmuutto, suomalaisten alhainen synty
      Maailman menoa
      42
      3613
    5. Miksi vihereät ja vasemmisto haluavat tuhota tämän maan?

      He halusivat, että kannabis tulisi lailliseksi? - eikö kylliksi nuoria tuhota jo nyt huumeilla? - kannabis tuhosi minun
      Maailman menoa
      113
      3574
    6. Sofia servasi Pikku-Villen suvereenisti

      – Ihanko tosissaan tuleva sosiaali- ja terveysministeri hyökkää oppositiopuolueen puheenjohtajaa vastaan siksi, että täm
      Maailman menoa
      64
      3070
    7. Kun puolustusvoimat on huolissaan nuorison huonosta kunnosta

      ajatellen varusmiespalvelusta(kun moni joutuu keskeyttään), niin johan tuli joku yliopiston vasemmistonainen selittään,
      Maailman menoa
      111
      2022
    8. Ikävän karkoitukseen klassikkokysymys

      Mikä biisi saa hymyn huulille ja ajatukset mukavasti siihen yhteen ja ainoaan? 🤩 Laita biisin sanat, älä linkkiä. Alo
      Ikävä
      12
      1090
    9. Elämäni rakkaus

      Sitä sinä olet minulle ollut. Siksi tämä on kai niin vaikeaa. Jos sinä luopuisit niin ehkä se tulisi luonnostaan sitten
      Ikävä
      63
      897
    10. Millainen mulle

      Sitten sopisi?
      Ikävä
      93
      812
    Aihe