![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
ExcelVBA初心者です。
ユーザーフォーム1でsheet1を選択した場合→次のユーザーフォーム2ではsheet1の内容を、
sheet2を選択した場合→sheet2の、sheet3を選択した場合→sheet3の
内容をそれぞれキャプションとして表示したいのですが、
なかなか上手く出来ません。
Private Sub UserForm_Initialize()
If UserForm1.ComboBox1 = Worksheets("Sheet1").Select Then
UserForm2.Caption = Worksheets("Sheet1").Range("B3").Value
ElseIf UserForm1.ComboBox1 = Worksheets("Sheet2").Select Then
UserForm2.Caption = Worksheets("Sheet2").Range("B3").Value
Else
UserForm1.ComboBox1 = Worksheets("Sheet3").Select
UserForm2.Caption = Worksheets("Sheet3").Range("B3").Value
End If
End Sub
としてみたのですが、どのシートを選択してもsheet3の内容が
ユーザーフォーム2のキャプションとして表示されてしまいます。
どのようにしたら良いでしょうか?
よろしくお願い致します。
No.1ベストアンサー
- 回答日時:
コンボボックスにどのような値があるかわかりませんが、
>If UserForm1.ComboBox1 = Worksheets("Sheet1").Select Then
If UserForm1.ComboBox1.Text = "Sheet1" Then
とかではないの?
或いは
UserForm2.Caption = Worksheets(UserForm1.ComboBox1.Text).Range("B3").Value
の一行だけとか?
なるほど。
If UserForm1.ComboBox1.Text = "Sheet1" Then
と置き換えたらすぐに出来ました!
大変助かりました。ありがとうございました!
No.2
- 回答日時:
こんにちは。
ご質問の内容から見て、勉強を兼ねてコードを組んでらっしゃると
思いました。ので具体的なコードは省略して調べるとっかかりを
ご提案します。
具体的なコードだけ知りたいということでしたら、n-jun様の回答を
参考にされる方がよいと思います。
今のコードでは常に最後のElseに該当していると思います。
もしガイドブック的なものをお持ちなら、デバッグ実行という方法を
調べて実行してみましょう。そして、
UserForm1.ComboBox1
Worksheets("Sheet1").Select
の二つにどんな値が入っているかを見てみましょう。実際には、
それぞれ色んな項目(プロパティ)があることが判りますし、
その中の何を使えばいいのかも調べられるようになります。
もし、こんな風に自分で調べてみたいという方針だけれども進め方が
見えないということでしたらまた聞いてください。
ありがとうございます。
ガイドブックで独学で勉強をしているもので、
どうやって調べたら良いか分からずにやみ雲に
コードを組んでいる状態なので、とても参考になりました。
デバック実行で調べてみます。
また質問することがあるかと思いますが、よろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・「I love you」 をかっこよく翻訳してみてください
- ・歩いた自慢大会
- ・許せない心理テスト
- ・字面がカッコいい英単語
- ・昔のあなたへのアドバイス
- ・かっこよく答えてください!!
- ・あなたが好きな本屋さんを教えてください
- ・スタッフと宿泊客が全員斜め上を行くホテルのレビュー
- ・【大喜利】【投稿~8/27】 こんなガソリンスタンド二度と来るか!なぜそう思った?
- ・これ何て呼びますか Part2
- ・人生で一番思い出に残ってる靴
- ・【お題】動物のキャッチフレーズ
- ・【お題】甲子園での思い出の残し方
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・「それ、メッセージ花火でわざわざ伝えること?」
- ・自分用のお土産
- ・人生で一番お金がなかったとき
- ・一番好きなみそ汁の具材は?
- ・泣きながら食べたご飯の思い出
- ・ちょっと先の未来クイズ第1問
- ・ゴリラ向け動画サイト「ウホウホ動画」にありがちなこと
- ・初めて自分の家と他人の家が違う、と意識した時
- ・単二電池
- ・チョコミントアイス
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
アルファベットに付いて質問し...
-
フィルターかけた後、重複を除...
-
スキャンコード取得は MapVirtu...
-
IF文、条件分岐の整理方法
-
なぜシフトJISにロシア語がある...
-
【VB6】実行ファイルとした後、...
-
特定行の背景色を変えたいのですが
-
UWSCでMOUSEORG関数が上手く処...
-
TVリモコン設定(SMILE KIDS)
-
Nullの使い方が不正です。
-
エクセルに見えない文字(JISX0...
-
ACCESSで、履歴事項を管理する...
-
Visual BASIC イベント作成しよ...
-
エクセル VBA 同じ内容のセル...
-
Accessでの抽出で完全一致。
-
Excel-VBAで、Importをする方法
-
2つの住所録の照合
-
バーコード(JAN)を印刷したいの...
-
VB6.0にてStreamReaderを使用...
-
アクセスで教えて下さい。 下記...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
フィルターかけた後、重複を除...
-
JANコードとPOSコードは同じ?
-
access2003 クエリSQL文に...
-
1日に1人がこなせるプログラム...
-
オートフィルタで抽出結果に 罫...
-
変数名「cur」について
-
JavaScriptの定数名が取り消し...
-
ACCESSユニオンクエリでORDER B...
-
Exel VBA 別ブックから該当デ...
-
UWSCでMOUSEORG関数が上手く処...
-
COBOLの文法
-
PreviewKeyDownイベントが2回...
-
1、Rstudioで回帰直線を求める...
-
【VB6】実行ファイルとした後、...
-
VBAでファイルオープン後にコー...
-
Nullの使い方が不正です。
-
特定行の背景色を変えたいのですが
-
◾️Excel VBA 統合について Con...
-
アルファベットに付いて質問し...
-
Excel VBAでOpenTextのFieldInf...
おすすめ情報