Excel VBAでユーザー設定リストに追加する方法|AddCustomList

ユーザー設定リストとは、データの順番をユーザー独自に登録したもので、データを自動入力するオートフィルでよく使います。

マニュアルでも登録できますが、ここではVBAで追加する方法を紹介します。

追加にはAddCustomListメソッドを使用します。

VBAは文字列を直接指定し登録する方法と、シートに入力されているデータを登録する2種類を掲載します。

構文

  • AddCustomList ListArray , ByRow ListArray : 追加する文字列を配列かセル範囲で指定します。
  • ByRow : (省略可能)ListArrayにセル範囲を指定した場合に指定します。
    行単位の場合はTrue、列単位の場合はFalseを指定します。
    省略した場合、下のように行数と列数を比較し指定されます。
    行数と列数 ユーザー設定リストの作成単位
    同数 列単位
    行数>列数 列単位
    行数<列数 行単位



Homeに戻る > Excel プログラムのTipsへ

文字列を直接指定しユーザー設定リストに登録するVBA

下記のAddCustomListを使ったコードを入力します。

AddCustomListを使ったコード

Array関数で、"札幌市", "函館市", "小樽市", "旭川市"を配列に格納しています。

Sub adduserlist()
    Application.AddCustomList listarray:= _
        Array("札幌市", "函館市", "小樽市", "旭川市")
End Sub

実行すると、ユーザー設定リストに追加されました。

ユーザー設定リストのダイアログボックスの開き方は、「ユーザー設定リストの登録方法 - 初心者向けexcelの使い方」を参照してください。

ユーザー設定リストに追加された

オートフィルを実行し確認します。

オートフィルを実行する

設定したリストがオートフィルで自動入力できました。

オートフィルで自動入力できた

シートに入力されているデータをユーザー設定リストに登録する

下記のシートの、B2:B10セル「福島市~相馬市」のデータを追加します。

追加するデータシート

下記のAddCustomListを使ったコードを入力します。
シートに入力されているデータをユーザー設定リストに登録

ListArrayにデータが入力されているセル範囲を指定しています。

ByRowをFalseにし列方向に設定しています。

Sub adduserlist()
    Application.AddCustomList listarray:= _
        Range("B2:B10"), byrow:=False
End Sub

上のコードを実行し、ユーザー設定リストのダイアログボックスを開くと、シートに入力したデータが追加されています。

ユーザー設定リストのダイアログボックス

Homeに戻る > Excel プログラムのTipsへ

■■■
このサイトの内容を利用して発生した、いかなる問題にも一切責任は負いませんのでご了承下さい
■■■
当ホームページに掲載されているあらゆる内容の無許可転載・転用を禁止します


Copyright (c) Excel-Excel ! All rights reserved