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

いつもお世話になります。

Sheet1のA2からA10までをRowsourceで指定して表示させる場合、Sheet1!A2:A10の形式になるかと思いますが、
Sheet1を変数を使ってシート名を指定する場合のやり方をご教示願えればと思います。

質問者からの補足コメント

  • すいません、variant以外の変数で何か方法があれば教えて頂きたいです。

      補足日時:2016/05/28 18:19

A 回答 (1件)

Rowsourceプロパティは、String型なので、普通に文字列の結合でできますよ。


以下、サンプルです。UserForm_Clickイベントプロシジャに張り付けてみて下さい。
ユーザフォームをクリックするたびに、アクティブシートを移動し、移動後のA1:A10をRowsourceに設定してます。

Private Sub UserForm_Click()
Dim I As Long
Dim RowSourceSheetName As String
I = ActiveSheet.Index + 1
If I > Worksheets.Count Then I = 1
Worksheets(I).Select
RowSourceSheetName = ActiveSheet.Name

ListBox1.RowSource = RowSourceSheetName & "!A1:A10"
End Sub
    • good
    • 0
この回答へのお礼

素晴らしいです。
何も言うことありません。
問題なく動作しました。
ママチャリ様、本当にありがとうございましたm(__)m

お礼日時:2016/05/28 20:03

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