ผลรวมที่คืน 0 ใน Excel


12

ผมทำงานในกระดาษคำนวณ Excel และเมื่อผมใช้สูตร SUM 0ในมือถือแล้วฉันเลือกคอลัมน์ก็จะส่งกลับ ฉันคิดว่ามันเป็นเพราะคำพูดสองครั้งในเซลล์ ผมพยายามที่จะจัดรูปแบบเซลล์ 0แต่ก็ยังคงให้ผลตอบแทน

ฉันใช้ Microsoft Office 2010

สกรีนช็อตของผลลัพธ์

คำตอบ:


5

หากต้องการลบเครื่องหมายคำพูดคู่ให้เลือกเซลล์ที่ต้องการแปลงและใช้Find->Replaceเพื่อเปลี่ยนเครื่องหมายคำพูด ( ") เป็นไม่มีอะไร

หากเซลล์ยังคงเป็นข้อความอยู่นี่เป็นวิธีการที่จะแปลงข้อความเป็นตัวเลขโดยใช้Paste Specialคำสั่ง

  1. ในเซลล์ว่างใด ๆ ให้พิมพ์ค่า 1
  2. ตรวจสอบให้แน่ใจว่าเซลล์ที่คุณพิมพ์ 1 ถูกจัดรูปแบบเป็นตัวเลข
  3. เลือกเซลล์ด้วย 1 และ Copy
  4. เลือกเซลล์ที่มีค่าที่คุณต้องการแปลงเป็นตัวเลข
  5. เลือก Paste Special
  6. ภายใต้OperationคลิกMultiplyแล้วคลิกตกลงOK

ปัญหาไม่ได้มาจากคำพูด เครื่องหมายคำพูดที่แสดงในภาพหน้าจออยู่ที่นี่เพราะค่าเป็นข้อความไม่ใช่ตัวเลขและค่าไม่มีคำพูดใด ๆ เหตุผลก็คือว่าในสถานที่ฝรั่งเศสเป็นตัวคั่นทศนิยมไม่, .ดังนั้นค่าเช่นเดียวกับ123.45ข้อความและไม่สามารถสรุปได้ การคูณด้วย 1 อย่างที่คุณแนะนำไม่สามารถทำได้ในกรณีนี้เพราะนี่ไม่ใช่สถานการณ์ "ตัวเลขที่จัดเก็บเป็นข้อความ" แต่เป็นสถานการณ์ "ข้อความที่จัดเก็บเป็นข้อความ" หากคุณแทนที่จุดด้วยเครื่องหมายจุลภาค Excel จะแปลงข้อความเป็นตัวเลขจริง (ใช้ได้กับภาษาฝรั่งเศสเท่านั้น)
piko

7

'ตัวเลข' ที่คุณพยายามเพิ่มคือข้อความไม่ใช่ตัวเลข

ที่เกิดขึ้นเมื่อพวกเขาได้รับจากแหล่งที่ทำเครื่องหมายพวกเขาตามลำดับหรือเมื่อรูปแบบของเซลล์ที่ตั้งไว้ไม่ถูกต้อง

น่าเสียดายที่ไม่มีวิธีการง่ายๆในการแก้ไขสองวิธี - การเปลี่ยนรูปแบบของเซลล์จะไม่เปลี่ยนเนื้อหาตามนั้นคุณจะต้องป้อนค่าแต่ละค่าอีกครั้ง มีหลายวิธีในการแก้ไขแม้ว่า:

  1. หากคุณโหลดข้อมูลจาก CSV หรือแหล่งอื่นที่ไม่ใช่ Excel วิธีที่ง่ายที่สุดคือการทำซ้ำและทำเครื่องหมายคอลัมน์เป็น 'หมายเลข' แทนที่จะเป็น 'ข้อความ' เมื่อต้องการทำสิ่งนี้ให้เปิดแผ่นงาน Excel เปล่าไปที่ข้อมูล / จากข้อความและทำตามตัวช่วยสร้าง ในขั้นตอนที่ 3/3 ตรวจสอบให้แน่ใจว่าได้คลิกที่คอลัมน์และเลือก 'ทั่วไป' ไม่ใช่ 'ข้อความ'

  2. หากนี่ไม่ใช่ตัวเลือกคุณสามารถใช้คอลัมน์ตัวช่วย (เช่นขวาถัดจากค่า) และป้อน=VALUE(E1)ลงใน F1 และคัดลอกลง คอลัมน์นี้จะสามารถสรุปได้ นอกจากนี้คุณยังสามารถคัดลอกเนื้อหาของคอลัมน์ F และ 'วาง / ค่าเฉพาะ' เหนือคอลัมน์ E แล้วลบคอลัมน์ตัวช่วย

  3. ตัวเลือกที่สามคือการรวมสิ่งนี้ในสูตรอาร์เรย์: แทนที่จะ=SUM(E10:E13)ใช้=SUM(VALUE(E10:E13))แล้วกดCTRLSHIFTENTER(แทนเท่านั้นENTER)


ฉันลองด้วยโซลูชัน 2 และ 3 แต่=SUM(VALUE(E10:E13))ข้อผิดพลาดที่ส่งคืนจึงไม่มีวิธีแก้ปัญหา แต่มีการจัดรูปแบบไฟล์ csv, มีวิธีแปลงเป็น. xlsx และทำเครื่องหมายคอลัมน์เป็น Number ขอบคุณอีกครั้ง
Haithem Rihane

@ fixer1234 สำหรับฉันดูเหมือนว่ามีคำแนะนำในคำตอบ
techraf

@ techraf ใช่ ฉันพยายามพูดถึงความคิดเห็นของ OP แต่ความคิดเห็นของฉันเพิ่งเพิ่มความสับสน
fixer1234

@techraf และ @Aganju ฉันได้ใช้ฟังก์ชั่น VALUE ในแต่ละเซลล์ แต่ก็ยังส่งคืนข้อผิดพลาด=SUM(VALUE(E10):VALUE(E13))
Haithem Rihane

@HaithemRihane ที่ใช้งานไม่ได้มันไม่ใช่สูตร Array คุณทำตามคำแนะนำด้วย CTRL + SHIFT + RET หรือไม่ ผลจะแสดงเป็นแม้ว่าคุณจะไม่เคยพิมพ์={SUM(VALUE(E10:E13))} {}ฉันได้เพิ่มคำแนะนำโดยละเอียดสำหรับ 1
Aganju

3

ฉันยังใช้ Excel กับภาษาฝรั่งเศสและมักประสบปัญหานี้กับไฟล์ CSV ตามที่อธิบายโดยคนอื่น ๆ ตัวเลขภาษาฝรั่งเศสใช้อาการโคม่าเป็นตัวคั่นทศนิยมและตัวเลขเช่น123.45นั้นจะถูกตีความเป็นข้อความโดย Excel

วิธีที่เร็วที่สุดที่จะหลีกเลี่ยงนี้คือการแทนที่ด้วย. ,คุณสามารถทำได้อย่างรวดเร็วด้วยค้นหา / แทนที่ตามที่ David แนะนำ

สำหรับผู้ที่ประสบปัญหานี้บ่อยครั้งคุณสามารถใช้รหัสนี้ ( ดัดแปลงจากคำตอบนี้ ) บันทึกไว้ในสมุดงานส่วนบุคคลของคุณและกำหนดให้ปุ่มใน Ribbon:

Sub Comas2Dots()
    Application.ScreenUpdating = False
    If (MsgBox("Do you want to replace comas by dots?", vbOKCancel) = vbOK) Then
        Const sTEMPCOMMA = "|comma|"
        Const sTEMPDOT = "|dot|"
        Const sCOMMA = ","
        Const sDOT = "."

        If TypeName(Selection) = "Range" Then
            With Selection
                .Replace sCOMMA, sTEMPCOMMA, xlPart
                .Replace sDOT, sTEMPDOT, xlPart
                .Replace sTEMPCOMMA, sDOT, xlPart
                .Replace sTEMPDOT, sCOMMA, xlPart
            End With
        End If
    End If
    Application.ScreenUpdating = True
End Sub

หวังว่าจะช่วยให้ผู้คนประสบปัญหาที่ไม่จำเป็นนี้!


เอกสารเพิ่มเติม

  1. วิธีกำหนดมาโครให้กับริบบิ้น
  2. คัดลอกมาโครของคุณไปยังสมุดงานแมโครส่วนบุคคล

2

เซลล์ที่คุณพยายามเพิ่มนั้นจะไม่ถูกมองว่าเป็นตัวเลข นี่เป็นเพราะมีจุดหยุดเต็ม "" ไม่ใช่เครื่องหมายจุลภาค "," เพื่อแทนส่วนทศนิยมของตัวเลข

วิธีที่เร็วกว่าในการแก้ไขปัญหานี้คือการใช้ฟังก์ชั่น find (ctrl F), find all "." และแทนที่ด้วย ","


@ fixer1234 ที่จริงแล้วเดวิดถูกต้อง ในภาษาฝรั่งเศสที่ฉันมีอยู่จุลภาคคือตัวคั่นทศนิยม ไม่มีการใช้เครื่องหมายจุดเพื่อเป็นตัวเลข ปัญหาของ OP เป็นเพียงว่าตัวเลขที่เป็นจริงข้อความและการแก้ไขปัญหานั้นคุณจะต้องแทนที่ด้วย. ,แน่นอนมันใช้ได้เฉพาะในภาษาฝรั่งเศส (& คล้ายกัน)
piko

1
  1. เน้นคอลัมน์ที่คุณพยายาม SUM คลิกขวาและจัดรูปแบบเซลล์

  2. เลือก Number แต่อย่าลืมตั้งทศนิยมให้เป็น 0 หากไม่ได้ใช้กับค่า ตอนนี้ถึงแม้ว่าคุณจะเปลี่ยนรูปแบบของคอลัมน์ แต่ไม่ได้หมายความว่าคอลัมน์นั้นได้แปลงค่าทั้งหมดเป็นตัวเลขอย่างเป็นทางการแล้วดังนั้นทำตามขั้นตอนต่อไปนี้เพื่อแก้ไขปัญหานี้

  3. เน้นทั้งคอลัมน์อีกครั้งแล้วคลิกแท็บข้อมูลจากนั้น "เปลี่ยนเป็นคอลัมน์"

ป้อนคำอธิบายรูปภาพที่นี่

  1. เลือกตัวคั่นคลิกถัดไป

  2. ยกเลิกการเลือกแท็บและคลิกถัดไป ป้อนคำอธิบายรูปภาพที่นี่

  3. คลิกเสร็จสิ้น

ผลรวมตอนนี้ควรสะท้อนตัวเลข!


-1

เปิดแผ่นงาน Excel ใหม่ จัดรูปแบบแผ่นงานเป็นตัวเลขลบทศนิยมถ้าคุณไม่ต้องการ จากนั้นคัดลอกแผ่นงานต้นฉบับของคุณและวางเป็นพิเศษเฉพาะค่าลงในแผ่นงานที่คุณจัดรูปแบบเป็นตัวเลขเท่านั้น ควรแก้ปัญหาของคุณคุณอาจต้องจัดรูปแบบบางแผ่นสำหรับ datesting หรือสิ่งอื่นที่คุณต้องการและทำทุกอย่างที่คุณมีถ้าคุณแยกพวกเขา แต่สูตรของคุณควรทำงานสิ่งที่โง่ทำให้ฉันเสียเวลาครึ่งวันหาปัญหา


-1

ตรวจสอบให้แน่ใจว่าคุณไม่มีแถวที่ซ่อนอยู่ ฉันมีสองแถวที่ซ่อนอยู่และหลังจากฉันตระหนักและลบแถวเหล่านั้นออกการคำนวณของฉันก็ใช้งานได้ในที่สุด

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