Excel VBAでご教示ください。
オートフィルタの条件が2つあります。
1.セルG1に入っている基準日より、以前のもの(基準日は含めない)
2.ステータスが「完了」以外のもの
つまり、基準日がきているのに書類が完了していないものを抽出したい。
そして、抽出されたものにだけ黄色い色にしたい。
以下のVBAを作りましたが、該当する値がないとき(0件の時)全部に色が塗られてしまいました。
該当があるときはセルを塗る、該当なし0件の時には色は塗らない。
このようにするには、IF文などを使うしか方法がないのでしょうか。
Sub TEST9_2()
Dim kijyun As Long
kijyun = Range("E1").Value
Range("B2:E7").AutoFilter Field:=4, Criteria1:="<" & Cells(1, 7)
Range("B2:E7").AutoFilter Field:=3, Criteria1:="<>完了"
Range("B3:E7").Interior.ColorIndex = 6
End Sub
No.3ベストアンサー
- 回答日時:
IF文を使うのが一般的ですし可読性も高いと思います。
SUBTOTAL関数を使えばフィルター後に表示されているものについてのみ演算することができますので、その結果により色を塗るか塗らないかの指示をすればよいと思います。
通常、データ個数をだすのはCOUNTAですが、フィルター後のデータ個数をだすのがSUBTOTAL(3,範囲)になります。
例えば、H1セルに『=SUBTOTAL(3,B:B)』と入力しておけば、該当なしのときは見出し行のみが残るのでデータ個数は1になります。H1セルが1のときのみ色を塗らないようにすれば解決です。もちろん、これと同等のことをvbaで記述してもよいです。
No.2
- 回答日時:
>このようにするには、IF文などを使うしか方法がないのでしょうか。
IF文に限りませんが、条件を判定して、その条件によって異なる処理をさせたいのであれば、条件によって処理を分岐する命令を使うというだけのことです。
No.1
- 回答日時:
こんばんは
>IF文などを使うしか方法がないのでしょうか。
普通に処理するならそうでしょうね。
E列に必ず日付があるのなら、CountAで表示行を数えれば、表示行数を求められます。
他の方法としては、範囲に必ず表示されている行を含めておく(タイトル行、あるいは8行目とか)という方法も考えられます。
色付けしたら、その行(タイトル行など)の色は消すといった要領です。
あるいはループで1行ずつHidden属性を見て、色を付けるとか。
(最初のIF文で行うのと、あまり変わりませんけれど・・)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
最近、いつ泣きましたか?
泣いてストレス発散! なんて言いますよね。 あなたは最近いつ、どんなシチュエーションで泣きましたか?
-
家・車以外で、人生で一番奮発した買い物
どんなものにお金をかけるかは人それぞれの価値観ですが、 誰もが一度は清水の舞台から飛び降りる覚悟で、ちょっと贅沢な買い物をしたことがあるはず。
-
メモのコツを教えてください!
メモを取るのが苦手です。 急いでメモすると内容がごちゃごちゃになってしまったり、ひどいときには全く読めない時もあります。
-
【お題】絵本のタイトル
【お題】 「ないた あかおに」「ねないこ だれだ」「はらぺこあおむし」みたいだけど、一体これどういう内容?と思った絵本のタイトルを教えて下さい
-
「お昼の放送」の思い出
小学校から中学校、ところによっては高校まで お昼休みに校内放送で、放送委員が音楽とかおしゃべりとか流してましたよね。 最近は自分でもラジオができるようになって、そのクオリティもすごいことになっていると聞きます。
-
Excel 対象のセルに入力が無いとセルに入力できないようにしたい
Excel(エクセル)
-
Excelについて教えてください
Excel(エクセル)
-
文字2桁、3桁交じりの文字列を並び替えるマクロ
Excel(エクセル)
-
-
4
Excelの表示についての質問
Excel(エクセル)
-
5
セルの数を求めたい
Excel(エクセル)
-
6
再質問です。マクロの修正箇所を教えてください。
Excel(エクセル)
-
7
Excelの数式の効率化について
Excel(エクセル)
-
8
条件付き書式でやりたいのですが
Excel(エクセル)
-
9
Excelについて質問です。 A1タブ 1234-56--798 56の後ろにB1の98を付け加えて
Excel(エクセル)
-
10
複数のテキストファイルをexcelでそれぞれ別シートにUTF-16で書き出したい
Excel(エクセル)
-
11
Excelで、決まった行を繰り返しコピーする
Excel(エクセル)
-
12
一つのセルに(例えばA1)入力された3桁・4桁の数字を並べ替えて同一行のセルに表示させる。
Excel(エクセル)
-
13
非表示列の再表示に失敗
Excel(エクセル)
-
14
時間によってファイル名が変わるエクセルをほかのエクセルでデータを参照する方法
Excel(エクセル)
-
15
エクセルの関数について教えてください
Excel(エクセル)
-
16
エクセルの計算
Excel(エクセル)
-
17
エクセル②
Excel(エクセル)
-
18
エクセルを使っていて2024/5/15と入力したのに令和元年とかででるのでしょうか?何か設定分かる方
Excel(エクセル)
-
19
エクセルで 自動的に◯や数字を表示させることできます? 例えばなんですが 日付 山田 1 ◯ みたい
Excel(エクセル)
-
20
職場の人から聞かれており、こんなことができるか教えて下さい。 vbaとかはできません。。 下記リスト
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・【お題】絵本のタイトル
- ・【大喜利】世界最古のコンビニについて知ってる事を教えてください【投稿~10/10(木)】
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・ハマっている「お菓子」を教えて!
- ・最近、いつ泣きましたか?
- ・夏が終わったと感じる瞬間って、どんな時?
- ・10秒目をつむったら…
- ・人生のプチ美学を教えてください!!
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセル:色の付いたデータを...
-
エクセルのフィルタをかけると...
-
エクセル関数
-
エクセルオートフィルタで余計...
-
Excel VBAでオートフィルタで抽...
-
教えて下さい!関数SUBTOTALとC...
-
エクセルで作成 混合名簿から...
-
オートフィルタで抽出したデー...
-
エクセルで、桁数の異なるデー...
-
Excel関数、何がいけないのかわ...
-
エクセルの計算表の下向き三角...
-
アダルトサイトをブロックした...
-
エクセルでのオートフィルタオ...
-
色フィルターをかけた状態で、...
-
【Excel2003】フィルタの条件を...
-
Illustratorでフィルタが表示さ...
-
オートフィルタをかけた表に一...
-
行番号の文字の色が青色の理由?
-
エクセルについて。 ソートで絞...
-
A1セルに入力したら、入力時間...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルオートフィルタで余計...
-
エクセルで、桁数の異なるデー...
-
Excel関数、何がいけないのかわ...
-
教えて下さい!関数SUBTOTALとC...
-
色フィルターをかけた状態で、...
-
エクセルの計算表の下向き三角...
-
エクセルのフィルタをかけると...
-
オートフィルタで抽出したデー...
-
行番号の文字の色が青色の理由?
-
excelで奇数の行のみ削除したい
-
エクセルでのオートフィルタオ...
-
エクセルを使用してデジタルフ...
-
エクセル:色の付いたデータを...
-
5の倍数の日付だけを抽出したい
-
エクセルについて。 ソートで絞...
-
色のついたセルにフラグを立た...
-
Excelでオートフィルタ時に交互...
-
Excelのセルのデータ:年...
-
Excel マクロ オートフ...
-
フィルタをかけた列のセルの▼マ...
おすすめ情報