教えて!ExcelVBA!

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

【ExcelVBA セル操作】列を表示/非表示する(Hidden)にはどうすればいいの?教えて!

f:id:m_kbou:20200419130550p:plain

列の表示/非表示を設定する方法について説明します。列を表示および非表示するには、Hiddenプロパティを使用します。HiddenプロパティをTrueにすると非表示となり、Falseにすると表示(再表示)となります。

 

 

構文

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

Range(”[列範囲]”).EntireColumn.Hidden = True or False

[説明]:

列を非表示するには

 「Range(”[列範囲]”).EntireColumn.Hidden = True」

と記述し、表示(再表示)するには

 「Range(”[列範囲]”).EntireColumn.Hidden = False」

と記述します。

[列範囲] 列を表示/非表示する列範囲を記述します。
※「”」(ダブルクォーテーション)で囲みます。

[記述例]:

Range("A:B").EntireColumn.Hidden = True
Range("A:B").EntireColumn.Hidden = False

 

使い方

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

指定した列範囲を非表示にする方法

指定した列範囲を非表示にする方法について説明します。

[プログラミング例]:

Sub サンプル()

  Range("A:B").EntireColumn.Hidden = True
  MsgBox "列を非表示にしました。"

End Sub

内容は、「列範囲:A列~B列を非表示にし、最後にMsgBoxで”列を非表示にしました。”のメッセージを表示して下さい。」との意味になります。

f:id:m_kbou:20210418172725p:plain

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

[実行例]:

①A列~C列が表示されています。<非表示>ボタンをクリックします。このボタンには上記のプログラミング例のプログラムが登録されています。(※ボタンの作り方やボタンにプログラムを割り当てるにはこちらを参考にして下さい。)

f:id:m_kbou:20210418172748p:plain

②結果は以下の様になります。A列~B列が非表示となり、MsgBoxで「列を非表示にしました。」が表示されます。

f:id:m_kbou:20210418173312p:plain

[サンプル]:

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

drive.google.com

指定した列範囲を非表示にする方法についての説明は以上です。

 

指定した列範囲を表示(再表示)する方法

指定した列範囲を表示(再表示)する方法について説明します。

[プログラミング例]:

Sub サンプル()

  Range("A:B").EntireColumn.Hidden = False
  MsgBox "列を表示しました。"

End Sub

内容は、「列範囲:A列~B列を再表示し、最後にMsgBoxで”列を表示しました。”のメッセージを表示して下さい。」との意味になります。

f:id:m_kbou:20210418172810p:plain

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

[実行例]:

①C列から表示されています。<表示(再表示)>ボタンをクリックします。このボタンには上記のプログラミング例のプログラムが登録されています。(※ボタンの作り方やボタンにプログラムを割り当てるにはこちらを参考にして下さい。)

f:id:m_kbou:20210418172826p:plain

②結果は以下の様になります。A列~B列も表示されます。MsgBoxで「列を表示しました。」が表示されます。

f:id:m_kbou:20210418172838p:plain

[サンプル]:

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

drive.google.com

指定した列範囲を表示する方法についての説明は以上です。

  

おわりに

今回は、列を表示/非表示する方法について説明しました。類似内容として行を表示/非表示する方法もあります。一緒に覚えてもらうとプログラミング力が向上します。