効率化からプライベートの時間を創る







VBAのユーザーフォームでコンボボックスの複数列の表示方法

WRITER
 
VBA_コンボボック複数列スアイキャッチ
この記事を書いている人 - WRITER -
Excel歴15年。基本操作から関数、マクロ、VBAまで仕事で便利だったことを中心に書いています。お仕事の時間短縮にお役に立てれば幸いです。
詳しいプロフィールはこちら

前回の記事ではVBAのユーザーフォームでコンボボックスを表示する方法を紹介しましたが、今回はコンボボックスで複数の列を同時に表示する方法を紹介します。

画像と一緒に解説しますので、この記事を読みながら一緒に作業してみましょう。

コンボボックスで複数列の表示方法

まずはコンボボックスを呼び出し、好きな大きさに配置しましょう。

VBAのコンボボックス複数列1

もしコンボボックスの配置手順が分からない場合は以下の記事を参考にしましょう。

複数列表示するためのコード

ユーザーフォーム上をダブルクリックし、以下のコードを入力します。

 

最初のinitializeは、ユーザーフォームを開いたときの最初に起こる内容という意味です。

Dim i As Longは変数ですが、もし分からない方は使い方についてVBAの変数とは?使い方と代表的な型の解説を見てみましょう。

ここではComboBoxのみ解説します。

ColumnCount 選択時の表示列数
TextColumn 選択後の表示列
ColumnWidths 列幅

画像で説明すると以下のようになります。

VBAのコンボボックス複数列2

 

For i = 2 To 5
.AddItem “”
Next i

上記のコードに関しては2行目から5行目に入力されている文字を参照してリストを追加するという意味です。

For ~ Nextは別記事で紹介していきたいと思いますので、今はあまり気にせずにコピペで使用しましょう。

 

最終行を自動で取得する場合

先ほどは参照する行を指定していましたが、実際の業務になるとデータが日々増減することも多いため、入力している最終の行まで参照したいことも多いでしょう。

その場合は以下のコードとなります。

 

 

memo

最終行を取得する方法は複数あります。詳しくはVBAで表の最終行を選択する方法で解説しています。

 

まとめ

今回はVBAのコンボボックスで複数の列を表示する方法について紹介しました。

私も実際に業務でユーザーフォームを作ったとき、1列だけでなく複数の列を使うことが多くありました。

コードは完全に覚えなくてもコピペで応用すると便利なため、当サイトのコードをコピペしながら是非活用していきましょう。

 

Excelの機能を使いこなすと、仕事の効率化から大きな時間短縮に繋がります。

仕事術のスキルが増えるとプライベートの時間を時間を増やすことができますので、当サイトで得た知識を是非活用していきましょう。
以下のExcel記事もおすすめです。

 

この記事を書いている人 - WRITER -
Excel歴15年。基本操作から関数、マクロ、VBAまで仕事で便利だったことを中心に書いています。お仕事の時間短縮にお役に立てれば幸いです。
詳しいプロフィールはこちら









- Comments -

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

Copyright© Excel仕事術ブログ , 2022 All Rights Reserved.