- ベストアンサー
excelvbaのweekday関数の比較
下記のようなプログラムを書きましたが、 weekday関数の戻り値との比較ができません。 お分かりになる方、ご教授お願いします。 フォームには、 コンボボックス "曜日" コマンドボタン "比較" があるとします。 Private Sub UserForm_Initialize() 'コンボボックスのプロパティ設定 With 曜日 .Style = fmStyleDropDownList .ColumnCount = 2 .ColumnWidths = "0;30" .TextColumn = 2 .BoundColumn = 1 .ListWidth = 30 End With '曜日データの設定 With 曜日 For i = 1 To 7 .AddItem i '戻り値は数値 .List(i - 1, 1) = WeekdayName(i, True) '表示は文字列 Next i End With End Sub Private Sub 比較_Click() Dim 開始日付 As Date 開始日付 = DateSerial(2008, 4, 1) Do Until Weekday(開始日付) = 曜日 開始日付 = 開始日付 + 1 Loop End Sub 上記の処理で、開始日付を選択された曜日までインクリメントさせたいのですが、 Doの比較が一致せず、オーバーフローになってしまいます。 いろいろ調べましたが、何がいけないのかさっぱりわかりません。 ちなみに、Dateserialの中の数値も、 コンボボックスで選択するように作成しています。 よろしくお願いいたします。
- みんなの回答 (3)
- 専門家の回答
お礼
早速ご回答していただき、ありがとうございます。 返答が遅くなりまして申し訳ありません。 コンボボックスから帰ってくる値の型までは、 気にしたことがありませんでした。 変数には普段から型宣言をしているため、 Variant型については意識したことがありませんでした。 教えていただいたとおり、できました。 ありがとうございました。