ทำไมฉันไม่สามารถซ้อน SUBSTITUTE ในคำสั่ง IF ได้


1

ฉันไม่สามารถหาสิ่งที่ผิดกับสูตรนี้:

=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)

มันจะส่งกลับค่าเท็จโดยไม่คำนึงว่าเงื่อนไขตรงตามเงื่อนไขหรือไม่

ความช่วยเหลือใด ๆ ที่จะได้รับการชื่นชมอย่างมาก.


1
เป็นที่น่าสนใจที่คุณจะแทนที่สตริง "1" ด้วยหมายเลข 3 ฉันจะบอกว่าการซ้อนกันของการแทนที่และที่อยู่ผิดเพราะอาจทำให้ Excel คิดว่านี่เป็นสตริงไม่ใช่ที่อยู่ ดังนั้นจึงอาจเปรียบเทียบสตริงคงที่กับเนื้อหาของเซลล์อื่น
Run CMD

คำตอบ:


1

คุณต้องการ " ทางอ้อม คุณกำลังเปรียบเทียบที่อยู่สตริงกับค่าเซลล์

เมื่อคุณประเมินสูตรคุณจะได้รับ -

enter image description here

สิ่งที่ประเมินให้คุณนี้ -

enter image description here

If(string<value, true, false)

คุณสามารถลองทางอ้อม -

=IF((INDIRECT(SUBSTITUTE(ADDRESS(1,COLUMN(),4),"1",3))<Sheet2!$B$6),1)

มันจะเปรียบเทียบค่าในเซลล์กับเซลล์อื่น -

enter image description here


1
ขอบคุณมากนี่เป็นปัญหาที่ฉันมี
Sean

0

โดยไม่เห็นข้อความที่คุณใช้ 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)

มันอาจจะทำให้คุณโกรธเพราะคุณกำลังมองหาสตริงและแทนที่ด้วยตัวเลข ถ้าไม่คุณสามารถโพสต์ข้อความที่คุณใช้แทนได้หรือไม่

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.