0抜き(0無し)、0埋め(0あり)、混在対応
官公庁系のデータの日付には、「0埋め」だったり「0抜き」だっり、
それが混在してたり、ダウンロードして処理をするのに、注意する必要があります。
「0埋め」のコード例は検索しやすいのですが、「0抜き」はあまり
見ないような気がします。
私のコンピュータのExcelのFormatでは「0埋め」の設定だったので、
「0抜き」の日付データを作って、配列にして、オートフィルターで、
検索するコードを作ってみました。
(その部分だけ、抜いています。)
まだまだ、始めたばかりで、コードを公開するのも初めてです。
分からないことも多いと思いますので、ご指摘はお手柔らかにお願いします・・・
(ごめん。コメント欄は、いつか、そのうち、設ける予定です・・・)
' 正規表現を使って0抜きの日付を設定
s = Format(theday, "yyyy/mm/dd")
t = ""
u = ""
v = ""
Dim re As New RegExp
re.Pattern = "..../0./.."
If re.Test(s) Then
t = Left(s, 5) + Right(s, 4)
re.Pattern = "...././0."
If re.Test(t) Then
u = Left(t, 7) + Right(t, 1)
End If
Else
re.Pattern = "..../../0."
If re.Test(s) Then
v = Left(s, 8) + Right(s, 1)
End If
End If
ListArray(0) = s
ListArray(1) = t
ListArray(2) = u
ListArray(3) = v
' 日付でフィルターリング
ThisWorkbook.Worksheets(" シート名 ").Range(" セル名 ").AutoFilter Field:=2, _
Criteria1:=ListArray, Operator:=xlFilterValues