- ベストアンサー
Excel VBA でリストボックスへ行追加について
お世話になります。 ExcelVBAで、ユーザフォーム表示のときに、リストボックスにデータを追加します。 その際、追加したいアイテムが項目数3の配列なのです。 配列もユーザ定義した配列(2次元配列)を使っています。 配列を作って、.List=Array でセットしようと思ったのですが、コンパイルエラーが出ます。 どうしたらよいでしょうか。 説明がわかりにくいかもしれませんが、よろしくお願い致します。
- みんなの回答 (2)
- 専門家の回答
関連するQ&A
- ユーザーフォームのリストボックスの設定を標準モジュール内で取得した配列
ユーザーフォームのリストボックスの設定を標準モジュール内で取得した配列にしたい。 題名のままの説明ですが、ユーザーフォームのリストボックス値を配列にして動的に動作させるようにしたいのですが、標準モジュールでPublicで配列を宣言しているのですが、うまくユーザーフォームモジュールに渡っていないというか、その配列変数をユーザーフォームモジュール内に書くと配列が存在しません。 というエラーが出てしまいます。 かといってユーザーフォームでPublicで配列を宣言することもできないのでどうやってリストボックスに 配列を設定すればいいのかわかりません。 配列は2次元配列で視覚的に説明するとは列数が3行、行数は標準モジュール内でRedimにより可変します。この配列をそのままレコードセットみたいにリストボックスに設定したのですが、 なにか良い方法はありますでしょうか?
- ベストアンサー
- Visual Basic
- リストボックスの列見出し(ExcelのVBA)
ExcelのVBAでのリストボックスコントロールについての質問です。 リストボックスの列見出しを作りたいのですが、なかなか上手く行きません。リストボックスに項目を設定するのはExcelのシートから… ----- WorkSheets("Sheet1").ListBox1.ListFillRange = "A1:B2" ↑(Sheet1のA1:B2のデータをListBox1に追加する場合)↑ ----- のようにするのではなく… ----- Dim MyList(1,1) ~~~(MyList配列にデータを代入) Userform1.ListBox1.Column = Mylist() ----- というように、コードから項目を追加しています。 そこで、列見出しを追加したいと思ったのですが… ----- ListBox1.ColumnHeads = True ----- と記述しても、列見出しは真っ白で、その下に項目が表示されるだけです。 列見出し専用の配列を用意しなければならないというような事はあるのでしょうか? もしあれば、どのように定義すればよいのでしょうか。 ちなみに、用いているExcelの環境は『Microsoft Excel 2004 for Mac (11.5.6)』、VBAの環境は『Microsoft Visual Basic (11.5)』です。 我流で覚えてきたような知識ですので、とても常識的な事を聞いているかもしれないですが、回答宜しくお願いします。
- ベストアンサー
- Visual Basic
- エクセルVBAでフォームのListboxのリストの数を取得するには?
ワークシート上に貼り付けたリストボックスがあります。 このリストボックスはOLEObjectではなくフォームのリストボックスです。 このリストボックスにリストが何項目セットされているのか取得したいのです。 Set myLb = ActiveSheet.ListBoxes(Application.Caller) MsgBox myLb.Name MsgBox myLb.ListIndex.Count とやってみたところ、名前は取得できましたが、項目数はエラーになってしまいました。 あと、可能ならListの2番目にセットされている項目の文言を取得する方法もあれば知りたいと思います。 宜しくお願いします。
- ベストアンサー
- その他MS Office製品
- Excelリストボックスについて
ExcelVBAのリストボックスで質問!! (1)列に項目名称をつけたいのですが、どうすればよいでしょうか? ちなみにリストの値は別ファイルかVBAにくみこみたいと思っています。 (2)ホイール(マウス)によるスクロールは行えないのでしょうか?方法があれば教えてください。
- 締切済み
- Visual Basic
- エクセル VBAのリストボックス
エクセルのVBAでユーザーフォーム上のリストボックスに文字を入力すると候補がドロップダウンリストに表示され、候補から一つを選択するとドロップダウンリストをとじるといったコードを教えてください。ただし、最終的にリストボックスの値はリストから選ぶのみで、文字を入力するのは候補を表示するためだけに使いたいのです。どなたか、ご教授願います。
- ベストアンサー
- オフィス系ソフト
- エクセルVBAのリストボックス
エクセルVBAのリストボックスを使った検索システムを作っています。 リストボックスはユーザーフォームではなくsheetに貼り付けてます。 リスト地域 北海道 青 森 岩 手 山 形 新 潟 ・ ・ ・ リストボックスから地域(複数選択)を選んで検索ボタン(コマンドボタン)を押すと同じsheetの特定の場所(例えばrange("A25")に選択した地域を表示させたいのですがうまくいきません。 例) 北海道、東京、愛知 のように表示させたいです。 単数選択ではうまく表示できるのですが、複数だとうまくいきません。 (複数選択できるようにプロパティのMultiSelectの項目はfmMultiselectMultiに変更しています。) よろしくお願いします。
- ベストアンサー
- Visual Basic
- 複数行表示されたリストボックスから最後の行だけ削除するには
エクセルのユーザーフォーム上にあるリストボックスですが 必要に応じてボタンクリックでAddItemにより項目が追加されて行くリストボックスがあります この複数行表示された項目の内 別のボタンクリックで最後に追加された行だけ削除していくには どのように記述すればいいのでしょうか ------------- abcde fghij klmno pqrst ------------ と表示されていたリストボックスから クリックするたびに ------------- abcde fghij klmno ------------- ------------- abcde fghij ------------- の様に最後の行だけ削除をしたいのです 単純に ListBoX1.Clear では全て消されてしまい こまっています ぜひお力をお貸し下さい よろしくお願いします
- ベストアンサー
- オフィス系ソフト
- リストボックスからユーザーフォームへのリンク方法
ユーザーフォーム0に貼り付けてあるリストボックスに表示された項目からその項目ごとに見合った別のユーザーフォームにとびたいのですが、うまくいきません。 例えば リストボックスに 『算数 国語』 とあったとしたら算数をクリックすると算数の問題が表示されたユーザーフォームにとび、国語をクリックしたら国語の問題が表示されたユーザーフォームにとぶようにしたいです。 リストボックスの項目からユーザーフォームにとべる方法を教えてください。
- 締切済み
- オフィス系ソフト
- エクセル2013のリストボックス
エクセル2010でワークシート上に配置したリストボックスがあります。 ActiveXではなくフォームコントロールのリストボックスです。 これに11項目のリストを設定してあります。 2010ではまったく問題がないのですが、エクセル2013で開くと下の2項目が選択できません。 2010と2013では互換性がないのでしょうか?
- 締切済み
- Excel(エクセル)
- リストボックスに追加
リストボックスに項目を使う時にAddItemをつかいますよね。でも、AddItemをつかうと下に下にと追加されていってしまいます。これを上に上に追加していきたいのですがどうすればいいのでしょうか?
- ベストアンサー
- Visual Basic
- SQLの数値への単位付け方と修正方法を教えてください
- SQLでのcmやkgの単位付け方とUPDATE DELETEの実行方法について教えてください
- SQLの数値への単位付け方とUPDATE DELETEの実行方法について教えてください
お礼
回答ありがとうございます。 ちゃんとやりたいようにできました。 本当に助かりました。 ありがとうございました。