Esecuzione macro con tasto rapido

Anonimo
2011-06-15T16:41:51+00:00

Salve.

In una cartella di lavoro, ho assegnato dei tasti rapidi a varie macro perfettamente funzionanti.

Ora mi sono però accorto casualmente, che digitando i suddetti tasti rapidi, la macro parte anche se sto lavorando in una cartella di lavoro diversa, con ovvi problemi.

E' possibile far si che i tasti rapidi lancino la macro solo relativamente alla cartella di lavoro che la contiene e sulla quale sto lavorando, e non anche le macro di una seconda cartella di lavoro aperta?

Spero di essere stato chiaro. Grazie per le risposte. Ciao

Microsoft 365 e Office | Excel | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

Risposta accettata dall'autore della domanda

Anonimo
2011-06-17T09:23:30+00:00

Ciao, grazie per l'attenzione.

 

Ho letto attentamente il tuo suggerimento, ma le macro (in parte registrate, ma in parte create da me) sono salvate regolarmente nelle singole cartella di lavoro). Ho visto l'opzione di cui parli nel registratore macro (Memorizza macro in:) ed ho sempre usato "Questa cartella di lavoro".

Infatti in Progetto-VBAProject sono elencati i miei files aperti, e le macro sono "sotto" le relative cartelle "Moduli". Nessun Personal.xls, nè in vb editor, nè trovato file con il "cerca" in tutto il PC.

Altre idee?

Grazie, ciao.

Se(se)  due o più files sono aperti contemporaneamente nella stessa Application, condividono il vba. Metti una discriminante nella macro, una cosa tipo:

Public Sub m()

    If ActiveWorkbook.Name <> ThisWorkbook.Name Then Exit Sub

    MsgBox "Ciao"

End Sub

Se il Workbook attivo non è quello dove la macro è contenuta, non viene eseguita la MsgBox.

La risposta è stata utile?

0 commenti Nessun commento

6 risposte aggiuntive

Ordina per: Più utili
  1. Anonimo
    2011-06-17T09:16:40+00:00

    Ciao, grazie per l'attenzione.

    Ho letto attentamente il tuo suggerimento, ma le macro (in parte registrate, ma in parte create da me) sono salvate regolarmente nelle singole cartella di lavoro). Ho visto l'opzione di cui parli nel registratore macro (Memorizza macro in:) ed ho sempre usato "Questa cartella di lavoro".

    Infatti in Progetto-VBAProject sono elencati i miei files aperti, e le macro sono "sotto" le relative cartelle "Moduli". Nessun Personal.xls, nè in vb editor, nè trovato file con il "cerca" in tutto il PC.

    Altre idee?

    Grazie, ciao.

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2011-06-17T09:05:58+00:00

    Ciao, grazie per l'attenione.

    purtroppo, però, non ho trovato in alcun menù (sia della cartella di lavoro che dell'editor vb) che mi permetta di fare ciò che mi suggerisci.

    Attendo, se possibile, altre soluzioni.

    Ciao

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2011-06-15T20:26:26+00:00

    Salve.

    In una cartella di lavoro, ho assegnato dei tasti rapidi a varie macro perfettamente funzionanti.

    Ora mi sono però accorto casualmente, che digitando i suddetti tasti rapidi, la macro parte anche se sto lavorando in una cartella di lavoro diversa, con ovvi problemi.

     

    E' possibile far si che i tasti rapidi lancino la macro solo relativamente alla cartella di lavoro che la contiene e sulla quale sto lavorando, e non anche le macro di una seconda cartella di lavoro aperta?

     

    Spero di essere stato chiaro. Grazie per le risposte. Ciao

    Quando registri una macro(in automatico) ti viene chiesto *dove* salvarla. Se la salvi nella Cartella macro personale(PERSONAL.XLS) la macro sarà disponibile in tutte le cartelle di lavoro. Fai così: Lancia Excel, ALT+F11 e sei nell'editor del vb. Se in Progetto-VBAProject vedi, fra le altre voci, PERSONAL.XLS, prova a vedere se nei moduli del file trovi le tue macro. Se così fosse, per imediare ed avere le macro solo nei file di tuo interesse:

    1. Apri il file dove vuoi sia eseguita la macro
    2. Vai nel suo vb(ALT+F11)
    3. Aggiungi un modulo standard
    4. Vai nel modulo di codice del file PERSONAL.XLS dove hai la macro
    5. Selezionala
    6. Taglia
    7. Torna nel modulo che hai aggiunto al file
    8. Incolla
    9. Ripeti se hai alti files che devono utilizzare altre macro
    10. Chiudi Excel
    11. Quando hai finito...
    12. ...cerca ed elimina il file PERSONAL.XLS(potrebbe essere un file nascosto)
    13. Apri i vari files di Excel con le macro e riassegna i tasti di scelta rapida

    La risposta è stata utile?

    0 commenti Nessun commento
  4. Anonimo
    2011-06-15T18:34:41+00:00

    Non ho la versione 2003, all'incirca: vai in modifica macro e selziona "valido solo per la cartella corrente" o analogo.

    La risposta è stata utile?

    0 commenti Nessun commento