Zavrieť

Porady

Spustenie VBA makra potvrdením ENTER

Dobrý deň, vie mi niekto poradiť alp spustiť makro tak, že po napísaní textu a potvrdením klávesou ENTER sa spustí MAKRO VBA EXCEL ? Teraz spúšťam makro samostatným ovládacím tlačítkom ale bolo by to konfortnejšie, keby sa makro spustilo jednoduchšie po stalačení ENTER.
Môžem poslať aj Excel súbor s makrom .
Pravidlá a tipy
  • Každý móže napísať len 1 odpoveď. Neskor mozete svoju odpoveď vylepšiť.
  • Odpoveď má priniesť riešenie na otázku, vyvarujte sa hodnotenia otázky.
  • Odpoveď má byť viac o faktoch ako o názoroch.
Dalšie pravidla a tipy
    Ak potrebujete v otázke niečo upresniť, najskôr sa spýtajte na podrobnosti.
    Koncept slúži na uloženie rozpracovanej odpovede, koncept sa zobrazuje len Vám, až kým ho nezverejníte.
    Ak máte podobnú otázku, založte Novú otázku alebo Súvisiacu otázku.
    ❤ Buďte priateľskí ❤
    Sme súčasťou jednej komunity, ktorá si chce vzájomne pomáhať, rozdieľnosť je vítaná ak neubližuje!
    Usporiadať podľa času

    PaloPa je offline (nepripojený) PaloPa

    PaloPa
    V Exceli to funguje trochu inak.

    Ak treba zachytiť stlačenie konkrétneho tlačidla, treba použiť metódu OnKey. (najlepšie pri aktivácii zošita - viď obrázky)

    Private Sub Workbook_Activate()
    Application.OnKey "{ENTER}", "myMacro"
    'numericka klav
    Application.OnKey "~", "myMacro"
    'velky ENTER
    End Sub

    Druhý parameter je meno funkcie (definovaná v časti MODULE), ktorá sa spustí po stlačení klávesy.

    DOPLNENIE:
    Niečo podobné sa tu už riešilo, t.j. pozastavenie makra, ktoré pokračuje až po zadaní niečoho do bunky:
    http://www.porada.sk/t211322-makro-excel.html

    Sú tam použité Sendkeys.
    !!! pre Excel 2003 nemusia Sendkeys pracovať vo Win7 a Win8,
    Musí byť vypnuté UAC - dá sa nastaviť v registri cez REGEDIT
    viď tento link (posl príspevok)

    P.
    Naposledy upravil PaloPa : 10.06.13 at 19:08
    Test_Enter-1.JPG  
    Test_Enter-2.jpg  
    1/1

    sthruska je offline (nepripojený) sthruska

    sthruska
    Nie je to vo VBA, ale na inšpiráciu

    procedure TfrmBlock.cbbSVBKeyPress(Sender: TObject; var Key: Char);
    begin
    if Key = #13 then
    begin
    Key := #0;
    end;
    end;

    Jednoducho povedané, budeš si testovať stlačené klávesy a keď to bude enter (#13) tak makro spustíš.

    Pakrako je offline (nepripojený) Pakrako

    dôchodca, samouk v Exceli Pakrako
    Dobrý deň, ďakujem za riešenie , ale kde dám názov makra , ktoré sa má spustiť ?

    sthruska je offline (nepripojený) sthruska

    sthruska
    V danej bunke musíš odchytávať stlačenie klávesu a zistiť si jeho hodnotu. Pri #13, čo je enter, spustíš to makro. Čiže tam, kde som ja napísal Key := #0;

    Pakrako je offline (nepripojený) Pakrako

    dôchodca, samouk v Exceli Pakrako
    Žialbohu si neviem s tým poradiť ,ale aj tak ďakujem !
    Takto som napísal makro
    Sub Klav_ENT()
    procedure TfrmBlock.cbbSVBKeyPress(Sender: TObject; var Key: Char);
    'begin
    if Key = #13 then
    'Call Makro ======>>> tu som zadal volanie makra , ale nejde to !!
    Else
    Key = #0 Then
    Call Hladaj_meno

    End If
    End Sub

    marjankaj je offline (nepripojený) marjankaj

    I am a man marjankaj
    Spustenie makra klávesou ENTER je veľmi nepraktické. ENTEr má viac funkcií, ktoré by si tým zablokoval.
    Lepšie je využiť klávesové skratky na spustenie konkrétneho makra Napríklad CTRL+m.

    Spustenie VBA makra potvrdením ENTER

    Porady, ktoré by vás mohli zaujímať

    Prihláste sa a sledujte len tie Porady, ktoré Vás zaujímajú.