教えて!ExcelVBA!

ExcelVBAの基礎知識・書き方について紹介します。

【ExcelVBA ブック操作】Excelブックを整列(Arrange)させるにはどうすればいいの?教えて!

f:id:m_kbou:20200418125053p:plain

複数のExcelを開いている場合、上下に並べたり・左右に並べたりと並べ方を指定する事が可能です。この方法を指定するにはArrangeメソッドを使用します。この使い方について紹介します。

 

 

構文

記述方法は以下の通りとなります。

Windows.Arrange Arrangestyle:=[整列の方法] 

[説明]:

ブックを整列させる場合は「Windows.Arrange Arrangestyle:=[整列の方法]」と記述します。整列の方法はArrangestyle:=の後に[整列の方法]で指定します。[整列の方法]には
 ・並べて表示(xlArrangeStyleTiled)
 ・重ねて表示(xlArrangeStyleCascade)
 ・上下に並べて表示(xlArrangeStyleHorizontal)
 ・左右に並べて表示(xlArrangeStyleVertical)
のいずれかを指定します。
内容を纏めると、「ブックを[整列の方法]で指定した方法で整列・表示して下さい。」との意味になります。

[記述例]:

Windows.Arrange Arrangestyle:=xlArrangeStyleTiled
Windows.Arrange Arrangestyle:=xlArrangeStyleCascade
Windows.Arrange Arrangestyle:=xlArrangeStyleHorizontal
Windows.Arrange Arrangestyle:=xlArrangeStyleVertical

 

使い方

使い方について具体的に説明します。

並べて表示する方法(xlArrangeStyleTiled)

ブックを並べて表示する方法について説明します。

[プログラミング例]:

Sub サンプル()
  Windows.Arrange Arrangestyle:=xlArrangeStyleTiled
  MsgBox "並べて表示しました。"
End Sub

内容は、「ブックを並べて表示し、最後にMsgBoxで”並べて表示しました。”のメッセージを表示して下さい。」との意味になります。

f:id:m_kbou:20210209121351p:plain

※上記のプログラミング例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。

[実行例]:

※事前準備として、Book1.xlsmファイル・Book2.xlsxファイル・Book3.xlsxファイル・Book4.xlsxファイルを開いておきます。

f:id:m_kbou:20210316084953p:plain

f:id:m_kbou:20210316085005p:plain

f:id:m_kbou:20210316085017p:plain

f:id:m_kbou:20210316085029p:plain

①Book1.xlsmファイルにある<実行>ボタンをクリックします。<実行>ボタンには上記のプログラミング例のプログラムが登録されています。(※ボタンの作り方やボタンにプログラムを割り当てるにはこちらを参考にして下さい。)

f:id:m_kbou:20210316085212p:plain

②結果は以下の様になります。4つのファイルが並べられ、MsgBoxで「並べて表示しました。」が表示されます。

f:id:m_kbou:20210316085325p:plain

[サンプル]:

上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。

drive.google.com

ブックを並べて表示する方法についての説明は以上です。

 

重ねて表示する方法(xlArrangeStyleCascade)

ブックを重ねて表示する方法について説明します。

[プログラミング例]:

Sub サンプル()
  Windows.Arrange Arrangestyle:=xlArrangeStyleCascade
  MsgBox "重ねて表示しました。"
End Sub

内容は、「ブックを重ねて表示し、最後にMsgBoxで”重ねて表示しました。”のメッセージを表示して下さい。」との意味になります。

f:id:m_kbou:20210209121415p:plain

※上記のプログラミング例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。

[実行例]:

※事前準備として、Book1.xlsmファイル・Book2.xlsxファイル・Book3.xlsxファイル・Book4.xlsxファイルを開いておきます。

f:id:m_kbou:20210316084953p:plain

f:id:m_kbou:20210316085005p:plain

f:id:m_kbou:20210316085017p:plain

f:id:m_kbou:20210316085029p:plain

