|
▼Jaka さん:
>> .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
>> xlBetween, Formula1:="=ListSource"
> ↑
> これって、エクセル関数と同じで、
> 結局は文字が入るんですよ。
> ここに
> "=INDIRECT(" & "Sheet1!A1:A10" & ")"
> って事でしょうか?
> "Sheet1!A1:A10"は、変数でも良いし...。
うーん・・・・。
過去掲示板の記事も参考にさせていただいたのですが、以下のコードを試して
「アプリケーションの定義エラー」
となります。
Err.Descriptionを見ても、
「アプリケーション定義またはオブジェクト定義のエラーです。」
となります・・。
※WORKはシート名です。
Sub test()
With ThisWorkbook.Worksheets("メンテナンス")
Range("D11:D40").Select
Application.CutCopyMode = False
With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=INDIRECT(" & "WORK!A1:A10" & ")"
.IgnoreBlank = True
.InCellDropdown = True
.ErrorMessage = "入力する値をドロップダウンリストから選択してください。"
.IMEMode = xlIMEModeNoControl
.ShowInput = True
.ShowError = True
End With
End With
End Sub
|
|