1か月の予定を入力する表を作りました。
1日から31日まで縦に並んでいて1日分31行ずつ使用しています。
具体的には
6行目が1日でA6セルに「3/1」が入っています。
7行目から36行目までが予定入力行で、B列に1~30の連番が振られています。
37行目に「3/2」
38行目から67行目のB列に1~30の連番。
以降、31日まで繰り返し。
縦スクロールが必要な長い表になってしまうため、
必要に応じてきゅっと縮めた表示をしたいです。
以下の条件で表示させたい場合、全行に対して、.Rows.Hidden TRUE、FALSEで制御するよりも効率良い方法は無いでしょうか?
日付と1~5まで表示(それ以外は非表示)
日付と1~10まで表示(それ以外は非表示)
日付と1~20まで表示(それ以外は非表示)
日付と1~30まで表示(つまり全部表示)
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
No1です。
>切り替わるのに2,3秒要し、もっさり感が気になります
1000行分で試してみましたが、私の環境では一瞬ですね。
仮に、通常の手操作で「ユーザー設定画面」を呼び出しても、2、3秒もかかってしまうってことですよね?
環境の影響が大きいと思いますので、もしもこれで2、3秒もかかっている様だとすると、1行ずつ制御する方式だとものすごく時間がかかったりしていませんか?
No.2
- 回答日時:
・以下の式を入れる
C6セル:=IF($B6<=5,1,0)
D6セル:=IF($B6<=10,1,0)
E6セル:=IF($B6<=20,1,0)
・7行目以下に式をコピーする
・フィルタで絞り込む
No.1
- 回答日時:
こんにちは
>全行に対して、.Rows.Hidden TRUE、FALSEで制御するよりも効率良い方法は無いでしょうか?
「効率が良い」の意味によります。
実行の効率から言えば、1行々々を制御するよりも、行をまとめて一気に処理したほうが効率が良いと言えるのかも知れません。
(シート操作は個別操作よりもまとめる方が速いので・・)
処理の効率はどのようなロジックで制御するかによるところの方が影響は大きそうな気がします。
とは言え、たかだか1000行程度の表示/非表示なので、たしした差はないものと想像します。
コードの長さ(?)で言うのなら、「ユーザー設定ビュー」を利用して
ThisWorkbook.CustomViews("hoge").Show
のような1行にしてしまうのが、一番短くて済むと言えるかもしれません。
(実行速度的にも速いと思われます)
ありがとうございます。
ユーザ設定ビューで好みの表示毎に名前を付け、
ThisWorkbook.CustomViews("hoge").Show
で切り替えるようにしてみましたところ、
ソースは短くて分かりやすいのですが、
切り替わるのに2,3秒要し、もっさり感が気になります。
.Rows.Hidden TRUE で行グループ単位で切り替えた方が、
パパっとレスポンスよく切り替わるのでしょうか。
ほぼ瞬時に切り替わるのが理想です。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 【マクロ】リボン、行列、数式・ステータスバを非表示に 4 2022/12/12 07:32
- Excel(エクセル) VLOOKUP が機能しない、その原因は何 ? 8 2022/10/19 12:06
- Excel(エクセル) ExcelにおけるVLOOKUPでの祝日表示について 5 2022/09/18 22:23
- Excel(エクセル) 【Excel質問】 「本日の日付」から指定条件を満たす営業日経過後の日数を表示させる関数式 3 2022/06/06 23:28
- Excel(エクセル) エクセルでセルの日付を和暦表示設定にしたらおかしなことに? 3 2022/05/25 11:47
- Visual Basic(VBA) 【VBA】データを入力後に,同一シート内に履歴として転記するVBAコードを教えていただきたいです。 3 2022/11/16 01:37
- Visual Basic(VBA) VBAで列の再表示設定 1 2023/04/25 10:19
- Excel(エクセル) エクセルの数式で教えてください。 2 2023/01/10 09:15
- Excel(エクセル) 【マクロ】マクロが保存されているエクセルとは、別のエクセルブックの全シートの非表示列を再表示したい 1 2022/12/24 20:48
- Excel(エクセル) エクセルの祝日に色が反映しない 4 2022/05/18 09:58
このQ&Aを見た人はこんなQ&Aも見ています
-
外出時に「待たせる妻」vs イライラする「待つ夫」は日本だけ?見習いたい海外事情
夫の家事参加に積極的なイメージのある海外でも、同様の事例はあるのか。結婚カウンセラーの佐竹悦子さんに伺ってみた。
-
条件に応じて特定の行を非表示にしたい
Excel(エクセル)
-
エクセルで特定の列が0表示の場合、その行を非表示にしたい
Excel(エクセル)
-
指定した条件で行セルを非表示にするVBAについて
Visual Basic(VBA)
-
-
4
エクセルで特定の文字列が入った行を非表示にしたい
Excel(エクセル)
-
5
エクセルで特定の値を含む列のみVBAで非表示にしたい
Excel(エクセル)
-
6
Excelで条件によって特定のセル(行)を非表示にする方法を教えて下さい。
Excel(エクセル)
-
7
特定のセルが空白だったら、その行を非表示にしたい。。。
Visual Basic(VBA)
-
8
エクセル:条件付の行非表示
Excel(エクセル)
-
9
EXCELマクロで、ある列の値が0の場合、非表示/表示ボタンで該当列を非表示切り替えしたいんです。
Excel(エクセル)
-
10
Enterキーでマクロを起動さす。
その他(ソフトウェア)
-
11
エクセルで昨日までの日付データ行を非表示するVBAについて!
Excel(エクセル)
-
12
エクセルでの31日等の非表示等について
Excel(エクセル)
-
13
マクロ 実行ボタンを押さずに常に実行
Excel(エクセル)
-
14
セルの値が変ると自動でマクロが実行される。
その他(Microsoft Office)
-
15
エクセル2000:条件によって行を非表示にする方法
Excel(エクセル)
-
16
列から特定の文字列検索→該当以外の「行」隠すマクロ
その他(Microsoft Office)
-
17
Excelで特定の日付以降の非表示
Excel(エクセル)
-
18
エクセルの特定の文字を表示、非表示に切り替えたい
Excel(エクセル)
-
19
【vba】指定範囲の中に任意の文字があるときの条件分岐
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
3人のじゃんけんのプログラム
-
Eclipseの対応する括弧の強調表...
-
JSPからYYYYMMDDで日付入力する
-
テキストボックスに今日の日付...
-
VBAのvalueとvalue2の違いに...
-
エクセルのVBAで日付を検索し転...
-
テキストボックスにカレンダー...
-
コンボボックスに日付を表示する
-
エクセルVBAで機械の稼働時間を...
-
excelのVBAについて、以下のコ...
-
日付を操作したい
-
今日より前の書き方 マクロ
-
VBA での日付の計算
-
最近、iPhoneがおかしいです 私...
-
アンドロイドから通知無しで鳴る音
-
PCでのAPEXで何度もアップデー...
-
電話の着信が来てないのに着信...
-
PCのGoogle Chrome上でGmailに...
-
PCのGoogle Chrome上でGmailに...
-
SIM無しアップデート方法
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Eclipseの対応する括弧の強調表...
-
ユーザーフォームのラベルに日...
-
VBAの質問になります 行の非表示
-
エクセルのVBAで日付を検索し転...
-
VisualBasic6.0のFormat関数で...
-
DataGridViewでyyyy/MM/dd
-
3人のじゃんけんのプログラム
-
システム日付とは?
-
コンボボックスに日付を表示する
-
今日より前の書き方 マクロ
-
【VBA】土日をスキップして日付...
-
エクセルVBAで機械の稼働時間を...
-
VBA 日付、未来の日付はエラー...
-
DataGridViewの和暦表示について
-
VBAで当月の1日を表示するには...
-
「eclipseで作るカレンダー(ス...
-
テキストボックスにカレンダー...
-
ExcelVBAでSQLサーバの日付時刻...
-
【Excel VBA】条件に合った行の...
-
VBAのapplication.ontime メソ...
おすすめ情報