No.2ベストアンサー
- 回答日時:
>何か方法がありましたら、教えてください。
入力規則での拡大は難しいですね。
代替案として、コンボボックスで入力規則と同様機能を作ってみました。シート1(Sheet1)で実行してみます。
(使いようによっては、入力規則以上の表現ができるでしょう)
1.入力規則をリスト化したデータをシートに書いておきます。例えばセル範囲『Z1:Z10』とします。
2.表示→ツールバーでVisual BasicをチェックしてVisual Basicのツールバーを出します。
3.コントロールツールボックスのアイコンをクリックしてダイアログを表示。
4.そこからコンボボックスをクリックして画面に貼り付けます。
4-1.コンボボックスを右クリックしてプロパティを選択。
4-2.(オブジェクト名)はComboBox1のままとします。
4-2.プロパティのListFillRangeにZ1:Z10。
4-3.プロパティの 'Width' で幅
'Height' で高さ
'Font' でフォント
'BackColor' で背景色 が指定できます。
好きに大きさを調整して下さい。何度でもできます。
コンボボックスの作成が終わったとして、次にシカケのマクロを書きます。
5.ツール→マクロ→Visual Basic Editor でVBE画面に移り、
表示→プロジェクトエクスプローラでプロジェクトエクスプローラを表示。
Sheet1をダブルクリック。でてきたコードウインドウに下記マクロを貼り付けます。
6.入力規則列1 = の次に入力規則を適用してコンボボックスを表示させる範囲を指定します。
7.シートに戻り、指定した範囲をクリックすれば入力規則と同様なコンボボックスが出るはずです。
入力規則にあるメッセージの処理などは割愛しました。 ご参考に。
ここから
↓
'入力規則列1 :入力規則を適用する列名、範囲
' 列全体なら『E:E』のようにする
' 列の一部なら『E1:E100』のようにする。連続する列、範囲も可
Const 入力規則列1 = "E1:E100"
'出力位置横、縦:コンボボックスを出す相対位置(0は同じ列または行、1は右または下)
Const 出力位置横 = 0
Const 出力位置縦 = 1
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error GoTo ErrorHandler 'エラー対応
With ComboBox1
If Target.Count = 1 Then '単一セルの操作の場合
If Not Intersect(Target, Range(入力規則列1)) Is Nothing Then '列の特定
.Visible = True 'コンボボックスを見えるようにする
.Top = Target.Offset(出力位置縦, 出力位置横).Top '縦位置
.Left = Target.Offset(出力位置縦, 出力位置横).Left '横位置
.LinkedCell = Target.Address 'リンクするセル
Else
.Visible = False 'コンボボックスを見えなくする
End If
Else
.Visible = False 'コンボボックスを見えなくする
End If
End With
Exit Sub
ErrorHandler:
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excel ドロップダウンリスト(入力規則)に関してです データの入力規則で元データ79000行のド 3 2023/07/17 10:06
- Excel(エクセル) エクセルについて教えてください。 2 2023/06/14 11:11
- Visual Basic(VBA) VBA ドロップダウンリストを残して値のみクリア 2 2022/10/27 05:42
- Excel(エクセル) VLOOKUP が機能しない、その原因は何 ? 8 2022/10/19 12:06
- Excel(エクセル) エクセルで値ではなく関数を参照する方法 6 2023/03/19 00:50
- Excel(エクセル) エクセルの散布図で新たに入力した値のデータラベルが空欄になる現象 1 2022/04/26 09:31
- Excel(エクセル) 余計なお世話的な「入力規則」?対策は? 2 2023/01/14 12:39
- Excel(エクセル) [入力規則]のリストボックス内の“不揃いの林檎たち” 3 2022/09/15 18:32
- JavaScript セレクトを全て選択されていないと、文字によるエラーメッセージを表示させるコードを調べています 2 2023/06/22 15:48
- Excel(エクセル) エクセルの表で A1にデータの入力規則でリストを作って、 (リス、キリン、ゾウとします) リストを選 4 2022/07/15 09:29
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【エクセル】関数で「A1が0でな...
-
エクセル逆三角マークで選択項...
-
エクセルでセルにポインタする...
-
エクセルVBA ブックを閉じる前...
-
エクセル 入力規則のリストボ...
-
【Excel】ドロップダウンリスト...
-
エクセルでセルのコメントが消...
-
シートを保護しても入力規則を...
-
EXCEL:入力規則の「リスト」は...
-
エクセルの入力規則で作ったリ...
-
入力規則の入力時メッセージの...
-
Excel 自動的に半角英数になり...
-
エクセルで、入力できる箇所を...
-
エクセルで電話番号から市内局...
-
excelの入力規則リストで重複不...
-
エクセルのセルの手入力を禁止。
-
エクセルのスクロールバーが異常
-
エクセルのプルダウンボタンの...
-
エクセルで。
-
エクセルで、入力制限(プルダ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【エクセル】関数で「A1が0でな...
-
エクセル逆三角マークで選択項...
-
エクセルでセルにポインタする...
-
シートを保護しても入力規則を...
-
エクセルVBA ブックを閉じる前...
-
【Excel】ドロップダウンリスト...
-
エクセルでセルのコメントが消...
-
エクセル 入力規則のリストボ...
-
Excel 集計表
-
入力規則の入力時メッセージの...
-
エクセルの入力規則で作ったリ...
-
エクセルVBA ユーザーフォーム...
-
ドロップダウンリスト(INDIREC...
-
Excel 自動的に半角英数になり...
-
カンマで区切った数値をCOU...
-
エクセルで、入力制限(プルダ...
-
Excelで同じセルに入力し エン...
-
Excelでセルに名前を定義したい...
-
エクセルで。
-
エクセルのセルの手入力を禁止。
おすすめ情報