当サイトの記事にはプロモーションが含まれています。

Word VBAでListBoxを使いこなす!初心者でもできる簡単ガイド

パソコンパソコン・スマホ教室
スポンサーリンク

Word VBAのListBoxを使って、文書作成をもっと便利にしたいと思っていませんか?でも、VBAって難しそう…と感じているあなたに、安心して始められるように、わかりやすく解説します。

スポンサーリンク

ListBoxって何?

Wordのイメージ

Wordのイメージ

まずは、ListBox(リストボックス)とは何かを簡単に説明します。

ここがポイント!

  • ListBoxは、ユーザーがあらかじめ用意された選択肢から1つまたは複数を選べるコントロールです。
  • Word VBAでは、フォーム(UserForm)に配置して、ユーザーに選択肢を提供する際に使います。
  • 例えば、都道府県のリストから選んでもらうような場面で活躍します。

ListBoxの基本的な使い方

初心者でもできる、ListBoxの基本的な使い方を紹介します。

  1. UserFormを作成します。Wordの開発タブから「Visual Basic」を開き、「挿入」→「UserForm」を選択します。
  2. ListBoxを配置します。ツールボックスからListBoxを選び、UserFormにドラッグ&ドロップします。
  3. コードを追加します。UserFormのコードウィンドウに、以下のようなコードを追加します
Private Sub UserForm_Initialize()
ListBox1.AddItem "北海道"
ListBox1.AddItem "青森県"
ListBox1.AddItem "岩手県"
' 他の都道府県も追加可能です
End Sub
  • このコードは、UserFormが開かれたときに、ListBoxに都道府県を追加するものです。
  • 「AddItem」メソッドを使って、1つずつ項目を追加しています。

複数列のデータを表示する方法

ListBoxは、複数の列を表示することもできます。

  1. ColumnCountプロパティを使って、表示する列数を設定します。
  2. ColumnWidthsプロパティで、各列の幅を指定します。
  3. 以下のようなコードを追加します
Private Sub UserForm_Initialize()
ListBox1.ColumnCount = 2
ListBox1.ColumnWidths = "100;100"
ListBox1.AddItem "北海道"
ListBox1.List(0, 1) = "Hokkaido"
ListBox1.AddItem "青森県"
ListBox1.List(1, 1) = "Aomori"
' 他の都道府県も追加可能です
End Sub
  • このコードでは、2列のListBoxを作成し、1列目に都道府県名、2列目に英語名を表示しています。
  • 「List」プロパティを使って、各行の列に値を設定しています。

選択された項目を取得する方法

ユーザーがListBoxで選択した項目を取得する方法を紹介します。

  1. ListIndexプロパティで、選択された項目のインデックスを取得します。
  2. Listプロパティで、選択された項目の値を取得します。
  3. 以下のようなコードを追加します
Private Sub CommandButton1_Click()
Dim selectedItem As String
selectedItem = ListBox1.List(ListBox1.ListIndex)
MsgBox "選択された項目は: " & selectedItem
End Sub
  • このコードでは、CommandButtonがクリックされたときに、ListBoxで選択された項目をメッセージボックスで表示します。
  • 「ListIndex」プロパティで選択された項目のインデックスを取得し、「List」プロパティでその項目の値を取得しています。

よくある質問や疑問

Q1: ListBoxにデータを一括で追加する方法はありますか?

はい、あります。配列を使って一括でデータを追加することができます。以下のようなコードを使います

Private Sub UserForm_Initialize()
Dim arrData As Variant
arrData = Array("北海道", "青森県", "岩手県")
ListBox1.List = arrData
End Sub

このコードでは、配列「arrData」をListBoxに一括で設定しています。

Q2: ListBoxの選択肢を動的に変更する方法はありますか?

はい、あります。ListBoxの「Clear」メソッドで既存の項目を削除し、「AddItem」メソッドで新しい項目を追加することができます。以下のようなコードを使います

Private Sub CommandButton1_Click()
ListBox1.Clear
ListBox1.AddItem "新しい項目1"
ListBox1.AddItem "新しい項目2"
End Sub

このコードでは、CommandButtonがクリックされたときに、ListBoxの項目を新しいものに変更しています。

まとめ

Word VBAのListBoxを使うことで、文書作成の効率が大幅に向上します。初心者でも、基本的な使い方を覚えることで、さまざまな場面で活用できるようになります。

他にも疑問やお悩み事があれば、お気軽にLINEからお声掛けください。

この記事を書いた人
この記事を書いた人

企業の情報システム部門で10年以上、PC・アカウント・社内ネットワーク・Microsoft 365/Google Workspace運用を担当。年間数百件の問い合わせ対応(PC不調、メール送受信、Excel/Word資料、Teams会議、スマホ連携など)を通じて、初心者がつまずくポイントを「再現→原因切り分け→最短解決」の手順に落とし込んできました

現場や身近で実際に起きたトラブルをベースに、手順だけでなく「なぜそうなるか」「失敗しやすい落とし穴」「安全な設定(セキュリティ)」まで含めて解説します。

相談窓口(問い合わせ/LINE等)を設け、記事で解決しないケースも個別にサポートしていますので「パソコンが急に動かなくなった」「スマホの設定がわからない」などの悩みは一人で抱え込まず、お気軽にご相談ください。

【お問い合わせは下記URLから】
https://m32006400n.xsrv.jp/inquiry-form/

【公式LINEは下記URLから】
https://lin.ee/t8TDjcj

uri uriをフォローする
スポンサーリンク
よかったらシェアしてね! /
uri uriをフォローする

コメント

タイトルとURLをコピーしました