No.3ベストアンサー
- 回答日時:
DateAdd関数をよく使いますよ。
一ヶ月というので日にち換算するのは微妙だから
単純に一ヶ月加算するのがベストではないでしょうか?
入力したFromに一ヶ月加算して比較する方法です。
ポイントは DateAdd関数とFormat関数です。
参考ソースをのせました。
日付のチェックは 行っていません。
入れる場合は工夫してください。
Private Sub Command1_Click()
Dim sSDate As String
Dim sAddDate As String
Dim sEDate As String
On Error GoTo FncEnd
sSDate = Format$(Text1(0).Text, "yyyy/mm/dd")
sAddDate = Format$(DateAdd("m", 1, sSDate), "yyyy/mm/dd")
sEDate = Format$(Text1(1).Text, "yyyy/mm/dd")
If sAddDate <= sEDate Then
Call MsgBox("NG!!" & sSDate & " - " & sEDate, vbExclamation)
Else
Call MsgBox("OK!!" & sSDate & " - " & sEDate, vbInformation)
End If
FncEnd:
End Sub
Hk2001さんありがとうございます。
どうやらこの方法が一番ベストのようです!!
回答していただきありがとうございました。
とても助かりました。また何かあったらその時は宜しくお願いします<(_ _)>
No.4
- 回答日時:
#3.Hk2001さんの回答がベターだと思いますが、
ローカル変数 sAddDate と sEDate を String型 のまま比較しちゃっちゃってるところが気になりました。
実動作では恐らく問題ないし、結構平気でやっちゃいますけどね。
しかしY2Kのころとか、結構アバウトなロジック部分がおかしくなっちゃったりしたから、データ型は厳密に適用するに越したことはないってだけです。
あと99年ぐらいは大丈夫でしょう。
それと、DateAddはOSの日付によるので、OSのカレンダがバグってると狂います。
といってもわざわざ1ステップで済むところを自分でコーディングするほどヒマじゃないけど・・・。余計な話ですね。失礼。
余計な話なんてとんでもないです!!
>DateAddはOSの日付によるので、OSのカレンダがバグってると狂います。
そうなんですかー。知りませんでした。
貴重な情報ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルの複数条件作成方法について 2 2023/01/23 21:38
- システム CSVファイルのマッピング処理の省力化 1 2022/11/24 00:01
- UNIX・Linux bash環境でのエラー対応をお願い致します。 1 2022/11/26 17:41
- Access(アクセス) チェックボックスにチェックが入った後の挙動 1 2022/08/21 12:39
- Access(アクセス) アクセス where句を使用して複数条件抽出をするには 2 2022/08/29 13:24
- Yahoo!メール YahooIDをパスワード形式にしただけなのに、利用規約違反とされて電話番号が使えなくなりました 1 2023/03/15 20:44
- Excel(エクセル) Excelについて▶あるセルに文字を入力すると、別のセルに色がつく(条件付き書式) 1 2022/03/27 16:43
- Access(アクセス) Accessで予定表を作成しようとしてます。 テーブル フィールド名 連番 オートナンバー型 年月日 2 2023/07/23 11:40
- Yahoo!メール YahooIDをパスワード形式にしただけなのに、利用規約違反とされて電話番号が使えなくなりました 3 2023/03/25 04:08
- Excel(エクセル) Excelに関して質問があります。 写真のようなことが起こりました。 解決方法が分かりません。 どな 2 2023/05/30 05:54
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
文字列内で括弧を使うには
-
UserForm1.Showでエラーになり...
-
On ErrorでエラーNoが0
-
エクセルVBA 「On Error GoTo...
-
String""から型'Double'への変...
-
VBAでfunctionを利用しようとし...
-
マクロで"#N/A"のエラー行を削...
-
ASPでこんなエラーが出たんです...
-
.VBSだとADODBのプロバイダが見...
-
【VBA】ワークブックを開く時に...
-
VBA データ(特定値)のある最...
-
実行時エラー 438 の解決策をお...
-
UBoundに配列がありませんとエ...
-
VBでSQL文のUPDATE構文を使った...
-
【VBAエラー】Nextに対するFor...
-
Filter関数を用いた結果、何も...
-
お助けください!VBAのファイル...
-
python初心者です。
-
マクロの「SaveAs」でエラーが...
-
データベース操作時エラーについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
UserForm1.Showでエラーになり...
-
String""から型'Double'への変...
-
On ErrorでエラーNoが0
-
VBAでfunctionを利用しようとし...
-
マクロで"#N/A"のエラー行を削...
-
VBA データ(特定値)のある最...
-
実行時エラー 438 の解決策をお...
-
お助けください!VBAのファイル...
-
文字列内で括弧を使うには
-
エクセルVBA 「On Error GoTo...
-
【VBA】ワークブックを開く時に...
-
マクロの「SaveAs」でエラーが...
-
ACCESSで値を代入できないとは?
-
実行時エラー'-2147467259(8000...
-
インポート時のエラー「データ...
-
【VB.NET】 パワポ操作を非表示で
-
Filter関数を用いた結果、何も...
-
UBoundに配列がありませんとエ...
-
Excel vbaについての質問
-
メールの件名のセットでエラー...
おすすめ情報