|
▼masui さん:
>▼kanabun さん:
>
> UserForm検索.TextBox日=2012 が入力されています
>
> sht1.Cells(Gyou, Retu) = year(UserForm検索.TextBox日)
> OR指定で
> sht1.Cells(Gyou+1, Retu) = UserForm検索.TextBox日
> としましたがうまくいきません
> マクロの書き方が違うようです
> よろしくお願いします
>
>
>>あるいは、検索条件を
>>
>>------ E ----------------
>>1
>>2 =YEAR(A2)=2012
>>3 =LEFT(A2,4)="2012"
>>
>>-------------------------------
>>こんなふうに OR指定 してもいいですね(対象列がA列のばあい)
検索対象範囲が 「一覧」シートのA3に列見出しがあり、A4から
日付けデータがあると仮定します。(つまり日付データは A列のばあい)
試してないけど、こんな感じですよ
Dim ss As String
'TextBoxの文字列を変数ss にコピーします
ss = UserForm検索.TextBox日.Text
'「条件」シートの[E1:E3] に検索条件式を記入します
'A4 は最初のデータセル
With Worksheets("条件").Range("E1")
.ClearContents
.Offset(1).Formula = "=YEAR(一覧!A4)=" & ss
.Offset(2).Formula = "=LEFT(一覧!A4,4)=""" & ss & """
End With
Worksheets("一覧").Range("A3").CurrentRegion.AdvancedFilter _
Action:=xlFilterCopy, _
CriteriaRange:=Worksheets("条件").Range("E1:E3"), _
CopytoRange:=workSheets("項目").Range("A5"), _
Unique:=True
|
|