Excel - ล้นข้อความของเซลล์ไปยังเซลล์ที่อยู่ติดกันที่มีสูตร


1

ฉันมีตารางที่เต็มไปด้วยข้อมูลที่มาจากตารางอื่น สูตรในเซลล์ของตารางของฉันค่อนข้างง่าย (อ้างอิงถึงเซลล์ในแผ่นงานอื่น)

ตัวอย่างตาราง

ในตารางของฉันฉันมีแถว "ชื่อ" (แถวที่ 57 และ 64 ในกรณีนั้น) ที่มีค่าข้อความเดียวที่ฉันต้องการล้นไปยังเซลล์ที่อยู่ติดกันเนื่องจากเซลล์ที่อยู่ติดกันในแถวเหล่านั้นจะว่างเปล่าเสมอ

หากค่าในตารางที่ป้อนด้วยตนเองจะไม่มีปัญหาและเซลล์จะมีลักษณะเหมือนที่ฉันต้องการในภาพด้านล่าง

ตารางจะเป็นเช่นไรหากข้อมูลถูกป้อนด้วยตนเองและฉันต้องการ

ค่าของเซลล์แรกในแถว 57 ไม่ล้นเนื่องจากเซลล์ที่อยู่ติดกันมีสูตร (สูตรโดยทั่วไปคือ "= OtherCell" โดยที่ OtherCell ไม่มีค่าใด ๆ (โดยเฉพาะค่าของ ""))

สิ่งสำคัญคือให้สังเกตว่าตำแหน่งของแถว "ชื่อเรื่อง" เปลี่ยนแปลงและเกิดขึ้นในหลาย ๆ แถวในตารางเนื่องจากข้อมูลจะถูกแยกฐานข้อมูลโดยอัตโนมัติ

ฉันจะบรรลุสิ่งนี้ได้อย่างไร ...

  • หากไม่ใช้การแทรกแซงด้วยตนเอง (รายงานเหล่านี้เป็นรายงานอัตโนมัติฉันไม่สามารถลบสูตรได้เนื่องจากรายงานฉบับต่อไปที่สร้างขึ้นจะผิดพลาด)
  • VBA สามารถใช้ได้ แต่ไม่ใช่ในลักษณะที่ปรับเปลี่ยนตารางในลักษณะ "กลับไม่ได้" (ในลักษณะที่ทำให้ในครั้งต่อไปที่มีการคำนวณชีตข้อมูลจะผิดพลาด) ด้วยเหตุผลเดียวกับการแทรกแซงด้วยตนเอง

ฉันใช้ Excel 2013 แต่ฉันเชื่อว่าคำถามนี้ใช้กับ Excel เวอร์ชัน 2007+


คุณสามารถตั้งค่าคอลัมน์ A เพื่อตัดข้อความได้หรือไม่ แน่นอนว่าคุณจะได้รับหลายบรรทัด แต่เป็นการแลกเปลี่ยนระหว่างความสามารถในการอ่านและการแสดงผลที่สม่ำเสมอ
Andi Mohr

ฉันมักจะมีชื่อยาว ๆ ซึ่งจะทำให้โต๊ะดูแปลก ๆ ดังนั้นมันจึงไม่ใช่ตัวเลือกที่ดีมาก
Gabriel Caron L'Écuyer

บางทีคุณอาจเขียนแมโคร VBA ที่จะลบสูตรทั้งหมดที่ให้เซลล์ว่าง
Jérôme Radix

คำตอบ:


2

คำตอบสั้น ๆ คือ: คุณทำไม่ได้

คำตอบยาว ๆ คือมีเพียงเซลล์ที่ว่างเปล่าเท่านั้นที่จะอนุญาตให้ข้อความจากเซลล์ถัดไปทางซ้ายล้นและแสดงในเซลล์นั้น

นี่เป็นเพียงวิธีการทำงานของ Excel

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

อย่ายิงผู้ส่งสาร


ฉันรู้เกี่ยวกับพฤติกรรมของ Excel ที่มีล้นมือถืออธิบายเป็นอย่างดีโดย @DanHenderson ในโพสต์นี้: การเชื่อมโยง คำถามของฉันมีมากขึ้นถ้ามีคนรู้วิธีแก้ปัญหาเนื่องจากเป็นสิ่งที่รบกวนฉันมาหลายปี สามารถใช้ VBA ได้ แต่ไม่สามารถลบสูตรได้
Gabriel Caron L'Écuyer

หรือโดยเฉพาะอย่างยิ่ง VBA สามารถใช้ได้ แต่ไม่ใช่ในลักษณะที่ปรับเปลี่ยนตารางในลักษณะ "กลับไม่ได้" (ในวิธีที่ทำให้การคำนวณแผ่นงานครั้งต่อไปเป็นข้อมูลที่ผิดพลาด)
Gabriel Caron L'Écuyer

ดีไม่ไม่ได้มีข้อ จำกัด เหล่านี้ บางทีคุณอาจต้องการที่จะโพสต์ข้อเสนอแนะในExcel.Uservoice.com หากได้รับคะแนนเสียงจำนวนมากอาจเป็นหนึ่งในฟีเจอร์ถัดไปที่ทีม Excel จะทำงาน
teylyn

0

การใช้ VBA คุณสามารถโมฆะเซลล์ที่มีสูตรซึ่งไม่ได้ผล:

Private Sub CommandButton21_Click()
    For Each c In Worksheets("yourworksheet").Range("yourrange")
        If c.Text = "" Then c.Select: Selection.ClearContents
    Next
End Sub

ดังนั้นเซลล์ที่อยู่ติดกันสามารถขยายไปยังเซลล์ที่ว่างเปล่า

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