Q&A

回答の並べ替え:
投稿新規に質問を投稿する

値を変更したセルで数値かどうかのチェックをかけたかったのですが……

劇団ひとりSE 劇団ひとりSE

2021-09-13 13:24

※4~7の無効にしてあるアクションはうまくいった方。1~3のテスト用に無効にしました。

先に謝ります。すみません。
たぶんものすごく間抜けな見落としか勘違いをしています。

今、テーブルに登録されているデータを編集するシートを作っていたのですが、
カラムの型が整数になっているセルには数値しか入力できない……という入力制限はできないため(できないですよね?)
UTIL.ISNUMBERを使用して数値かどうか判断して数値でなかったらメッセージをポップアップで表示させようとしました。
もし~ならばの~部分に
=UTIL.ISNUMBER(C8)
を入れた場合には問題なく動作したのですが、欲張って
1.設定済セルに複数のセルを設定
そして、添付画像のように
=UTIL.ISNUMBER(ADDRESS(ROW(),COLUMN(),4))
がtrueならアクションを終了、
 falseならエラーメッセージを出す
としようとしたのですが、falseの結果しか返りません。
何か根本的に考え方が間違えていたりしますでしょうか?

劇団ひとりSE 劇団ひとりSE
ご助言いただきましてありがとうございます。
無事解決致しました。
CELFでとても大切なINDIRECT関数を抜かしてしまうとは……
お恥ずかしい限りです。
勉強になりました。
Yexiongmao Yexiongmao
メダルベストアンサー
こんにちは。

=UTIL.ISNUMBER(INDIRECT(ADDRESS(ROW(),COLUMN(),4)))
上記のように変更してみてください。

=ADDRESS(ROW(),COLUMN(),4)は、セルのアドレス(文字列)を返します。
そのセルの値を参照するにはINDIRECT()が必要です。