エクセルで、データの入力規則の入力時メッセージに、特定のセルの値を表示させることはできないでしょうか。

エクセルで、データの入力規則の入力時メッセージに、特定のセルの値を表示させることはできないでしょうか。 マクロ等でそういうふうに改変できないでしょうか・・・。

Excel40閲覧

ベストアンサー

0

例えばA1の入力時メッセージにB1の値を表示させたい場合は、 下記のような感じでできます。 Sub Macro1() With Selection.Validation .Delete .Add Type:=xlValidateInputOnly, AlertStyle:=xlValidAlertStop, Operator _ :=xlBetween .InputMessage = Range("B1").Value '表示させるセルの値 End With End Sub

御回答ありがとうございます。 2点質問があります。 ❶シート1のA1の入力時メッセージにB1の値を表示させるとき、B1に、例えば「=INDEX(シート2!B1:B5,MATCH(A1,シート2!A1:A5,0))」という式を入れた場合に、マクロを起動させると、「.InputMessage = Range("B1").Value」のところでデバッグしてしまいます。なにか解決策はございますでしょうか。(つまり、例えばシート1のA1に「あ」と記入されていて、シート2のA1~A5にそれぞれ「あ」「い」「う」「え」「お」と記入されていて、同じシート2のB1~B5にそれぞれ「か」「き」「く」「け」「こ」と記入されている場合、シート1のA1の入力時メッセージに、「か」と表示されるようにしたいです。) ❷シートの保護中は、マクロは起動しないのでしょうか。 以上、どうぞよろしくお願い致します<(_ _)>

ThanksImg質問者からのお礼コメント

御回答ありがとうございました。 返信のなかにあります質問(入力時メッセージの字数制限に関する質問)については、別途質問を立てておりますので、もし御回答していただける場合はそちらのほうで回答していただけると幸いです。

お礼日時:10/25 20:43