![為什麼我無法在 IF 語句中嵌套 SUBSTITUTE?](https://rvso.com/image/1475795/%E7%82%BA%E4%BB%80%E9%BA%BC%E6%88%91%E7%84%A1%E6%B3%95%E5%9C%A8%20IF%20%E8%AA%9E%E5%8F%A5%E4%B8%AD%E5%B5%8C%E5%A5%97%20SUBSTITUTE%EF%BC%9F.png)
我無法弄清楚這個公式有什麼問題:
=IF((SUBSTITUTE(ADDRESS(1,COLUMN(),4),"1",3)<Sheet2!$B$6))
實質(SUBSTITUTE(ADDRESS(1,COLUMN(),4),"1",3)
上傳回目前列字母的值,例如“B”。末尾的 3 返回行號。所以總共是B3。
這是一個短日期類型的日期。然後將其與另一個日期(也是短日期類型)進行比較。
這個公式不行。當將公式更改為:
=IF((SUBSTITUTE(ADDRESS(1,COLUMN(),4),"1",3)<Sheet2!$B$6),true,false)
無論 if 條件是否滿足,它都會回傳 false。
任何幫助將不勝感激。
答案1
你需要一個「間接「。您正在將字串位址與儲存格值進行比較。
當你評估這個公式時,你基本上會得到這個 -
哪個評估給你這個 -
If(string<value, true, false)
你可以嘗試間接 -
=IF((INDIRECT(SUBSTITUTE(ADDRESS(1,COLUMN(),4),"1",3))<Sheet2!$B$6),1)
它將單元格中的值與其他單元格進行比較 -
答案2
在看不到您正在使用的文字的情況下Substitute
,請嘗試以下任一操作:
=IF((SUBSTITUTE(ADDRESS(1,COLUMN(),4),"1","3")<Sheet2!$B$6),true,false)
=IF((SUBSTITUTE(ADDRESS(1,COLUMN(),4),1,3)<Sheet2!$B$6),true,false)
由於您正在尋找字串並用數字替換,因此它可能會讓您感到粗魯。如果沒有,您可以發布您用來替換的文字嗎?