• 締切済み

VBAについての質問です

VBAを勉強し始めたものですが、質問です. リスト1 リスト2 AB ボタン1 AB AC ボタン2 AC AD ボタン3 AD AE ボタン4 AE     ↓       上記の様にユーザーフォームの中でリストボックス1とリストボックス2 を作ります。そしてボタンを4つ作りボタン1を押した場合にリスト1の値をそのままリスト2に持っていき,なおかつリスト1に値を残さずに移動させたいのですが、どのようなコードになりますでしょうか?? どうぞよろしくお願いします。

みんなの回答

回答No.1

お世話になります。 VBA と言われてもいろいろありますので。。。 以下は Access2000 の フォーム でのコード例です。 フォームには、 リスト1(リストボックス) リスト2(リストボックス) btn(コマンドボタン) を配置しています。 Option Compare Database Option Explicit Private Sub Form_Load()   Me.リスト1.RowSourceType = "Value List"   Me.リスト1.RowSource = "AB;AC;AD;AE"   Me.リスト2.RowSourceType = "Value List"   Me.リスト2.RowSource = "AB;AC;AD;AE" End Sub Private Sub btn_Click()   Me.リスト2.RowSource = Me.リスト2.RowSource & ";" & CStr(Me.リスト1) End Sub リストボックスはユーザーが選択した行を取得することが可能ですから、ボタンを行分用意する必要はあまり感じられませんがいかがでしょうか。

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

