大体でIT

-ちょっと使えるネタを紹介-

大体でIT

Excel VBAで、シートを選択する方法は3つあって、「シート名」と「シートインデックスを」、「シートオブジェクト」を使う方法になります。複数シートを選択したい場合は「.Select」の引数に「False」を使うか、「配列」を使うとできます。シートの選択方法について、マスターしていきましょう。

はじめに

この記事では、シートを選択する方法について、ご紹介します。

1つのシートを選択する方法として、3つの方法があります。

  • シート名を使う
  • シートインデックスを使う
  • シートオブジェクトを使う

という感じです。

複数のシートを選択したい場合は、次の2つの方法があります。

  • 「.Select」の引数に「False」を入力
  • 配列「Array」を使う

シートの選択と似たもので、「.Activate」があります。

「.Activate」を使えば、非表示シートもアクティブにすることができます。

シートの選択方法について、マスターしていきましょう。

では、シートを選択する方法について、解説していきます。

この記事を読むメリット

  • シートを自由自在に選択できるようになります。

目次から見たい項目へ移動すると便利ですよ。

目次

シートを選択する

シートを選択する方法は、3つあります。

  • シート名を使う
  • シートインデックスを使う
  • シートオブジェクトを使う

それぞれ解説していきます。

シート名で選択

シート名を使って、シートを選択してみます。

Sub TEST1()
  
  'シート名で選択
  Sheets("Sheet2").Select
  
End Sub

実行すると、シート名を使って、シートを選択できます。

「シート名」を使って、シートを選択

シート名を使って、シートを選択します

シート名を使って、シートを選択できました。

シートインデックスで選択

次は、シートインデックスを使って、シートを選択してみます。

シートインデックスはシートの順番です。

シートインデックスはシートの順番

シートインデックスはシートの順番です

シートインデックスを使って、シートを選択してみます。

「2番目」のシートを選択する

左から「2番目」のシートを選択するVBAコードです。

Sub TEST2()
  
  'シートインデックスで選択
  Sheets(2).Select
  
End Sub

実行すると、「2番目」のシートを選択できます。

「2番目」のシートを選択します

「2番目」のシートを選択できました。

シートオブジェクトで選択

3つ目の方法で、シートオブジェクトを使って、シートを選択してみます。

シートオブジェクト名は、VBE画面で確認できます。

シートオブジェクト名はVBE画面で確認

シートオブジェクト名は、VBE画面で確認できます

シートオブジェクトを使って、シートを選択してみます。

シートオブジェクトを使ってシートを選択

シートオブジェクトの「Sheet2」を選択するVBAコードです。

Sub TEST3()
  
  'シートオブジェクトで選択
  Sheet2.Select
  
End Sub

実行すると、シートオブジェクトを使って、シートを選択できます。

シートオブジェクトを使って、シートを選択できました

シートオブジェクトを使って、シートを選択できました。

シートを複数選択する

シートを複数選択する方法として、次の2つの方法があります。

  • 「.Select」の引数に「False」を使う
  • 配列を使う

では、それぞれやってみます。

Selectの引数で「False」を使って選択

Selectの引数に「False」を入力して、複数シートを選択するVBAコードです。

Sub TEST4()
  
  Sheets("Sheet1").Select 'Sheet1を選択
  Sheets("Sheet2").Select False 'Sheet2も選択
  
End Sub

実行すると、最初に「Sheet1」のシートが選択されます。

「Sheet1」を選択

最初に「Sheet1」のシートが選択されます

さらに実行すると、「Sheet1」を選択したままで、「Sheet2」のシートを選択できます。

「Sheet1」を選択したまま「Sheet2」を選択

「Sheet1」を選択したままで、「Sheet2」のシートを選択できます

「Sheet1」と「Sheet2」の複数シートを選択できました。

配列を使って選択

次は、配列を使って、複数シートを選択してみます。

配列を使って、複数シートを選択するVBAコードです。

Sub TEST5()
  
  'Sheet1とSheet2を選択
  Sheets(Array("Sheet1", "Sheet2")).Select
  
