現象
有効なエントリの一覧としてセルのデータの入力規則を設定する Microsoft Excel マクロまたはその他のプログラミングコードを実行すると、セルのデータの入力規則リストのすべての項目が1行に表示されます。
原因
この動作は、次の条件が満たされている場合に発生します。
-
[ リスト区切り ] 設定 (コントロールパネルの [ 地域のオプション ] の下) は、 カンマ (,)以外の値です。 たとえば、ロケール設定がドイツの場合、リストの区切り文字はセミコロンになります。
-
データの入力規則のマクロでは、そのリストの区切り記号を使って、有効なセルのエントリを指定します。
-
マクロコードは、有効なエントリが表示されているセル範囲をポイントするのではなく、明示的にリストを指定します。
回避策
マクロを作成して有効なエントリの特定のリストを指定する場合は、常にコンマ (,) をリストの区切り文字として使用します。
詳細情報
Excel では、Microsoft Visual Basic for Applications では常にコンマがリスト区切り記号として使用されます。 これにより、コードを編集することなく、ロケール設定が異なるコンピューターでマクロを実行できます。 データの入力規則のために VBA (XLValidateList Formula1) を使用してコンマ区切り配列を渡すと、255文字の制限が適用されます。リストの区切り記号を使用して設定を変更するマクロを実行すると、カンマがローカルの地域リストの区切り記号に変換されます。 たとえば、マクロでデータの入力規則のリストが作成された場合、またはセル内に数式を入力する場合は、数式 (数値1,数値2) が使用されます。
参照情報
Excel でのデータの入力規則の informationabout については、次の記事の番号をクリックして、Microsoft サポート技術情報の記事を参照してください。
211485 Excel でのデータの入力規則の説明と例