+ Rispondi al Thread
Visualizzazione dei risultati da 1 a 9 su 9

Discussione: rimuovere esecuzione macro tasto invio

  1. #1
    principiante non è in linea Novello
    Post
    34

    rimuovere esecuzione macro tasto invio

    Salve a tutti
    ho un file di excel con alcune macro.
    una di esse viene eseguita ogni volta che premo il tasto invio in seguito a modifica del valore di qualunque cella.
    vorrei disabilitare l'esecuzione delle macro con la pressione del tasto invio ma non sono riuscito a trovare nulla al riguardo.
    sapete aiutarmi?
    grazie

  2. #2
    Sgrubak non è in linea Scolaretto
    Luogo
    Torrazza Piemonte
    Post
    388
    Che io sappia, non è possibile associare l'esecuzione di una macro alla pressione del tasto [Invio]. Ci ho appena provato e le uniche combinazioni accettate sono quelle con i caratteri alfanumerici.
    Devi verificare che la macro in questione non sia associata ad uno degli eventi del foglio di lavoro, ad esempio Change, SelectionChange o Calculate...

    Edit:
    Mi correggo da me. L'associazione è possibile tramite il metodo Application.OnKey.
    Ultima modifica di Sgrubak; 12-12-2019 10:27 

  3. #3
    principiante non è in linea Novello
    Post
    34
    ti garantisco che al variare del valore in una qualsiasi cella alla pressione del tasto invio esegue la macro.
    la macro è

    codice:
    Sub Sorteggio()
        Range("d6:d31").Select
        Selection.Copy
        ActiveSheet.Paste
        Selection.Font.ColorIndex = 1
        Range("A1").Select
        Application.SendKeys "{ESC}"
    End Sub
    dove sorteggio è il nome del tasto che deve eseguire la macro (e la esegue quando lo "pigio")
    il file è un modello .xltm
    la cosa strana è che appena aperto funzione regolarmente (macro eseguita alla pressione del tasto "sorteggio").
    ma dopo la prima esecuzione si esegue ad ogni cambio di valore di qualunque cella
    Ultima modifica di AntonioG; 12-12-2019 10:42  Motivo: Il codice tra tag CODE

  4. #4
    Ferrari_and non è in linea Scolaretto
    Post
    236
    Dal comportamento che descrivi sembra che il pulsante Estrai Rimanga attivo / selezionato e che ogni volata che premi Enter questo lo senta come se venisse premuto.

    Prova a verificare che non ci sia qualche impostazione sul pulsante.

  5. #5
    principiante non è in linea Novello
    Post
    34
    ho provato anche ad eliminare il pulsante ed a crearne uno nuovo ma il problema rimane.

    come posso allegare il file?

  6. #6
    Sgrubak non è in linea Scolaretto
    Luogo
    Torrazza Piemonte
    Post
    388
    Quote Originariamente inviato da principiante Visualizza il messaggio
    ti garantisco che al variare del valore in una qualsiasi cella alla pressione del tasto invio esegue la macro...
    Non ne ho mai dubitato. Ho solo specificato che è difficile che la macro venga eseguita alla pressione del tasto, ma che è più probabile che sia associata ad un evento del foglio di lavoro
    Quote Originariamente inviato da principiante Visualizza il messaggio
    ...ho provato anche ad eliminare il pulsante ed a crearne uno nuovo ma il problema rimane...
    Rafforza la mia convinzione che tu abbia un evento gestito. Eliminare il pulsante, non elimina la Sub associata. Devi capire dove e quando questa sub [Sorteggio] viene richiamata. Il fatto che tu in apertura dica: "premo il tasto invio in seguito a modifica del valore di qualunque cella", lascia presupporre che intervenga uno degli eventi che ti ho suggerito nella mia prima risposta.

    Guarda se tra questi viene richiamata la routine.

  7. #7
    principiante non è in linea Novello
    Post
    34
    ho eliminato completamente la sub e viene eseguita ugualmente la macro. chissà dove l'avrò salvata in una precedente vita.
    ho anche nell'ordine.
    copiato in un altro file nuovo senza copiare i tasti e viene eseguita la routine;
    copiato anche i tasti si esegue la routine ma cliccando sui pulsanti non trova la macro;
    la routine si esegue anche andando indietro o avanti per ripristinare i passaggi precedenti o successivi
    il file era stato creato diversi anni fa, vado a memoria ma il problema mi dovrebbe essere sorto con Office2016
    forse si tratta di un'altra macro che non so dove sia e che non so come e perchè ma viene richiamata

    va a finire che ho autocreato e mi sono autoinfettato con un virus

  8. #8
    Marius44 non è in linea Scolaretto
    Luogo
    Catania
    Post
    330
    Buon pomeriggio a tutti
    La cosa mi ha incuriosito e la butto lì.

    Hai provato a vedere se c'è del codice in Questa_cartella_di_lavoro?
    e nella cartella Personal.xlsb? Eventualmente per trovarla nella Finestra Immediata digita: ?Application.StartupPath e premi invio.

    Ciao,
    Mario

  9. #9
    Sgrubak non è in linea Scolaretto
    Luogo
    Torrazza Piemonte
    Post
    388
    Quote Originariamente inviato da principiante Visualizza il messaggio
    ho eliminato completamente la sub e viene eseguita ugualmente la macro...
    Questo è strano... Non dovrebbe nemmeno compilare e darti errore.

    Aggiungo al suggerimento di Marius, di verificare anche la presenza di eventuali componenti aggiuntivi abilitati.

+ Rispondi al Thread

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi