Una famiglia di software per fogli di calcolo Microsoft con strumenti per l'analisi, la creazione di grafici e la comunicazione dei dati.
ho una macro che vorrei fosse eseguita quando seleziono alcuni fogli, non tutti. adesso la metto nella macro activate di ogni foglio. come posso fare in un avolta sola? deve funzionare su tutti gli excel
Metti la tua macro come Public in un modulo standard(Inserisci-->Modulo). Vai nel modulo di codice di ThisWorkbook(Queta_cartella_di_lavoro per Excel2010) e copia/incolla questa:
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Select Case Sh.Name
Case "Foglio1", "Foglio3"
Call nometuamacro
End Select
End Sub
sostituiendo a nometuamacro il nome della tua macro e aggiungendo, separati da una virgola, i nomi dei fogli che devono lanciare la macro quando selezionati. Funziona su *tutti gli Excel*. Elimina il codice dagli eventi Activate dei vari fogli nel caso tu prima utilizzassi, come mi sembra di capire, l'evento Activate di ciascun foglio.
--
La soluzione, il codice ed i files sono forniti *così come sono* e l’autore declina ogni responsabilità per eventuali problemi causati dalla soluzione proposta se usata impropriamente. Create e utilizzate una copia del file per le vostre prove, *prima* di utilizzare la soluzione in files importanti.
--
Mauro Gamberini - Microsoft© MVP(Excel)