プロが教える店舗&オフィスのセキュリティ対策術

Excel VBA作成でお知恵を下さい。

シートの様式に書き込むフォームを作成しております。
添付画像のように・・・
リストBOXより「1」、「2」、「3」の選択肢があり、
そのグループごと、項目の値をシートセルに書く込むコードは
出来るのでしょうか?

例:
リストBOX⇒「1」を選択。
グループの「あ」は、セル「A1」、「い」セル「A2」・・・
の様、リスト選択のグループで同じセルA1からA4に書き込む。

以上、お教え下さい。お願いいたします。

「Excel ユーザーフォーム リスト選択」の質問画像

A 回答 (1件)

こんばんは。



ふつうは、myLists などのデータは、ワークシート上に置いて、そこから取り出すのが一般的です。今回、それについて触れていませんでしたので、すべてVBA内で処理するようにしました。

'//
Dim Ary(0 To 4, 0 To 3)  'モジュール変数

Private Sub ListBox1_Click()
Dim i As Long, j As Long, rw As Long
 i =Me.ListBox1.Value
 rw = (i - 1) * 4 + 2 'セルの書き出し位置
 For j = 0 To 3
  Cells(rw + j, 2).Value = Ary(i - 1, j) '実際の書き出し
 Next j
End Sub

Private Sub UserForm_Initialize()
Dim i As Long, j As Long, k As Long
Dim myLists
myLists = Split("あ,い,う,え,お,か,き,く,け,こ,さ,し,す,せ,そ,た,ち,つ,て,と,な,に,ぬ,ね,の", ",")
Me.ListBox1.List = Array(1, 2, 3)
For i = 0 To 4
 For j = 0 To 3
  Ary(i, j) = myLists(k)
 k = k + 1
 Next
Next i
End Sub
    • good
    • 1
この回答へのお礼

早速のご回答ありがとう御座います。
今、確認出来る環境ではないので後日、確認させて頂きます。
ありがとうございました。

お礼日時:2017/02/07 20:49

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