สูตร Excel คือการแปลงค่าบูลีน{FALSE, TRUE}
เป็น{0, 1}
อย่างไร
=IF(cond,1,0)
เผื่อว่ามีหนึ่งสั้นกว่า
สูตร Excel คือการแปลงค่าบูลีน{FALSE, TRUE}
เป็น{0, 1}
อย่างไร
=IF(cond,1,0)
เผื่อว่ามีหนึ่งสั้นกว่า
คำตอบ:
คุณสามารถทำได้โดยการคัดเลือกนักแสดง ฟังก์ชัน "int" จะปัดเศษเป็นจำนวนเต็มที่ใกล้เคียงที่สุด หากค่าบูลีนอยู่ใน A1 สูตรจะเป็น:
=INT(A1)
=ROUND(A1,0)
ทำสิ่งเดียวกันในบริบทนี้
=CEILING(A1,1)
--
เป็นวิธีที่พบได้บ่อยที่สุดในการแปลงบูลีนให้เป็นแบบอิน - นั่นคือเหตุผลที่คุณเห็นฟังก์ชั่นที่มี--
อยู่ในนั้นด้วยเหตุผลอย่างนี้ มันจะเปลี่ยนอาร์เรย์ของ {TRUE, FALSE, FALSE} เป็น {1,0,0} ซึ่งสามารถใช้เพื่อคูณอาร์เรย์อื่น ๆ
ตัวอย่าง:
ส่งคืนยอดขายรวมจากภูมิภาคที่ต่ำกว่า 9:
ทีมขาย 1 $ 20 2 $ 30 11 $ 90
สูตร:
=SUMPRODUCT(--(A2:A4<=9),B2:B4)
การคำนวณ
=SUMPRODUCT(--(True,True,False),($20,$30,$90))
=SUMPRODUCT((1,1,0),($20,$30,$90))
=1 * $20 + 1 * $30 + 0 * $90
=$20 + $30 + $0
=$50
--
แต่ฉันต้องยอมรับว่าการใช้สูตรINT
นั้นชัดเจนและสง่างามกว่ามาก :)
ทวีคูณด้วย '1' อดีต True * 1 = 1 และ False * 1 = 0
ตัวอย่างเช่นหากเซลล์ A1 มีค่าบูลีนในเซลล์ข้างเคียงให้ป้อนสูตร:
=A1*1
หมายเหตุ: - จริง True + 0 และ True / 1 มีผลเหมือนกัน
=a1+a2
จะส่งคืนผลรวมเชิงตัวเลขของตรรกะ แต่=sum(a1:a2)
จะไม่ Excel 2013