Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


6225 / 13646 ツリー ←次へ | 前へ→

【46487】VBAによる入力規則セルの作成について AKI 07/2/5(月) 14:21 質問[未読]
【46519】Re:VBAによる入力規則セルの作成について Ned 07/2/5(月) 19:53 発言[未読]
【46544】Re:VBAによる入力規則セルの作成について AKI 07/2/6(火) 11:45 お礼[未読]

【46487】VBAによる入力規則セルの作成について
質問  AKI  - 07/2/5(月) 14:21 -

引用なし
パスワード
   下記のように、strListとにリストの一覧を作成しておいて、validationで入力規則付のセルを作成していますが、リストが途中までしか表示されません。扱えるリスト量に制限があるのでしょうか?回避方法をご存知の方、ご教示ください。

  'Worksheets("REGMAP")の内容からstrListに、入力規則付セルに表示させる
  'リストを作成する。
  strList = ""
  For i = 0 To 25
    reg_name = Worksheets("REGMAP").Range("A1").Offset(i, 0)
    reg_address = Worksheets("REGMAP").Range("A1").Offset(i, 1)
    strList = strList & "," & "A_" & reg_address & "_" & reg_name
  Next
  
  '入力規則付セルをWorksheets("INIT")"に作成する。
  With Worksheets("INIT").Activate
    Range("A1").Offset(0, 0).Select
    With Selection.Validation
      .Delete
      .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:=xlBetween, Formula1:=strList
    End With
  End With

【46519】Re:VBAによる入力規則セルの作成について
発言  Ned  - 07/2/5(月) 19:53 -

引用なし
パスワード
   こんにちは。
入力規則リストの元の値に直接文字列を設定するのは、制限あるようですので、
作業列にリストを作って、そのセルアドレスを参照するようにしては如何でしょう。
名前定義を使うと、その作業列を他シートに設定する事も可能です。

#他に気になった点
>With Worksheets("INIT").Activate
という書き方は...?
Activate,Selectせず、
With Worksheets("INIT").Range("A1").Validation
  .Delete
  .Add Type:=xlValidateList, _
     AlertStyle:=xlValidAlertStop, _
     Formula1:="=$B$1:$B$26"
End With
...な感じで良いと思います。

【46544】Re:VBAによる入力規則セルの作成について
お礼  AKI  - 07/2/6(火) 11:45 -

引用なし
パスワード
   Ned さん
返答ありがとうございました。
他のページも色々調べてみましたが、Formula1に設定する文字列には制限が
あるようなので、ご助言の方法で実現することにしました。
ありがとうございました。

6225 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free