Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


7270 / 13644 ツリー ←次へ | 前へ→

【40176】"今日の日付"より前後のデータを分けて転記する XS 06/7/7(金) 21:23 質問[未読]
【40184】Re:"今日の日付"より前後のデ... Ned 06/7/7(金) 23:51 発言[未読]
【40186】Re:"今日の日付"より前後のデ... XS 06/7/8(土) 1:01 発言[未読]
【40187】Re:"今日の日付"より前後のデ... Ned 06/7/8(土) 1:13 発言[未読]
【40188】Re:"今日の日付"より前後のデ... かみちゃん 06/7/8(土) 1:14 発言[未読]
【40189】Re:"今日の日付"より前後のデ... Ned 06/7/8(土) 1:26 発言[未読]
【40210】Re:"今日の日付"より前後のデ... XS 06/7/9(日) 2:48 お礼[未読]

【40176】"今日の日付"より前後のデータ...
質問  XS  - 06/7/7(金) 21:23 -

引用なし
パスワード
   こんばんは。
いつも拝見しております。
質問があります。
    A列
1  2006年7月25日
2  2005年12月30日
3  2007年1月31日
4  2006年7月31日
5  2006年6月30日
6  2005年4月30日

シートに上記のような日付が書いてあり、
"今日の日付"を基準に
プロジェクト継続中か完了済に分け、
2つのシートに転記したいと思っております。

Sub 継続完了()
  Worksheets("練習").Range("A1:A6").Selection
  Selection.AutoFilter field:=1, Criteria1:="< 2006年7月7日"
End Sub

これでは7月7日を指定してしまっているのでダメだと思うのですが
"今日の日付"として、ここからコードを変更することができませんでした。

A1は7月7日時点では継続中ですので、
継続中シートに転記させておき
7月26日になると完了済となるため
今度は完了済シートに転記させたいのですが・・・

オートフィルタを使うのは間違っているんでしょうか?
よろしくお願いします。

【40184】Re:"今日の日付"より前後のデ...
発言  Ned  - 06/7/7(金) 23:51 -

引用なし
パスワード
   こんにちは。
Worksheets("練習").Range("A1:A6").AutoFilter field:=1, Criteria1:="<" & Date
な感じかと。

【40186】Re:"今日の日付"より前後のデ...
発言  XS  - 06/7/8(土) 1:01 -

引用なし
パスワード
   Nedさんありがとうございます。

もうひとつ質問してもよいでしょうか。
年月日が文字列で入っているのは問題になるのでしょうか?

何か追加コードを書く必要はありますか?
宜しくお願いします。

【40187】Re:"今日の日付"より前後のデ...
発言  Ned  - 06/7/8(土) 1:13 -

引用なし
パスワード
   >年月日が文字列で入っているのは問題になるのでしょうか?
というより、問題が発生しているのですよね^ ^;
オートフィルターでは文字列の大小は判定できないと思いますが。
追加コードを書くより、現在のデータを日付データ(シリアル値)にしたほうが良いと思います。

A列選択して、メニュー[データ]-[区切り位置]-[完了]...で日付データになります。

【40188】Re:"今日の日付"より前後のデ...
発言  かみちゃん  - 06/7/8(土) 1:14 -

引用なし
パスワード
   こんにちは。かみちゃん です。

横から失礼します。

>年月日が文字列で入っているのは問題になるのでしょうか?

問題です。なぜなら、文字列の場合
2006年7月7日
2006年7月31日
というデータの場合、
"< 2006年7月7日"ではなく
"<2006年7月7日"とした場合でも
2006年7月7日
2006年7月31日
が抽出されます。
"2006年7月3"の時点で"2006年7月7"より小さいデータであるということはおわかり
になりますでしょうか?

これは、VBAコードでどうこうできる問題ではないと思います。
元データを修正する必要があるのではないでしょうか?

【40189】Re:"今日の日付"より前後のデ...
発言  Ned  - 06/7/8(土) 1:26 -

引用なし
パスワード
   あら^ ^;失礼しました。
>オートフィルターでは文字列の大小は判定できないと思いますが。
ウソ書いてしまいました。文字列で条件設定すれば良いですね。m(_ _)m
もちろんシリアル値にするに越した事はないですが。

【40210】Re:"今日の日付"より前後のデ...
お礼  XS  - 06/7/9(日) 2:48 -

引用なし
パスワード
   Nedさん、かみちゃんさん
ありがとうございます。

元のデータに問題があったんですね。
失礼しました。
やり直してみます。

7270 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free