web-dev-qa-db-ja.com

Excelで特定のワークシートをアクティビティにする方法

特定のワークシートをアクティブにするだけです。ワークシートの名前を保持する文字列変数があります。

59
Alex

次のマクロは役に立ちますか?

Sub activateSheet(sheetname As String)
'activates sheet of specific name
    Worksheets(sheetname).Activate
End Sub

基本的には.Activate関数を使いたいのです。あるいは、.Select関数を次のように使用することもできます。

Sub activateSheet(sheetname As String)
'selects sheet of specific name
    Sheets(sheetname).Select
End Sub
97
Dennis G

ワークシートの名前ではなくワークシートのインデックスを使用することをお勧めします。このようにして、「動的に」シートをループすることもできます。

for i=1 to thisworkbook.sheets.count
 sheets(i).activate
'You can add more code 
with activesheet
 'Code...
end with
next i

また、パフォーマンスが向上します。

5
Moreno

マクロなしでワークシートをアクティブにするためにテキストを(動的にではなく)リンクする別の方法は、選択した文字列を実際のリンクにすることです。これを行うには、テキストを含むセルを選択してCtrl + Kキーを押し、次に[このドキュメントに配置]オプション/タブを選択して、アクティブにするタブを選択します。テキストをクリックすると(それが現在リンクになっています)、設定されたシートがアクティブになります/選択されます。

0
Daan