プロが教えるわが家の防犯対策術!

入力規則でリスト登録する記述について、教えていただけないでしょうか。

例えば変数(long)で、a=1,b=5 というものがあったとします。
シート1のA1セルに、1,2,3,4,5 でそれぞれ数値選択できる入力リスト
を作成したいのですが、うまくいきません。どのように修正したらよいか教えて欲しいです。

Dim a As long
Dim b As long

a=1
b=5

With Worksheets("Sheet1").Range("A1").Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:=xlBetween, Formula1:=a, Formula2:=b
End With

だと、何も設定されません。

A 回答 (1件)

>入力リストを作成したい



その通りにリストネタを作るだけです。

sub macro1()
 dim s as long
 dim e as long
 dim i as long
 dim res as string

 s = 1
 e = 5
 for i = s to e
  res = res & "," & i
 next i
 res = mid(res, 2)

 with worksheets("Sheet1").range("A1").validation
  .delete
  .add type:=xlvalidatelist, alertstyle:=xlvalidalertstop, operator:=xlbetween, formula1:=res
 end with
end sub



修正とか以前に新しいマクロの記録で、実際に「1,2,3,4,5 でそれぞれ数値選択できる入力リストを作成」する操作をマクロに録ってみると、少なくとも大外れせずに作成できます。実際に手を動かして、ご自分でも行ってみて下さい。
    • good
    • 0
この回答へのお礼

迅速な回答ありがとうございました。
頂いたアドバイスを踏まえて精進いたします。

お礼日時:2014/06/02 22:17

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!