ここから本文です

別のファイルのシート名をコンボボックスに表示させて、選択したらそのシートのA列...

acc********さん

2011/7/2715:42:24

別のファイルのシート名をコンボボックスに表示させて、選択したらそのシートのA列をリストボックスに表示させることは可能でしょうか?

因みに何とかコンボボックスにファイルのシート名までは表示させる事ができました。
Private Sub UserForm_Initialize()

Dim wb As Workbook
Dim sw As Boolean
Dim R As Integer
For Each wb In Workbooks 'ケミカル表.xlsmが開いているかチェック
If wb.Name = "ケミカル表.xlsm" Then
sw = True
Exit For
End If
Next wb

If sw = False Then '開いていないときは開く
Workbooks.Open Filename:="ケミカル表.xlsm"
End If

' ワークシート名をコンボボックスに取得する
For i = 1 To Workbooks("ケミカル表.xlsm").Worksheets.Count
UserForm8.ComboBox1.AddItem Workbooks("ケミカル表.xlsm").Worksheets(i).Name
Next
Workbooks("ケミカル表.xlsm").Close’ケミカル表.xlsmを閉じる
End Sub

ケミカル表.xlsmのシート数は複数あります。
解らない点は
1.コンボボックスに表示させるのにケミカル表を一度開いているのでリストボックスに表示させるのに
また開かせないといけないのか?
2.Caseを使用できるのか?

どなたか教えて頂けますか?

補足Dim i As Long, l As Long
ListBox1.Clear
If ComboBox1.Text = "" Then Exit Sub
If Not Columns("A").Find(ComboBox1.Text, lookat:=1) Is Nothing Then
For C = 1 To Workbooks("ケミカル表.xlsm").Worksheets.Count
l = Range(Workbooks("ケミカル表.xlsm.Worksheets(C).Name(A)") & Rows.Count).End(xlUp).Row
Next
For i = 2 To l
If CStr(Cells(i, "A").Value) = ComboBox2.Text Then
ListBox1.AddItem Cells(i, "A").Value
End If

閲覧数:
1,556
回答数:
1
お礼:
50枚

違反報告

ベストアンサーに選ばれた回答

hig********さん

2011/7/2721:14:29

access_go0821さん

1 開いていないブックの参照や操作は出来ません
2 今回の処理で、どの部分にselect caseを使用したいのかが分りません


詳細が無いので分りませんが・・・
こんな事がしたいのかな?
ケミカル表.xlsmが開いていることが前提です
Private Sub ComboBox1_Change()
ListBox1.Clear
If ComboBox1.Text = "" Then Exit Sub
With Workbooks("ケミカル表.xlsm").Worksheets(ComboBox1.Text)
ListBox1.List() = .Range("a1", .Cells(Rows.Count, "A").End(xlUp)).Value
End With
End Sub

参考まで

質問した人からのコメント

2011/7/28 07:48:08

hige_082さん有難うございます。
まさにやりたい事でした。
With Workbooks("ケミカル表.xlsm").Worksheets(ComboBox1.Text)
ListBox1.List() = .Range("a1", .Cells(Rows.Count, "A").End(xlUp)).Value
で済んでしまうなんて勉強します。
感謝です。

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる