
いつもお世話になります
今、ValidateListを使ってシーt上にドロップダウンリストを作り、予め指定された値にしておきたいのですが、下記のようにテストプログラムを作ってみました
Sub test()
Cells(2, 10).Select: Call MakeDropDownList06(2): Selection.HorizontalAlignment = xlCenter
End Sub
Sub MakeDropDownList06(ByVal n As Integer)
Dim moji As String
Dim tmp As Variant
moji = "SD345,SD390,SD490,SR235,SR295"
With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Formula1:=moji
End With
tmp = Split(moji, ",")
With Selection
.Value = tmp(n - 1)
End With
End Sub
ここではSplitを使って、指定された番号の文字を挿入しているのですが
UserFormでつかうComboBox1.LsitIndexみたいなものや
もっとスマートな方法が有るのでないかと思い相談させていただきました
もし有れば、ご教授頂ければ幸いです
以上、よろしくお願い申し上げます
No.1ベストアンサー
- 回答日時:
あなたが提示した方法と、たいして変わりませんが、以下の方法ではどうでしょうか。
リスト用の文字をArrayで確保しておき、
Formula1には、それをカンマで連結して渡します。
表示値はArrayのn-1番目を渡します。
------------------------------
Sub MakeDropDownList06(ByVal n As Integer)
Dim tmp As Variant
tmp = Array("SD345", "SD390", "SD490", "SR235", "SR295")
With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Formula1:=Join(tmp, ",")
End With
With Selection
.Value = tmp(n - 1)
End With
End Sub
いつもお世話になります
なるほど
Splitを使うよりこちらの方がスマートですね
凄く参考になりました
使わせていただきます
これからもよろしくお願い致します
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VisualStudio2022でC言語プログ...
-
コンボボックスの名前を変数に...
-
余剰演算子について教えてください
-
Variant型で宣言してるのにEmpt...
-
jsp~jspにhiddenを使って変数...
-
C言語でしりとりのプログラムを...
-
数値を浮動小数点32bitHEXコー...
-
世界のナベアツ
-
VBAの定数の使い方で、計算値を...
-
VB 配列の内容をファイルに書...
-
excelの、ある数式内の{}の意...
-
VB6で配列を文字列に変換する方...
-
C#で動的にコントロールを取得...
-
データ構造のmapとは?
-
VBAのチェックボックス結果を集...
-
2つの列で重複するキーの数と...
-
ラズベリーパイ B でgpioを使っ...
-
テキストボックスの値を変数に...
-
COLUMN(1:1)の意味を教え...
-
ラジオボタンの値の取得につい...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VisualStudio2022でC言語プログ...
-
Accessで文字列のバイト数読み込み
-
C言語で全角文字を扱いたいので...
-
HTML5では文中の半角不等号はち...
-
Cpadで文字化け
-
rubyの正規表現について
-
ruby 正規表現の日本語とアルフ...
-
VC2008+Qtの文字化け
-
英数半角文字と「-」を指定する...
-
Ruby1.9で文字列の置換がうまく...
-
open-uriを用いた、ウェブ上か...
-
アンダーバーとバックスラッシュ
-
エクセルで数字の変換
-
VBAでダブルコーテーション入り...
-
C言語 exitの使い方
-
エラーの意味は? Lvalue req...
-
フォームを開くときに、コンボ...
-
Excel-vba 文字列と変数を...
-
VB6.0-整数と余りを求める
-
EXCEL/VBA 変数の値をクリップ...
おすすめ情報