新生活を充実させるための「こだわり」を取材!!

いつもお世話になっております。
エクセルVBAのChangeイベントについてご教授いただきたいと思います。
VBA初心者です。


【やりたいこと】
日付の入った一覧表があります。
これを、A1セルに入力した月の数字で自動で抽出できるようにしたいのです。
(A1に「11」月と入力すると、一覧表の11月分が自動で抽出)


抽出したい月は何度も変わるので、A1セルの入力値が変更される度に動かしたいのですが、
一回目は実行できても二回目以降が動きません。
考え方が違うのか、コードが足りないのかも分からない状態です。

何とぞご教授のほど、お願いいたします。



Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("A1")) Is Nothing Then
Exit Sub
Else
Range("A1").Select
Selection.AutoFilter field:=1, Criteria1:=Range("A1").Value, Operator:=xlAnd
End If
End Sub

質問者からの補足コメント

  • GooUserラック様

    説明不足ですみません。
    一覧表の月はA列に表記されています。

      補足日時:2017/11/19 01:45
教えて!goo グレード

A 回答 (2件)

もしかしたら以下のような事ですか?


--------------------------------------------------------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address(False, False) = "A1" Then
Cells.AutoFilter Field:=1, Criteria1:=Target.Text
End If
End Sub
--------------------------------------------------------------------------------
    • good
    • 0
この回答へのお礼

出来ました!

早速のご回答、ありがとうございます!
本当に助かりました。
また分からないことがありましたらご教授いただけると嬉しいです。

お礼日時:2017/11/19 11:48

ちなみに月はどの列に記入されているのでしょうか?

    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

教えて!goo グレード

人気Q&Aランキング