• 締切済み

複数非表示列の任意列再表示

たとえばA~Z列が非表示となっていた場合、B列だけ開けたい場合、Z列から順番に開けるか、すべての列をいったん開けてからでないとB列表示はできないでしょうか。 同様に非表示の列のセルを参照して計算する場合も列非表示のまま、参照セルを確認して計算できないでしょうか。 ロータス123の場合は、それができたと記憶しています。 やりかたをご存知の方がいましたら教えてください。

みんなの回答

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

例えばB-D列を非表示にしてあってC列だけ表示したいとき VBAで Sub test01() Columns(3).EntireColumn.Hidden = False End Sub を実行すると出来ました。 これを応用すれば、例えばG1セルに列番号を入れてクリックすれば再表示、またクリックすると非表示など出来ます。 Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Target.Address = "$G$1" Then 'G1セルなら c = Target.Value 'G1セルの値=列番号数字 If Columns(c).EntireColumn.Hidden = True Then Columns(c).EntireColumn.Hidden = False Else Columns(c).EntireColumn.Hidden = True End If End If End Sub >非表示の列のセルを参照して計算する場合も列非表示のまま、参照セルを確認して計算できないでしょうか。 これはVBAでやろうとしても、手掛かりが、数式バーに入力した、式完成の途中状態で、値を割り出すのは難しいと思う。 また、先日関数式の参照している要素セルの値を見たいと言う質問があったが、セル範囲を指定するとき、参照表(範囲)を示している時など、その全部の値を表示することなど意味はないようなケースもある。 例=VLOOKUP(A1,$C$1:$D$1000,2,TRUE)の$c$1,$c$2,・・・の2000個のセル値など。

SAKURAMYLOVE
質問者

お礼

回答ありがとうございます。 やはり、回避策はないようですね。 しかし、VBAでの方法は勉強になりました。 MS社で簡単にできそうだけどやらないのは、何か理由があるのでしょうね。

すると、全ての回答が全文表示されます。
  • neKo_deux
  • ベストアンサー率44% (5541/12319)
回答No.1

左上のセル範囲の入力欄か、[編集]-[ジャンプ]で「B:B」を指定するとB列が選択できますから、[書式]-[列]-[再表示]出来ると思います。 > 列非表示のまま、参照セルを確認して 通常「=」と入力してカーソルでセル指定するように、セルに入っている値を確認しつつという事でしょうか? こちらは出来ないっぽいですね。 セル幅を「0.0x」とかの最低にしておくとか。 特定の範囲の表示/非表示を簡単に切り替える方法として、 列選択 [データ]-[グループとアウトラインの設定]-[グループ化]しておくのはどうでしょう?

SAKURAMYLOVE
質問者

お礼

回答ありがとうございます。 ジャンプで決め打ちで開ける方法は参考になりました。 ただ、あらかじめ開ける列が分かっていないとダメそうですね。 また、非表示列のセル参照の方は絶望的でしょうか。 次回のVER UPで考えてくれないかなあ、MS社さん! エクセルは、非常に優れた表計算ソフトですが、123がMS社の戦略で駆逐されたいま、123でできた機能が使えないことにはいまだに不満があります。

すると、全ての回答が全文表示されます。

関連するQ&A