- ベストアンサー
VB6でLISTBOXの複数列
こんばんは。VB6でListBoxを使うとき、AddItemでListBox内に追加できるのですが、右に更に列を増やすにはどうしたらいいのでしょうか? VBAでしたら ListBox1.ColumnCount = 2 ListBox1.BoundColumn = 2 ListBox1.AddItem Range("A1") ListBox1.List(1, 1) = Range("B1") こんな感じにできていたのですが、VB6だとよく分かりません。 初心者なのでできれば簡単に教えてもらいたいのですが。 よろしくお願いいたします。
- みんなの回答 (2)
- 専門家の回答
関連するQ&A
- VB6 2つのListBoxをソート
VB6で約3000のデータをListBoxに入れて有ります。 ListBox1=ファイル名 ListBox2=ファイルアドレス と2つに分けてListBoxに入れて有り、このインデックス値は双方常に一緒でなければなりません。 ここで困ってしまったのが、Sortedはどうすれば良いのか?です。 片方ソートでも両方ソートでも順番(インデックス値)がばらばらになってしまいます。 そこで下記方法でListBoxを更に3つ追加して(1つをSorted)1つ1つソートしたインデックス順に並び替えたらソートに時間がかかってしまいました。 何か良い方法は無いでしょうか? (ListViewは経験が無いためこの方法の場合はやり方又は参考サイトを入れて頂けると助かります) Dim i As Integer Dim j As Integer Dim k As Integer k = LI1.ListCount - 1 For i = 0 To k LI3.AddItem LI1.List(i) LI4.AddItem LI2.List(i) LI5.AddItem LI1.List(i) 'SortedのListBox Next i LI1.Clear LI2.Clear For i = 0 To k For j = 0 To k If LI3.List(j) = LI5.List(i) Then LI1.AddItem LI3.List(j) LI2.AddItem LI4.List(j) Exit For End If Next j Next i LI3.Clear LI4.Clear LI5.Clear '(LI = ListBox)
- ベストアンサー
- Visual Basic
- VBAリストボックスへの複数列の項目追加について
現在、VBAのリストボックスへの複数列の項目追加に苦戦しております。 まだまだ未熟の為、どうか皆様のお力をお貸し下さい。 手法等、間違えてる箇所があるかと存じますので、ご指摘と、また別に手法がございましたら、ご教授お願い致します。 現在、リストボックスへの複数列の項目追加の為、以下のように記述しておりますが、上手く動きません。 ※あらかじめ、UserForm1にリストボックス(ListBox1)と、コマンドボタンを作成しています。 ※Sheet1に、添付のように書いております。 Private Sub CommandButton1_Click() Dim rngTemp1 As Range Dim rngTemp2 As Range Dim rngTemp3 As Range With Sheets("Sheet1") .Activate Set rngTemp1 = .Cells(2, 2) rngTemp1.Select Set rngTemp2 = .Range(.Cells(2, 4), .Cells(2, 6)) rngTemp2.Select Set rngTemp3 = Union(rngTemp1, rngTemp2) rngTemp3.Select End With UserForm1.ListBox1.ColumnCount = rngTemp3.Count UserForm1.ListBox1.List = rngTemp3.Value 'ここでエラー End Sub ウォッチ式で見ると、rngTemp3には、rngTemp1の値しか入っておらず、その為にエラーとなっているようです。 が、rngTemp3.Selectの時点では、正常に選択出来ております。 (1)そもそもListプロパティで、離れたセルをリストボックスへ追加するのは無理なのでしょうか? ※Userform1.ListBox1.List=rngTemp2.Valueとすると正常に追加されます。 (2)このような場合を解決する手段は他にありませんでしょうか?(配列の手法などありましたら、教えて下さい。) ※ちなみに実際のデータ列は10列以上ある為、AddItemでは10列目でエラーとなり、無理でした。 環境は、Office2010になります。 説明がわかりづらく申し訳ありませんが、何卒よろしくお願い致します。
- ベストアンサー
- Visual Basic
- セルに追加されるデータをListBoxに表示させたい
VBA初心者です エクセルのシートに入力されたデータを、ListBoxに表示させるプログラムを作っているのですが セルB5以下に入力されるB列のデータを、追加されたら、自動的にリストボックスにも追加されるというプログラムを作りたいと考えています ご指南、宜しくお願い致します
- ベストアンサー
- Visual Basic
- エクセルVBA ListBoxの並び替え:VBA初心者です
Listbox.additemで、追加していったListを並び替えてListboxに表示したいのですが、可能ですか? 並び替えは、エクセルのユーザー設定リストの順番にしたいです。
- ベストアンサー
- Visual Basic
- リストボックスからリストボックスへ(複数列)
データ読み込み済みのリストボックス1(4列)から空白のリストボックス(4列)へ、コマンドボタンをクリックしたらデータが追加されるコードを作成しました。 Private Sub CommandButton1_Click() Dim i As Long For i = 0 To 8 With ListBox1 ListBox2.AddItem .List(.ListIndex, i) End With Next i データは追加されましたが、縦方向にデータが追加され、 横方向に追加されませんでした。 どうすれば複数列のデータをそのまま複数列のリストボックスに追加できるでしょうか。 よろしくお願いします。 End Sub
- 締切済み
- オフィス系ソフト
- ListBoxに値を追加していくには。
Private Sub CommandButton31_Click() ListBox12.ColumnCount = 5 ListBox12.ColumnWidths = "4.0cm;4.0cm;2.0cm;3.0cm;2.0cm" End Sub Private Sub TextBox175_Change() SetList End Sub Private Sub TextBox176_Change() SetList End Sub Private Sub TextBox177_Change() SetList End Sub Private Sub TextBox178_Change() SetList End Sub Private Sub TextBox179_Change() SetList End Sub Private Sub SetList() ListBox12.Clear ListBox12.AddItem TextBox175.Text ListBox12.List(0, 1) = TextBox176.Text ListBox12.List(0, 2) = TextBox177.Text ListBox12.List(0, 3) = TextBox178.Text ListBox12.List(0, 4) = TextBox179.Text End Sub ここで、TextBox175~179の値をコマンドボタン1を押す度、 ListBox12の最終行の直下に挿入されていくようにしたいです。 列はそのままです。 1行目 (0,1),(0,2),(0,3),(0,4) 2行目 (1,1),(1,2),(1,3),(1,4) 3行目 (2,1),(2,2),(2,3),(2,4) どのようにやればいいでしょうか。
- ベストアンサー
- Visual Basic
- Excel VBA リストボックスの複数列表示の方法について
すいません、エクセルVBAのユーザーフォームのリストボックスの表示方法について質問があります。 シートのセルに A列 D列 G列 1行 りんご 赤 120円 2行 みかん 黄 130円 3行 すいか 緑 110円 4行 りんご 赤 160円 . ・・・ ・ ・・・ . と、50行まで値を入れます。 VBAでユーザーフォームを挿入し、 Private Sub UserForm_Initialize() With ComboBox1 .AddItem "りんご" .AddItem "みかん" .AddItem "すいか" End With End Sub でコンボボックスの値を設定し、次に Private Sub ComboBox1_Change() Dim i As Integer For i = 1 To 50 If Cells(i, 1).Value = ComboBox1.Value Then With ListBox1 .ColumnCount = 3 .AddItem Cells(i, 1) End With End If Next i End Sub このときコンボボックスと同じ値の行について、 リストボックスにA列、D列、G列を表示させるにはどうしたらいいのでしょうか。 例えばコンボボックスで「りんご」を選択したときに、 リストボックスを りんご 赤 120円 りんご 赤 160円 と表示させたいのですが、 .AddItem Cells(i, 1) では一列だけしか表示できません。 Rowsorceを使ってみたりしましたが、どうにもうまく出来ませんでした。 よろしくお願いいたします。
- ベストアンサー
- オフィス系ソフト
- リストボックスの列見出し(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のリストボックス連動がうまく表示されません。
例えば、エクセル表に下記のようなデータが入っているとします。 A列は項目であり、B列は項目内容数(D列以降の項目数)、D列にはA列項目の内容が入っています。しかし、この列は変動する為、変数で指定しています。 これをリストボックス1で、まずA列の内容を表示させて、その中で選んだ項目をリストボックス2でD列以降の行内容を表示させ、リストボックス2の値を取得したいのですが、リストボックス2がうまくい表示できません。 リストボックス1では .RowSourceを使ってセル指定して表示させています。 このようなケースがuserformに多数あり、for~の処理はできるだけ避けています。 例えばUserForm_Initialize()で次の通りです。 With ListBox1 .ColumnCount = 1 .BoundColumn = 1 .RowSource = Worksheets(wksheet).Range(Cells(2, item_No), Cells(item_max_cnt, item_No)).Address(External:=True) VBA初心者で恥ずかしい質問ですが、どなたかご教示宜しくお願い致します。m(_ _)m A列_B列__D列_E列_F列_G列_H列 … a_3__あ_い_う b_1__か c_5__さ_し_す_せ_そ
- 締切済み
- Visual Basic
- ListBoxへの表示 及び Labelの文字色変更について
こんばんわ。いつもお世話になっています。 下記質問事項についてよろしくお願い致します。 1.ListBoxへの表示 ListBoxへ、セルA列に入力している文字を表示させたい。 しかし、A列には追加があるので、決まったRangeではない。 2.Labelの文字色変更 Range("a1")の文字色書式が赤なら、UserFormに貼り付けているLabelの文字色も 赤にしたい。また、CommandButtonの表示色も同じく変えたい。 よろしくお願いいたします。
- ベストアンサー
- オフィス系ソフト
- PIXUSMG6930を使用してCDの表面に文字を書き込む方法について教えてください。
- CDに文字を書き込むためにはどのような手順で作業をすれば良いのでしょうか?詳しく教えてください。
- キヤノン製品のPIXUSMG6930を使用してCDに文字を書き込む方法を教えてください。
お礼
ありがとうございます。とりあえずスペースを入れて表示するようにしました。選択はSplit関数で何とかなりそうです。