07/02/15 19:31:06
ダイアログボックスで入力された年・月にしたがってカレンダーを表示するマクロを作っています。
年・月は文字列として取得、それを日付型にデータ変換して日付型の変数に代入しているのですが、
そこで「実行時エラー'11': 0で除算しました。」とのエラーが出ます。
DateValue関数を使う、日付型の変数を Variant型に変える、を試してみましたが、
結果は同じでした。
文字型の変数を Variant型に変えると、最初に1回エラーが出たあとその後は出なくなりましたが、
カレンダー表示の処理のところで日付を誤認してしまいます。
現在は On Error Resume Next でエラーを抑制して動かしており、
本来の目的であるカレンダー表示はそれで問題なくできておりますが、
可能であればエラー自体出ないようにしたいと思っています。
どこが悪いのかアドバイスをお願いします。
テストコード
Sub test()
Dim strInput As String
Dim datDay As Date
strInput = InputBox("年と月を入力してください。(例)「2007 2」")
datDay = CDate(strInput)
MsgBox datDay
End Sub
環境
Mac OS X 10.4.8
Excel 2004 for Mac ver. 11.3(060914)
以上よろしくお願いします。