[英]Validate cell based on another cell value in Excel
我有這張桌子
Counter | String
---------------------
four | Apple
six | Banana
並希望根據同一行Counter
Column 中前一個單元格的值來驗證String
列中的單元格。
我做了什么?
-> 數據 -> 數據驗證 -> 自定義,這是我寫的公式
=AND(LEN(ADDRESS(ROW(),COLUMN()))=4, INDIRECT(ADDRESS(ROW(),COLUMN()-1)) = "four")
但這對我不起作用,任何人都可以幫助我嗎?
INDIRECT
返回單元格引用而不是單元格值。 在單元格中使用這並不是真正的區別,但在其他地方使用可能會出現問題。 在您的情況下,單元格引用不等於“四”,但該單元格引用背后的值是。 要解決這些問題,您可以將INDIRECT
包裝在N
或T
中,具體取決於結果是數字還是文本。
所以在你的情況下:
=AND(LEN(ADDRESS(ROW(),COLUMN()))=4,T(INDIRECT(ADDRESS(ROW(),COLUMN()-1)))="four")
如果應用於列String
,這應該可以工作。
但是應該避免大量使用INDIRECT
,因為它的行為不穩定。 大多數時候可以使用INDEX
替換它。 在這種情況下也是如此。
=AND(ROW()<10,COLUMN()<27,INDEX($A$1:$Z$9,ROW(),COLUMN()-1)="four")
應該是一樣的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.