関連するQ&A

  • VBAの事で・・。

    お世話になります。 VBAの初心者なのですが、どう記述したら良いのか分からなく、 自分であれこれ考えながら記述すると、エラーばかり出でしまいます。 どなたかお教え頂きたいのですが、内容は下記になります。 下記の様なデータがあり、種類事の合計値を右下にある種類名の下 に合計結果を貼付たく、実際は何千行とあり、種類の行数も一定では ない為、オートフィルタを使い、また合計はSUBTOTALで、 出し、それをコピーして右下の同種類の下へ貼付していたのですが、 何十回もする作業なので、VBAで出来ないかと思考錯誤しており ましたが私には高度すぎて出来ませんでした。 宜しくお願い申し上げます。 種類   数量 AA   225 AA    53 AA   677 AB    43 AB   680 AC    97 AC    65 AC    23 AC    55 AC  6778 AD    34 AD   656 AD   342 AE    98 AE 45627 AE  8078 AE    28           AA   AB   AC   AD   AE      

  • VBAのユーザーフォームの使い方

    皆様、こんにちは。 VBAのユーザーフォームを習い始めた初心者です。本の説明を読んでもユーザーフォームの使い方がよく分かりません。例えば、あるセールをクリックしたら、フォームが表示される、そしてフォームの中にあるコンボボックスのリストの中から選ばれた値が最初に選択したセールに入力されるという使い方がありえますか?申し可能でしたら、コード作成の例をいただけないでしょうか? どうぞよろしくお願いいたします。

  • エクセル2007VBAで検索するコードを知りたい。

    エクセル2007(Excel2007)のVBAで【検索と置換】と同等の機能をもった検索アプリケーションを作りたいのですが、 そのコード(コマンドボタンを実行したときのコード)を教えていただけないでしょうか。 (おそらくですが、リストボックスのコードも必要だと思います。) 正しくは、【検索と置換】から【置換】機能を無くしたものとイメージしていただきたいです。 ●設置するもの ユーザーフォーム(UserForm1) テキストボックス(TextBox1) コマンドボタン(CommandButton1) リストボックス(ListBox1) ●仕様 ユーザーフォームのテキストボックスに入力してコマンドボタンを押すと、検索対象を見つけ、 リストボックスにその対象一覧を行ごとに表示するものになります。 ●検索するときの条件 (1)大文字と小文字を区別しない (2)半角と全角を区別しない (3)部分一致すれば(一部でも一致すれば)検索対象にする (4)今、開いているワークシート上の「全てのセルが検索対象(列や行を指定しない)」 ※検索されたセルの存在する行ごとに、ユーザーフォームのリストボックスに(1行ずつ)表示したいです。 そして、リストボックスに表示されたデータのうち、どれか1つを選ぶと、その選択対象の行の【D列】にアクティブセルを移動するようにしたいです(画面もアクティブセルが見える位置にスクロールします)。 ●リストボックスに(1行ごとに)表示するもの● ↓↓↓ (左から)I列の値、D列の値、O列の値、Q列の値(→4列の値になります) ※リストボックスにQ列の値が表示された場合のみ(Q列に何かしらのデータがある場合のみ)、 リストボックス上の【その行の(I列の値、D列の値、O列の値、Q列の値の)文字すべてを赤色】にして表示していただきたいです。 分かる方がいましたらよろしくお願いいたします。

  • エクセル VBAのリストボックス

    エクセルのVBAでユーザーフォーム上のリストボックスに文字を入力すると候補がドロップダウンリストに表示され、候補から一つを選択するとドロップダウンリストをとじるといったコードを教えてください。ただし、最終的にリストボックスの値はリストから選ぶのみで、文字を入力するのは候補を表示するためだけに使いたいのです。どなたか、ご教授願います。

  • エクセルVBAの質問です。

    こんばんわ! エクセルVBAのユーザーフォーム上のテキストボックス等をマクロを実行した状態で、動かしたりしたいのですが、可能でしょうか? 具体的には、コマンドボタン1をクリックすると、テキストボックス等を移動したりできるようにしたいです。 参考URL、あるいは方法があればご教授お願いいたします。

  • vba ボタン押すとユーザフォーム、リストをクリア

    vba で、実行すると、ユーザフォームとリストBOXに結果を反映するものをつくりましたが、 この反映された結果を、ボタンを押すとクリアにしたいのです。 ユーザフォーム、リストボックスの内容をクリアするには、どのような記述にすればよろしいでしょうか?

  • Excel VBAについて質問です。

    VBA初心者です。 フォームを2つ作成しております。 1つはフォーム名[入力用] もう1つはフォーム名[要求元]です。 フォーム[要求元]はリストボックス[リスト]と コマンドボタン[入力]と[終了]があります。 リストボックスのデータはRowsourceでセル番地を直接指定してます。 フォーム[要求元]においてリストボックスでデータを選びコマンドボタン[登録]を押すと、 フォーム[入力用]のテキストボックスに代入する方法がわかりません。 どなたか御教授お願い致します。

  • エクセルVBAについて質問です。

    エクセルVBAについて質問です。 シート1のユーザーフォームにコンボボックスとテキストボックスが各1つずつ、 シート2のA列には1行目から順に「あ」「い」「う」と文字が入っていて、B列には「1」「2」「3」と値が入っています。 コンボボックスのリストにはシート2のA列の文字が選択できる状態にあります。 この状態で、例えばコンボボックスで「い」を選んだら、テキストボックスに自動的に「2」と入る、というように、コンボボックスのリストの中から任意の文字を選択したときに、テキストボックスにB列の値が入るようにするにはどのようにすればいいのでしょうか?よろしくお願いします。

  • VBA 変数の受け渡し

    エクセルVBAで標準モジュール内でインプットボックスに入力した変数をユーザーフォームに受け渡してユーザーフォーム内のリストボックスに表示させる場合どのように変数の受け渡しを行えばよいか教えてください。 現在は、一度ワークシートの任意のセルに値を書き出し、その後ユーザーフォームのイニシャライズで先ほどのセルから値を受け取るようにしています。 標準モジュールではインプットボックス入力後「UserForm1.Show」でユーザーフォームの立ち上げを行っています。

  • excelでVBAでユーザーフォームのリストBOX

    下記VBAの作成の仕方を教えていただけないでしょうか。 やりたいこと (1)sheet2のA1セル~A5セルまでの間の間をユーザーフォームのリストボックスに登録する (2)sheet1のA1セルをクリックすると、ユーザーフォームが起動し、任意のリストをクリックすると、 その値がA1セルに格納され。ユーザーフォームが終了する。 ※コマンドボタンは使わずにお願いします。なおexcel2000です。