
エクセルで、セルに入力する品名(候補)が300個ある中で、
最初の1文字を入力した時点で、
300個の品名から入力した文字に対応した候補を表示させて
入力する方法を、教えてもらえませんでしょうか?
例えば、
セルに入力する品名(候補)が、
オブラート(丸)
オブラート(袋)
絆創膏(L)
絆創膏(M)
絆創膏(S)
・
・
・
と、ある状態で、
「オブラート(袋)」をする時に、
セルに「オ」を入力した時点で、
オブラート(丸)
オブラート(袋)
が表示され、
「オブラート(袋)」
を選択して、セルに入力出来るようしたいです。
オートコンプリートの機能だと、前に入力した物しか表示しませんし
ドロップダウン リストを作成しても、300以上もある候補から選択するのは、
大変な為困っています。
(もちろん、300個以上ある入力候補の中から、
効率よく目的の物を入力する良い方法でも構いません。)
教えていただけると助かります。
以上、よろしくお願いします。
No.2ベストアンサー
- 回答日時:
こんにちは!
一案です。
具体的な配置が判らないので、やり方だけ・・・
↓の画像のように元データ(品名)はD列にあるとします(1行目は項目行)
A列変更があるたびに、A列文字列が含まれるデータをF列に表示させ
入力規則の「リスト」でF列をリスト表示させる方法になります。
まず画面左下の操作したいSheet見出し上で右クリック → コードの表示 → VBE画面のカーソルが点滅しているところに
↓のコードをコピー&ペーストしておき、VBE画面を閉じます)
Dim i As Long, cnt As Long, myStr As String 'この行から//
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("A:A")) Is Nothing Or Target.Count > 1 Then Exit Sub
With Target
Range("F:F").ClearContents
cnt = 0
myStr = .Value
For i = 2 To Cells(Rows.Count, "D").End(xlUp).Row
If InStr(Cells(i, "D"), myStr) > 0 Then
cnt = cnt + 1
Cells(cnt, "F") = Cells(i, "D")
End If
Next i
End With
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Intersect(Target, Range("A:A")) Is Nothing Or Target.Count > 1 Then Exit Sub
Range("F:F").ClearContents
cnt = 0
For i = 2 To Cells(Rows.Count, "D").End(xlUp).Row
If InStr(Cells(i, "D"), Target) > 0 Then
cnt = cnt + 1
Cells(cnt, "F") = Cells(i, "D")
End If
Next i
End Sub 'この行まで//
そしてA列のリスト表示させたい範囲を範囲指定 → データ → 入力規則 → リスト → 元の値の欄に
=OFFSET(F$1,0,,COUNTA(F:F))
という数式を入れます。
入力規則の画面の「エラーメッセージ」タブ → 「無効なデータが入力されたら・・・」のチェックを外しておきます。
※ おそらく価格や数量の列もあるのでしょうが、
複数列のリスト表示を行うとなると結構厄介です。
まずはこの程度で・・・m(_ _)m

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
エクセル 一文字入力すると自動で指定の文字が入力できる方法
InternetExplorer(IE)
-
Excelのリストで1文字目のみをセルに表示したい
その他(コンピューター・テクノロジー)
-
あるセルに特定の文字列を打つと、他のセルに決められた文字が自動入力するように
Excel(エクセル)
-
-
4
1文字入力すると自動的に単語が入力できる方法について質問します。
その他(パソコン・スマホ・電化製品)
-
5
EXCELで入力中に変換候補を候補のテーブルから数件表示させて選べるようにしたい。
Visual Basic(VBA)
-
6
エクセルの対象セルの1つしか入力できないようにする方法。
Excel(エクセル)
-
7
特定セルの内容を更新したら、その更新日を自動的に表示する方法について
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【マクロ画像あり】❶1つの条件...
-
【マクロ】既存ファイルの名前...
-
【マクロ】【画像あり】❶ブック...
-
【マクロ】【画像あり】ファイ...
-
Dir関数のDo Whileステートメン...
-
5単位で繰り上げしたい
-
【マクロ】【画像あり】4つの...
-
【画像あり】オートフィルター...
-
Excelで4択問題を作成したい
-
【マクロ】【画像あり】4つの...
-
エクセルのVBAで集計をしたい
-
エクセルの複雑なシフト表から...
-
【マクロ】数式を入力したい。...
-
【マクロ】元データと同じお客...
-
【マクロ】左のブックと右のブ...
-
【マクロ】実行時エラー '424':...
-
Office2021のエクセルで米国株...
-
エクセルのリストについて
-
【マクロ】【相談】Excelブック...
-
セルにぴったし写真を挿入
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【マクロ】元データと同じお客...
-
エクセルの関数について
-
【画像あり】オートフィルター...
-
エクセルのVBAで集計をしたい
-
エクセルのリストについて
-
【マクロ】数式を入力したい。...
-
【マクロ】【相談】Excelブック...
-
Office2021のエクセルで米国株...
-
【マクロ】実行時エラー '424':...
-
他のシートの検索
-
エクセルの複雑なシフト表から...
-
【マクロ】【配列】3つのシー...
-
vba テキストボックスとリフト...
-
【マクロ】左のブックと右のブ...
-
【マクロ】変数に入れるコード...
-
エクセルシートの見出しの文字...
-
【マクロ】別ファイルへマクロ...
-
【関数】同じ関数なのに、エラ...
-
Amazonでマイクロソフトオフィ...
-
ページが変なふうに切れる
おすすめ情報