• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:EXCELのマクロ機能を教えて下さい)

EXCELマクロ機能を使って表の一部を非表示・表示する方法

このQ&Aのポイント
  • EXCELで表を作成している際、特定の行を非表示にしたり表示したりする方法を教えてください。
  • 数式の知識がないため、【ツール】から【マクロの新しいマクロの登録】を使用して行の非表示や表示を試みましたが、うまくいきません。
  • どのようにして表の一部を非表示・表示するか、誤りがあるのか教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.1

マクロの内容を確認してください。 例1.G,I,K,M列が非表示になります Range("G:G,I:I,K:K,K:K,M:M").Select Selection.EntireColumn.Hidden = True 例2.G,H,I,J,K,L,M列が非表示になります Range("G:M").Select Selection.EntireColumn.Hidden = True 例3.現在選択されてる全ての列が非表示になります。 Selection.EntireColumn.Hidden = True 行列の表示と非表示切り替えならマクロを使うより、アウトラインのグループ化の方が便利です。 http://www.geocities.jp/oyakamassan_m/exceltips/excel60.html

syou_yuu20
質問者

お礼

お礼が遅くなり申し訳ありません。 マウスを使って工程を記録しその後、マクロの編集を開き見てはしたものの、その意味がわからず思案してました。 よくわかりました。 またグループ化という方法も始めて知り、大変役に立ちました。 有難うございました。

その他の回答 (3)

noname#158634
noname#158634
回答No.4
syou_yuu20
質問者

お礼

早速、回答頂き有難うございました。 お礼が遅くなり申し訳ありません。 この質問をするまで恥ずかしながらグループ化という方法を知りませんでした。 大変参考になりました。 有難うございます。

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.3

>数式を入れる知識が無い為 普通のエクセルで「数式」というと、関数式をセルに入れるを意味します。関数式ではシートなどの表示・非表示は原理的に左右出来ない。 それを言うなら、「VBAコードをどう作成したらよいかわかりません」、でしょう。 ーーー 以下の疑問に対して、お礼欄ででも、内容を補足のこと。 内容が質問ではあいまい。 (1)指定行を非表示か指定列を非表示ですか (2)複数行や列を非表示ですか (3)飛び飛びの行などですか これらはマクロの記録で判るはずだが。 ーー 問題は非表示にする行を、操作者(質問者)が指定するのか、シート上のデータで、何か条件を満たすものを非表示にするのか、質問に書かれていないでしょう。よく質問文を読み直してみて。 ーー また実行のキッカケは、イベントというものにするのか(ボタンに登録)やショートカットキーで実行か、単体で実行か などあります。経験を積んではっきり言えるように、なってください。 >いざマクロ機能を使うと表のあるA列からAH列全てが非表示になってしまいます。 どうなってほしいのか書いてないのでは。 VBAコードに即したことを書く前に、どうなってほしいのか書くべきです。 なおセル範囲(例B4:E6)だけを非表示にするようなことは出来ないはず。

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.2

どんなマクロが記録されたのかナイショなので「ここが違いますからこう直しましょう」と指摘も出来ませんが,単純に言えば記録されたマクロに誤りがあるので上手く動きません。 もっともご相談のような現象が起きるのは,恐らく作業中の表範囲で「セルを結合している」からではないかとは思います。 作成例: sub macro1()  columns("B:B").hidden = true  columns("D:E").hidden = true  columns("H:H").hidden = true end sub

syou_yuu20
質問者

お礼

早速の回答有難うございます。 またお礼が遅くなり申し訳ありません。 作ったデーターを確認したところ確かに表題の部分を結合処理をしていました。 大変参考になりました。 有難うございました。

関連するQ&A

専門家に質問してみよう