メインコンテンツへスキップ
 

Excelでのみコンボボックスに一意の値を入力するにはどうすればよいですか?

著者:シャオヤン 最終更新日:2020年07月24日

いくつかの重複値を含むデータのリストを使用してコンボボックスを作成する場合、重複値はコンボボックスで自動的に除外されません。 この場合、コンボボックスに一意のアイテムのみを表示するにはどうすればよいですか? このチュートリアルがあなたに有利になるかもしれません。

VBAコードのみを使用して、コンボボックスに一意の値を入力します


矢印青い右バブル VBAコードのみを使用して、コンボボックスに一意の値を入力します

次のVBAコードは、コンボボックスを作成するときに一意の値を追加するのに役立つ場合があります。次のようにしてください。

1。 最初にコンボボックスを挿入し、クリックしてください Developer > インセット > コンボボックス(ActiveXコントロール)、次にマウスをドラッグしてコンボボックスを描画します。スクリーンショットを参照してください。

docコンボボックスの一意の値1

2。 次に、コンボボックスを右クリックして、 コードを表示 コンテキストメニューから、スクリーンショットを参照してください。

docコンボボックスの一意の値2

3。 そしてその アプリケーション向け Microsoft Visual Basic ウィンドウがポップアップします。次のコードをコピーして貼り付け、元のコードを置き換えてください。

VBAコード:一意の値を持つコンボボックス:

Public Sub Populate_combobox_with_Unique_values()
'Updateby Extendoffice
    Dim vStr, eStr
    Dim dObj As Object
    Dim xRg As Range
    On Error Resume Next
    Set dObj = CreateObject("Scripting.Dictionary")
    Set xRg = Application.InputBox("Range select:", "Kutools for Excel", _
                                    ActiveWindow.RangeSelection.AddressLocal, , , , , 8)
    vStr = xRg.Value
    Application.ScreenUpdating = False
    With dObj
        .comparemode = 1
        For Each eStr In vStr
            If Not .exists(eStr) And eStr <> "" Then .Add eStr, Nothing
        Next
        If .Count Then
            ActiveSheet.ComboBox1.List = WorksheetFunction.Transpose(.keys)
        End If
    End With
    Application.ScreenUpdating = True
End Sub

Note:上記のコードでは、 ComboBox1 作成したコンボボックスの名前です。必要に応じて変更できます。

4。 次に、 F5 キーを押してこのコードを実行し、プロンプトボックスで、コンボボックスに追加するデータソースリストを選択してください。スクリーンショットを参照してください。

docコンボボックスの一意の値3

5。 そして、 OK ボタンをクリックすると、一意の値のみがコンボボックスに表示されます。スクリーンショットを参照してください。

docコンボボックスの一意の値4

先端:ない場合 Developer リボンのタブ、この記事 Excel 2007/2010/2013リボンで開発者タブを表示/表示するにはどうすればよいですか? [開発者]タブを表示するのに役立つ場合があります。

最高のオフィス生産性向上ツール

🤖 Kutools AI アシスタント: 以下に基づいてデータ分析に革命をもたらします。 インテリジェントな実行   |  コードを生成  |  カスタム数式の作成  |  データを分析してグラフを生成する  |  Kutools関数を呼び出す...
人気の機能: 重複を検索、強調表示、または識別する   |  空白行を削除する   |  データを失わずに列またはセルを結合する   |   数式なしのラウンド ...
スーパールックアップ: 複数の基準の VLookup    複数の値の VLookup  |   複数のシートにわたる VLookup   |   ファジールックアップ ....
詳細ドロップダウン リスト: ドロップダウンリストを素早く作成する   |  依存関係のドロップダウン リスト   |  複数選択のドロップダウンリスト ....
列マネージャー: 特定の数の列を追加する  |  列の移動  |  Toggle 非表示列の表示ステータス  |  範囲と列の比較 ...
注目の機能: グリッドフォーカス   |  デザインビュー   |   ビッグフォーミュラバー    ワークブックとシートマネージャー   |  リソースライブラリ (自動テキスト)   |  日付ピッカー   |  ワークシートを組み合わせる   |  セルの暗号化/復号化    リストごとにメールを送信する   |  スーパーフィルター   |   特殊フィルター (太字/斜体/取り消し線をフィルター...) ...
上位 15 のツールセット12 テキスト ツール (テキストを追加, 文字を削除する、...)   |   50+ チャート 種類 (ガントチャート、...)   |   40+ 実用的 (誕生日に基づいて年齢を計算する、...)   |   19 挿入 ツール (QRコードを挿入, パスから画像を挿入、...)   |   12 変換 ツール (数字から言葉へ, 通貨の換算、...)   |   7 マージ&スプリット ツール (高度な結合行, 分割セル、...)   |   ... もっと

Kutools for Excel で Excel スキルを強化し、これまでにない効率を体験してください。 Kutools for Excelは、生産性を向上させ、時間を節約するための300以上の高度な機能を提供します。  最も必要な機能を入手するにはここをクリックしてください...


Officeタブは、タブ付きのインターフェイスをOfficeにもたらし、作​​業をはるかに簡単にします

  • Word、Excel、PowerPointでタブ付きの編集と読み取りを有効にする、パブリッシャー、アクセス、Visioおよびプロジェクト。
  • 新しいウィンドウではなく、同じウィンドウの新しいタブで複数のドキュメントを開いて作成します。
  • 生産性を 50% 向上させ、毎日何百回もマウス クリックを減らすことができます!