①Book1.xlsmファイルにある<実行>ボタンをクリックします。<実行>ボタンには上記のプログラミング例のプログラムが登録されています。(※ボタンの作り方やボタンにプログラムを割り当てるにはこちらを参考にして下さい。)

f:id:m_kbou:20210316085212p:plain

②結果は以下の様になります。4つのファイルが重なり、MsgBoxで「重ねて表示しました。」が表示されます。

f:id:m_kbou:20210316093114p:plain

[サンプル]:

上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。

drive.google.com

ブックを重ねて表示する方法についての説明は以上です。

 

上下に並べて表示する方法(xlArrangeStyleHorizontal)

ブックを上下に並べて表示する方法について説明します。

[プログラミング例]:

Sub サンプル()
  Windows.Arrange Arrangestyle:=xlArrangeStyleHorizontal
  MsgBox "上下に並べて表示しました。"
End Sub

内容は、「ブックを上下に並べて表示し、最後にMsgBoxで”上下に並べて表示しました。”のメッセージを表示して下さい。」との意味になります。

f:id:m_kbou:20210209121455p:plain

※上記のプログラミング例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。

[実行例]:

※事前準備として、Book1.xlsmファイル・Book2.xlsxファイル・Book3.xlsxファイル・Book4.xlsxファイルを開いておきます。

f:id:m_kbou:20210316084953p:plain

f:id:m_kbou:20210316085005p:plain

f:id:m_kbou:20210316085017p:plain

f:id:m_kbou:20210316085029p:plain

①Book1.xlsmファイルにある<実行>ボタンをクリックします。<実行>ボタンには上記のプログラミング例のプログラムが登録されています。(※ボタンの作り方やボタンにプログラムを割り当てるにはこちらを参考にして下さい。)

f:id:m_kbou:20210316085212p:plain

②結果は以下の様になります。4つのファイルが上下に並べられ、MsgBoxで「上下に並べて表示しました。」が表示されます。

f:id:m_kbou:20210316094036p:plain

[サンプル]:

上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。

drive.google.com

ブックを上下に並べて表示する方法についての説明は以上です。

 

左右に並べて表示する方法(xlArrangeStyleVertical)

ブックを左右に並べて表示する方法について説明します。

[プログラミング例]:

Sub サンプル()
  Windows.Arrange Arrangestyle:=xlArrangeStyleVertical
  MsgBox "左右に並べて表示しました。"
End Sub

内容は、「ブックを左右に並べて表示し、最後にMsgBoxで”左右に並べて表示しました。”のメッセージを表示して下さい。」との意味になります。

f:id:m_kbou:20210209121516p:plain

※上記のプログラミング例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。

[実行例]:

※事前準備として、Book1.xlsmファイル・Book2.xlsxファイル・Book3.xlsxファイル・Book4.xlsxファイルを開いておきます。

f:id:m_kbou:20210316084953p:plain

f:id:m_kbou:20210316085005p:plain

f:id:m_kbou:20210316085017p:plain

f:id:m_kbou:20210316085029p:plain

①Book1.xlsmファイルにある<実行>ボタンをクリックします。<実行>ボタンには上記のプログラミング例のプログラムが登録されています。(※ボタンの作り方やボタンにプログラムを割り当てるにはこちらを参考にして下さい。)

f:id:m_kbou:20210316085212p:plain

②結果は以下の様になります。4つのファイルが左右に並べられ、MsgBoxで「左右に並べて表示しました。」が表示されます。

f:id:m_kbou:20210316094627p:plain

[サンプル]:

上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。

drive.google.com

ブックを左右に並べて表示する方法についての説明は以上です。

  

おわりに

今回はExcelブックを整列させる方法について説明しました。ブックは通常1つだけなので、ブックの整列をしても対象ブックが画面いっぱいに表示されるだけです。しかし、ブックを複数開いている場合、全てのブックが整列対象となります。試してみて下さい。