ฉันพยายามประเมินนิพจน์ต่อไปนี้ใน Excel:
IF(A2:C6="apple",ROW(A2:C6)-ROW(A2)+1,ROW(C6)+1),2)
หากapple
อยู่ในอาร์เรย์เงื่อนไข if จะส่งคืน
ROW(A2:C6)-ROW(A2)+1
และ
ROW(A2:C6) = 2
ดังนั้น
ROW(A2:C6)-ROW(A2)+1 = 2-2+1 = 1
ถ้าเงื่อนไขประเมินเป็น False มันจะกลับมา
ROW(C6)+1 = 6+1 = 7
ฉันกำลังพยายามทำให้สูตรจากไซต์นี้ใช้งานได้
,2)
ไม่ควรจะมี โพสต์ในฟอรัมที่คุณเชื่อมโยงSMALL()
ใช้จะมีมูลค่า,2)
แต่ไม่จำเป็นในIF()
คำชี้แจงนี้ คุณIF()
จะไม่ทำงานเช่นนี้เพราะA2:C6="apple"
ไม่สามารถประเมินได้เหมือนเดิม
ROW(A2:C6) = 2
เป็นเท็จเพราะนี่ก็หมายความว่าเป็นสูตรอาร์เรย์และจะกลับมาแถวของเซลล์ที่ผลตอบแทนจริงที่จะเป็นเท่ากับROW(A2:C6)
คือการบัญชีสำหรับส่วนหัวคอลัมน์อาจมี เพื่อที่ว่าอาร์เรย์จะไม่ส่งคืนแถวของแผ่นงาน แต่มีกี่แถวลงมาจากการจับคู่ แล้วเมื่อไม่มีการจับคู่มันก็จะส่งกลับค่าเริ่มต้น c7 น่าจะเป็นเซลล์ว่างเปล่า แต่พวกเขาใช้มันเป็น C6 + 1 สำหรับการลากลงและการอ่าน apple
-ROW(A2)+1
A2