
セル L6 に「はい」または「いいえ」と表示されている場合、セル L7 と L8 を入力する必要があることを確認するメッセージ ボックスが表示されます。同様の投稿を見たのですが、私の状況では VBA コーディングが機能しませんでした。どなたか助けていただければ幸いです。ありがとうございます。
答え1
目標を達成するために、2つの方法を提案したいと思います。
方法 1、データ検証:
- 状況1セルがまたは
L6
で入力されている場合。Yes
No
- 状況2
L6
セルがと のどちらでも満たされていYes
ない場合No
。
- 状況3セル
L6
が の場合Blank
。
使い方:
- セルを選択
L7
&L8
およびデータタブクリックデータ検証。 - セットカスタム検証基準として次の数式を入力します。
=NOT(ISBLANK($L$6))*(OR($L$6="Yes",$L$6="No"))
- 終了わかりました
方法2、VBA(マクロ):
- 右クリックしてシートタブ& 打つコードを表示ポップアップメニューからVBエディターを取得します。
コピーペーストこの規約は標準モジュールシート付き。
Option Explicit Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range("L6")) Is Nothing Then If Target.Value = "Yes" Or Target.Value = "No" Then MsgBox "Now You Can fill L7 & L8" Range("L7").Activate ElseIf Target.Value <> "Yes" Or Target.Value <> "No" Then MsgBox "Target cell must have data Yes Or No,, to fill L7 & L8" Target.Activate End If If Target.Value = "" Then MsgBox "Target Cell Can't be Blank,," Target.Activate End If End If End Sub
注意
このコードは、セルに入力するとすぐに応答を開始します
L6
。必要に応じて、数式内および VBA コード内のセル参照を調整できます。