Minun on vain aktivoitava tietty työarkki. Minulla on merkkijonomuuttuja, joka pitää työarkin nimen.
Auttaisiko sinua seuraava makro?
Sub activateSheet(sheetname As String)
'activates sheet of specific name
Worksheets(sheetname).Activate
End Sub
Periaatteessa haluat käyttää .Activate-funktiota. Tai voit käyttää .Select-funktiota näin:
Sub activateSheet(sheetname As String)
'selects sheet of specific name
Sheets(sheetname).Select
End Sub
Suosittelen käyttämään työarkin indeksiä sen sijaan, että käytät työarkin nimeä, tällä tavoin voit myös kiertää arkkien läpi "dynaamisesti"
for i=1 to thisworkbook.sheets.count
sheets(i).activate
'You can add more code
with activesheet
'Code...
end with
next i
Se myös parantaa suorituskykyä.
Vaihtoehtoinen tapa (ei dynaamisesti) linkittää teksti aktivoimaan laskentataulukko ilman makroja on tehdä valitusta merkkijonosta varsinainen linkki. Voit tehdä tämän valitsemalla tekstin sisältävän solun ja painamalla CTRL+K ja valitsemalla sitten vaihtoehdon/välilehden 'Sijoita tähän asiakirjaan' ja valitsemalla välilehden, jonka haluat aktivoida. Jos napsautat tekstiä (joka on nyt linkki), määritetty arkki tulee aktiiviseksi/valittuna.