2017-07-06 29 views
0

"From"と "To"のシートに2つの日付ピッカーがあります。これらの日付ピッカーから選択された日付を変数に記録してから、指定された範囲と入力データシートを参照してデータを抽出します。私はいくつかのコードを書いた。日付ピッカーからの日付抽出

Sub PITimeseries() 
Dim a As Object 
Dim b As Object 
Dim c As Date 
Set a = DTPicker1.Value 
Set b = DTPicker2.Value 

Sheet9.Select 
Dim rng As Range, cell As Range, rng1 As Range 
Set rng = Range("B5:B71") 
Set rng1 = Range("H5:H71") 
For Each cell In rng 
If cell.Value = a Or cell.Value = b Then 

example 今、私は私が対応する日付の一致セルが真か偽になりますどのようにとこだわっています。

答えて

0

これを試してみてください:

Private Sub CommandButton1_Click() 
Dim a As Date, b As Date, c As Date 
Dim sht As Worksheet 
Dim rng As Range, cell As Range, rng1 As Range 

Set sht = Worksheets("Sheet9") 
Set rng = sht.Range("B5:B71") 
Set rng1 = sht.Range("H5:H71") 

a = DTPicker1.Value 
b = DTPicker2.Value 

For Each cell In rng 
c = CDate(cell.Value) 
If c >= a And c <= b Then 
    sht.Cells(cell.Row, "H").Value = "True" 
Else 
    sht.Cells(cell.Row, "H").Value = "False" 
End If 
Next cell 
End Sub 

は、だからあなたの変数の型は、一種の間違っていたとORのためにのみ2つの条件の一つがフィットしなければなりません。そして、.Selectを使用しないでください。常に.Range, .Cells etc.をオブジェクト化してください。

+0

ありがとうございます。私は、日付ピッカーではなく、単純な月ドロップダウンセレクターを先に進めました。しかし、このコードは間違いなく私を助けました。本当にありがとう! –

関連する問題