Page 547 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 通常モードに戻る ┃ INDEX ┃ ≪前へ │ 次へ≫ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ▼ListBox の RowSource の値 だーちむ 03/1/14(火) 14:20 ┗Re:ListBox の RowSource の値 ichinose 03/1/15(水) 11:35 ┗Re:ListBox の RowSource の値 だーちむ 03/1/15(水) 13:53 ─────────────────────────────────────── ■題名 : ListBox の RowSource の値 ■名前 : だーちむ ■日付 : 03/1/14(火) 14:20 -------------------------------------------------------------------------
はじめまして。 基本的な質問で大変申し訳無いのですが、 フォームにリストボックスを作ろうとしております。 リストボックスに表示させる選択肢を、別のbookのセルから とって来たいのですが、 例えば、RowSorceの値を 'C:\[a.xls]sheet1'!a1:a2 等とすると、エラーになってしまいます。 a.xlsを開いた状態であれば、 [a.xls]sheet1!a1:a2 で問題無く表示されるのですが...。 ちなみにパスが間違っているとか、 そういうことはありません。 おわかりの方がいらっしゃいましたら、 どうぞ宜しくお願い致します。 |
▼だーちむ さん: こんにちは。 >基本的な質問で大変申し訳無いのですが、 >フォームにリストボックスを作ろうとしております。 >リストボックスに表示させる選択肢を、別のbookのセルから >とって来たいのですが、 >例えば、RowSorceの値を >'C:\[a.xls]sheet1'!a1:a2 >等とすると、エラーになってしまいます。 これ、直接の指定は無理みたいですね。 >a.xlsを開いた状態であれば、 >[a.xls]sheet1!a1:a2 >で問題無く表示されるのですが...。 一度、マクロを含むブックにデータを読み込んでから、そのセル範囲を指定する方法では いけませんか?例ですが、 '=================================================== Sub test() With ThisWorkbook.Worksheets(1) .Range("a1:a2").Formula = "='C:\[a.xls]sheet1'!a1" .Range("a1:a2") = .Range("a1:a2").Value End With Load UserForm1 With UserForm1 .ListBox1.RowSource = "=sheet1!a1:a2" .Show End With ThisWorkbook.Worksheets(1).Range("a1:a2").Value = "" End Sub |
ichinoseさん、お世話様です。 ▼ichinose さん: >>フォームにリストボックスを作ろうとしております。 >>リストボックスに表示させる選択肢を、別のbookのセルから >>とって来たいのですが、 >>例えば、RowSorceの値を >>'C:\[a.xls]sheet1'!a1:a2 >>等とすると、エラーになってしまいます。 >これ、直接の指定は無理みたいですね。 やっぱりそうなんですね...。 >>a.xlsを開いた状態であれば、 >>[a.xls]sheet1!a1:a2 >>で問題無く表示されるのですが...。 >一度、マクロを含むブックにデータを読み込んでから、そのセル範囲を指定する方法では >いけませんか?例ですが、 >'=================================================== >Sub test() > With ThisWorkbook.Worksheets(1) > .Range("a1:a2").Formula = "='C:\[a.xls]sheet1'!a1" > .Range("a1:a2") = .Range("a1:a2").Value > End With > Load UserForm1 > With UserForm1 > .ListBox1.RowSource = "=sheet1!a1:a2" > .Show > End With > ThisWorkbook.Worksheets(1).Range("a1:a2").Value = "" >End Sub なるほど! バックグラウンドで開いておけばよいというわけですね。 これでやってみます。 とても助かりました。どうもありがとうございました! |