
エクセルVBA 別シートからのコンボボックス連動について
Book1(多人数入力用ブック)
・入力シート
・データ用シート
Book2(反映用ブック)
・シート1
Book1にコンボボックスが2列 テキストボックスが2列 * 6行のユーザーフォームを作成しました。
コンボボックス1 コンボボックス2 テキストボックス1 テキストボックス2
コンボボックス3 コンボボックス4 テキストボックス3 テキストボックス4
・
・
・
左のコンボボックスで「あ」が選ばれたときには、右のコンボボックスで「あ行の顧客」・・・というように連動させたいと考えております。
データ用シートのデータは、
A B C
1 あ あ行で始まる顧客 か行で始まる顧客
2 か
3 さ
4 た
5 な
6
Private Sub UserForm_Initialize()
Dim c As Range
ComboBox1.RowSource = "データ用シート!A1:A9"
End Sub
Private Sub ComboBox1_Change()
'Dim Rng As Range
'Dim i As Long
i = ComboBox1.ListIndex
If i > -1 Then
Dim c As Range
Set Sh = Worksheets("データ用シート")
Set Rng = Worksheets("データ用シート").Range("B2:I30")
ComboBox2.Value = ""
ComboBox2.RowSource = Rng.Columns(i + 1).Address
End If
End Sub
上記コードですと、コンボボックス2が入力シートのデータを表示してしまいうまくいきません。
欲をいえば、
Book1(多人数入力用ブック)入力シートの特定セルに
コンボボックス2・テキストボックス1 コンボボックス4・テキストボックス3というように続けて1セルに反映
Book2(反映用ブック)シート1に
コンボボックス2・テキストボックス1・テキストボックス2 を各1セル 1行に反映させたいと考えております。
まったく知識がないのですが 仕事上どうしても必要となったので、各種サイトを見よう見真似でやっております。
ご助力いただければ幸いです。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
> 上記コードですと、コンボボックス2が入力シートのデータを表示してしまいうまくいきません。
デバッグ用コードを3行追加します。出力をイミディエイトウィンドウで
確認してみて下さい。
> ComboBox2.RowSource = Rng.Columns(i + 1).Address
Debug.Print "設定値:" & Rng.Columns(i + 1).Address
Debug.Print "ComboBox2:" & ComboBox2.RowSource
Debug.Print "ComboBox1:" & ComboBox1.RowSource
デバッグして確認すればすぐ分かった話ですね。シート名が
指定されていないから Active なシートのセルからデータが
取られているだけです。
> 欲をいえば、
他の Book を開く方法は分かるの?って所から始まり、何ができて
何が分からないのかの説明をして下さい。
現時点では丸投げしてるだけなのでスルー対象ですね。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
ユーザーフォームに別シートからデータを反映させたい。
Visual Basic(VBA)
-
Excel VBA ユーザーフォーム1のコンボボックスに別ブックの値を反映させたいです。
Visual Basic(VBA)
-
テキストボックス(VBA)でEnterを押したときに作動するマクロ
Access(アクセス)
-
-
4
EXCEL VBAのコンボボックスに取り込むリストについて
Excel(エクセル)
-
5
ExcelVBAのユーザーフォームの中に線を引きたい
Visual Basic(VBA)
-
6
コンボボックスにリストが表示されません・・・
Excel(エクセル)
-
7
TextBoxから数字が文字として入力される?
Visual Basic(VBA)
-
8
VBA:ユーザーフォームのマルチページに色を付けたい。
Word(ワード)
-
9
コンボボックス内の文字サイズ変更
Excel(エクセル)
-
10
エクセルのラベルの値(文字列)を垂直方向で中央揃えにするには?
Excel(エクセル)
-
11
EXCEL VBA 指定したファイルが存在しない場合メッセージボックスを表示させる
Access(アクセス)
-
12
Excelで質問です。ListBoxの項目を別bookから読込むには
その他(Microsoft Office)
-
13
VBAのユーザーフォームで、テキストボックスを連携させたいのですが。
Visual Basic(VBA)
-
14
ExcelVBA No.を自動連番で設定をしながらデータ入力をしたい
Visual Basic(VBA)
-
15
Excel vba ListBoxについて
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【Excel VBA】Worksheets().Act...
-
XL:BeforeDoubleClickが動かない
-
実行時エラー'1004': WorkSheet...
-
Excelマクロのエラーを解決した...
-
オートシェイプの文字が更新さ...
-
EXCEL(VBA)でシート保護がかか...
-
excelのマクロで該当処理できな...
-
ユーザーフォームに入力したデ...
-
VBAで指定シート以外の選択
-
ExcelVBA シート名を複数セルか...
-
ユーザーフォームでのリストボ...
-
【VBA】特定の文字で改行(次の...
-
VBA 最終行まで数式をコピーする
-
EXCELVBAを使ってシートを一定...
-
ワークシートを追加したときの...
-
vba 環境依存文字がListViewボ...
-
エクセルVBA Ifでシート名が合...
-
エクセルVBA ListBoxの並び...
-
エクセルのマクロで実行時エラ...
-
ExcelのVBAを使い、複数シート...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【Excel VBA】Worksheets().Act...
-
Excelマクロのエラーを解決した...
-
excelのマクロで該当処理できな...
-
ユーザーフォームに入力したデ...
-
特定の文字を含むシートだけマ...
-
実行時エラー'1004': WorkSheet...
-
XL:BeforeDoubleClickが動かない
-
エクセルVBA Ifでシート名が合...
-
【ExcelVBA】全シートのセルの...
-
Excel チェックボックスにチェ...
-
ブック名、シート名を他のモジ...
-
Excel VBA リンク先をシート...
-
エクセルで通し番号を入れてチ...
-
実行時エラー1004「Select メソ...
-
シートが保護されている状態で...
-
ExcelのVBAのマクロで他のシー...
-
オートシェイプの文字が更新さ...
-
EXCELVBAを使ってシートを一定...
-
VBAで指定シート以外の選択
-
エクセルのマクロでアクティブ...
おすすめ情報