Ho solo bisogno di attivare un determinato foglio di lavoro. Ho una variabile stringa che mantiene il nome del foglio di lavoro.Come attivare un foglio di lavoro specifico in Excel?
risposta
La seguente macro può aiutarti?
Sub activateSheet(sheetname As String)
'activates sheet of specific name
Worksheets(sheetname).Activate
End Sub
Fondamentalmente si desidera utilizzare la funzione. Attiva. Oppure è possibile utilizzare la funzione .Selezionare in questo modo:
Sub activateSheet(sheetname As String)
'selects sheet of specific name
Sheets(sheetname).Select
End Sub
Un modo alternativo di (non in modo dinamico) collegare un testo per attivare un foglio di lavoro senza le macro è quello di rendere la stringa selezionata un nesso effettivo. Puoi farlo selezionando la cella che contiene il testo e premi CTRL + K quindi seleziona l'opzione/scheda "Inserisci in questo documento" e seleziona la scheda che desideri attivare. Se si farebbe clic sul testo (che ora è un collegamento), il foglio configurato diventerà attivo/selezionato.
ti consiglierei di utilizzare l'indice di foglio di lavoro, invece di usare il nome di foglio di lavoro, in questo modo si può anche collegare attraverso fogli "dinamicamente"
for i=1 to thisworkbook.sheets.count
sheets(i).activate
'You can add more code
with activesheet
'Code...
end with
next i
Sarà inoltre, migliorare le prestazioni.
'sheetname' può essere il numero di indice del foglio di lavoro (così intero). Anche se il valore di "Option Base" è 0, inizia dall'indice 1. –