Excel VBA質問箱 IV

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

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


69014 / 76738 ←次へ | 前へ→

【12244】Re:subまたはfunctionが定義されていませ...
お礼  超初心者・・・  - 04/3/28(日) 0:57 -

引用なし
パスワード
   ▼IROC さん:
>>ただ良くわからないのが、「Criteria1:=割引日」の部分で、
>>割引日という変数はVariant型で、テキストボックスに「3/16」のような形で
>>入力してそれを格納し、その日付でオートフィルタをかける、
>
>日付の扱いには注意が必要です。
>
>まず
>  割引日 = TextBox1.Value
>ですが、TextBox1.Value は、文字列を返すので
>変数 割引日 は 
>Dim 割引日 As String
>とします。
>
>しかし、シート上のフィルタする対象が日付の場合、
>セルに入力されているのは、シリアル値といって日付型の値です。
>
>つまり 1900/1/1 を 1 として、 +1日ごとに +1 される
>連続したただの数値なのです。
>それを表示形式で yyyy/m/d のように表示しているだけなのです。
>
>なのでフィルタのキーワードは、シリアル値(日付型)で指定する必要があります。
>
>入力が 3/16 だと、 年 の指定がないので、対応できません。
>
>もし、入力を m/d でおこなうなら
>セルの日付を文字列にするしかありません。
>
>セルを日付型にしておくなら、「年」の入力が必要です。
>
>しかし、年 が固定なら
>
>Textbox1.text = "3/16"
>
>割引日 = cdate("2004" & Textbox1.text)
>
>にすれば出来るかと思います。
>
>cdate は、 日付型に変換する関数です。

お返事遅くなってしまい大変申し訳ありませんでした。
どうもありがとうございます。

元データの日付を最初は文字列にしていたのですが、日付にしてみたら抽出できました。
・・・ただ、12か月分のデータの割引日に対してフィルタをかけるという意図なんですが、4月分だけ、”H1"ではなく、2行目の全ての列でオートフィルタのボタンが表示されてしまうという現象が起きています。
これはいったいどういうことなんでしょう??
せっかく出来たと思ったのに、またはまってしまいました・・・

0 hits

【12184】subまたはfunctionが定義されていません。 超初心者・・・ 04/3/26(金) 1:25 質問
【12185】Re:subまたはfunctionが定義されていませ... IROC 04/3/26(金) 8:51 回答
【12192】Re:subまたはfunctionが定義されていませ... 超初心者・・・ 04/3/26(金) 12:58 お礼
【12186】Re:subまたはfunctionが定義されていません... こうちゃん 04/3/26(金) 8:52 回答
【12193】Re:subまたはfunctionが定義されていません... 超初心者・・・ 04/3/26(金) 12:59 お礼
【12198】Re:subまたはfunctionが定義されていません... こうちゃん 04/3/26(金) 14:44 回答
【12202】Re:subまたはfunctionが定義されていません... 超初心者・・・ 04/3/26(金) 15:35 お礼
【12203】Re:subまたはfunctionが定義されていませ... IROC 04/3/26(金) 15:50 回答
【12244】Re:subまたはfunctionが定義されていませ... 超初心者・・・ 04/3/28(日) 0:57 お礼
【12251】Re:subまたはfunctionが定義されていませ... IROC 04/3/28(日) 11:54 回答

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