End Sub

実行すると、「Sheet1」と「Sheet2」のシートを選択できます。

「Sheet1」と「Sheet2」のシートを選択できた

「Sheet1」と「Sheet2」のシートを選択できます

「Sheet1」と「Sheet2」のシートを選択できました。

シートの複数選択を解除する

シートの複数選択を解除するには、任意のシートを選択すると、解除することができます。

Selectで任意のシートを選択

最初に、複数シートを選択しておきます。

複数シートを選択しておく

複数のシートを選択しておきます

任意のシートを選択で、複数選択を解除することができます。

任意のシートを選択で、複数選択を解除

「Sheet1」を選択するVBAコードです。

Sub TEST6()
  
  '任意のシートを選択すると、複数選択を解除
  Sheets("Sheet1").Select
  
End Sub

実行すると、複数選択を解除することができます。

任意のシートを選択すると、複数選択を解除できます

任意のシートを選択して、複数選択を解除できました。

シートをアクティブにする

「.Select」と似たVBAコーで、シートをアクティブにする「.Activate」があります。

「.Activate」を使う

「.Activate」を使って、シートをアクティブにするVBAコードです。

Sub TEST7()
  
  'Sheet2をアクティブにする
  Sheets("Sheet2").Activate
  
End Sub

Sheet2をアクティブにできます。

「Sheet2」をアクティブ

Sheet2をアクティブにできました

Sheet2をアクティブにできました。

「.Select」と「.Activate」の違いは、次の通りです。

  • アクティブシートは1つのみ
  • 「.Activate」は非表示シートもアクティブにできる

という感じです。

それぞれみてみます。

アクティブシートは1つのみ

選択とは違い、アクティブシートは1つのみになります。

アクティブシートは1つのみ

選択とは違い、アクティブシートは1つのみになります

左のシートだけ文字色が違っていますね。

なので、複数シートを選択しているんですけど、アクティブシートは、一番左のシートになります。

「.Activate」で非表示シートもアクティブにできる

「.Activate」は、非表示シートもアクティブにすることができます。

「.Select」では非表示シートは選択できません。

ちょっとやってみます。

非表示シートは「.Select」できない

非表示シートの「Sheet2」を選択するVBAコードです。

Sub TEST8()
  
  '非表示の場合はエラー
  Sheets("Sheet2").Select
  
End Sub

非表示にしたSheet2を選択してみます。

非表示にしたSheet2を選択してみます

実行するとエラーとなります。

実行するとエラーとなります

実行するとエラーとなりました。

こんな感じで、「.Select」では非表示シートは選択できません。

「.Activate」を使う

「.Activate」を使って、非表示シートをアクティブにして、値を入力するVBAコードです。

Sub TEST9()
  
  '非表示でもアクティブにできる
  Sheets("Sheet2").Activate
  Range("A1") = "ABC" 'アクティブシートに値を入力
  
End Sub

Sheet2を非表示にして、実行してみます。

非表示のSheet2をアクティブにして、値を入力してみます

値が入力できたかを確認したいので、Sheet2を表示して確認してみます。

非表示シートをアクティブにして、値を入力できました

非表示シートだったSheet2に、値を入力できていることがわかります。

おわりに

この記事では、シートを選択する方法について、ご紹介します。

1つのシートを選択する方法として、3つの方法があります。

  • シート名を使う
  • シートインデックスを使う
  • シートオブジェクトを使う

という感じです。

複数のシートを選択したい場合は、次の2つの方法があります。

  • 「.Select」の引数に「False」を入力
  • 配列「Array」を使う

シートの選択と似たもので、「.Activate」があります。

「.Activate」を使えば、非表示シートもアクティブにすることができます。

シートの選択方法について、マスターしていきましょう。

参考になればと思います。最後までご覧くださいまして、ありがとうございました。

関連する記事から探す

カテゴリから探す

カテゴリから見たい項目を探すと便利ですよ。

サイト内を検索する

↓キーワードを入力する

アーカイブから探す