• 締切済み

エクセルのVBユーザーフォームがうまく組めません

会社でエクセルを使ってデータをまとめているのですがVBのユーザーフォームで作ろうとしています。今困っていることはoptionbuttonを4個使い選択式にし選択したら「OK」buttonを押すことで各optionbuttonに対応したsheetへ飛ぶようにしたいのですがうまくいきません。 現状ですが Private Sub CommandButton1_Click() dim str as string str=optionbutton1.caption select case str case "****" sheets("1234").select ・    ・    ・ end select End Sub としています。 間違いがありましたら指摘してください。 ちなみに3日前に始めてVBを教えてもらいました。

みんなの回答

  • shinkami
  • ベストアンサー率43% (179/411)
回答No.2

返事遅くなりました。 どのようにコメントしてよいかわかりませんので自分なら次のようにします。 先ずワークシート名を表意的に変更します。 コマンドボタンを作成したらそのボタンのプロパテェーの「オブジェクト名」にそのボタンの役割を表現するような名前をつけておくとよいでしょう、また「Caption」同じ言葉を入れておくきます 質問からして 主シートとは別に複数ありそうですね ・ワークシート名を「主」、「1月」、「2月」、… ・ボタンのオブジェクト名を BTN1月へ移動、BTN2月へ移動、BTN3月へ移動、… ・ボタンのcaptionを1月へ移動、2月へ移動、3月へ移動、… としてから ボタンをダブルクリックしてからコーディングにかかります。 Private Sub BTN1月へ_Click() Sheets("1月").Select End Sub 他の命令は文は不要です select文を使う時はコマンドボタンではなくコンボボックスを使います ワークシートの適当な列のセルに飛び先シート名を入力しておきます。コンボボックスのオブジェクト名 CMBシート選択 コンボボックスのlistFillRangeに飛び先名のセル群を「h3:h15」と入れておきます コンボボックスをダブルクリックしてコーディングに入ります Private Sub CMBシート選択_Change() Select Case CMBシート選択 Case "****" Sheets("1234").Select ・    ・    ・ End Select End Sub 以上

すると、全ての回答が全文表示されます。
  • shinkami
  • ベストアンサー率43% (179/411)
回答No.1

カテゴリーは 「デジタルライフ > ソフトウェア > Office系ソフト」がよろしいかと 何をしたいのですか 突然「optionbutton1.caption」が出てきましたが 「optionbutton1」の「caption」には何が入っていますか

kazu2359
質問者

補足

カテゴリーはすみませんでした。 文章が下手で伝えたいことが伝えていられていないようですね・・・。 strの中にcationでoptionbuttonの名前を入れて***と同じ時にsheetに飛ぶようにしようと思ったのですが・・・。

すると、全ての回答が全文表示されます。

関連するQ&A