マクロで入力規則を設定すると日付が文字列になる不具合が・・・・
エクセル2000です。
以下はG10セルに手作業で「入力規則」を設定するところをマクロの記録で残したものです。
リストは、2008/11/1,2008/11/5,2008/11/30 と yyyy/m/d 形式で手入力しましたが、なぜか記録では 11/1/2008,11/5/2008,11/30/2008 と m/d/yyyy 形式になっています。
手作業で設定した入力規則は正しく作動し、セルに表示されるドロップダウンリストも手入力どおり yyyy/m/d になっています。
ところが、記録したこのマクロをそのまま作動させると、今度はリストは m/d/yyyy になり、しかも日付ではなくなんと文字列になってしまうのです。
マクロを手直しし、
xlBetween, Formula1:="11/1/2008,11/5/2008,11/30/2008"を
xlBetween, Formula1:="2008/11/1,2008/11/5,2008/11/30"にしても同じ結果( m/d/yyyy かつ文字列)となります。
なにがいけないのでしょうか???
Sub Macro4()
'
' Macro4 Macro
' マクロ記録日 : 2008/10/31 ユーザー名 : MerlionXX
Range("G10").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="11/1/2008,11/5/2008,11/30/2008"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = "指定日"
.InputMessage = ""
.ErrorMessage = "リストの中から選んでね。"
.IMEMode = xlIMEModeDisable
.ShowInput = True
.ShowError = True
End With
End Sub
お礼
imogasi様 私の単純な記述ミスをしてました。 気づかせて頂き有難うございます。
補足
imogasi様 回答有難うございます。同じように記述もしたのですが、うまくいかずに投稿しました。 もう一度検討してみます。