วิธีทำให้ Excel 2010 เติมแถวใหม่โดยอัตโนมัติด้วยสูตรได้อย่างไร


12

ฉันสามารถสาบานได้ว่าฉันได้เห็นพฤติกรรมที่ Excel กรอกข้อมูลในแถวที่แทรกใหม่โดยอัตโนมัติด้วยสูตรเดียวกันกับในแถวด้านบน

ฉันรู้ว่าสิ่งนี้สามารถทำได้กับ VBA บางอย่าง แต่ถ้าเป็นไปได้ฉันต้องการค้นหาสิ่งที่กระตุ้นให้เกิดขึ้นโดยกำเนิด (เว้นแต่ฉันจะฝัน) มีใครรู้บ้างไหมว่าสิ่งนี้เกิดขึ้นได้อย่างไร

คำตอบ:


6

นี่ไม่ใช่ความฝันและคุณพูดถูก: AI ของ Excel กระตุ้นสิ่งเหล่านี้และไม่เพียง แต่สำหรับตาราง เป็นเพียงตัวอย่างเล็ก ๆ ที่แสดงให้เห็น:

  • เปิดเวิร์กบุ๊กใหม่และกรอกข้อมูลในคอลัมน์Aด้วยจำนวนที่เพิ่มขึ้นเช่น:
1
2
3
4
5
  • ถัดไปในคอลัมน์ B เพิ่มสูตรง่าย ๆ เช่น=A1*10และป้อนรายการตัวเลขอัตโนมัติเพื่อรับสิ่งนี้:
1      10
2      20
3      30
4      40
5      50
  • ทีนี้เพื่อดูว่า AI ทำงานอย่างไรให้พิมพ์6(หรือตัวเลขใด ๆ ) ในแถวถัดไปใต้5(ซึ่งควรอยู่A6ในบริบท) และกดTABOR หรือENTER- ตามปกติ
  • เพลิดเพลินกับความมหัศจรรย์! (:

สิ่งนี้ไม่ควรเกิดขึ้นสำหรับสูตรเท่านั้น - การจัดรูปแบบอาจถูกนำไปใช้อัตโนมัติเช่นกันเมื่อคุณเพิ่มคอลัมน์ใหม่ลงในชุดข้อมูลและ "ส่วนหัว" (แถวที่ 1) ของคุณมีการจัดรูปแบบพิเศษ (เติมสีดำ / ขาว) และเริ่มพิมพ์ ค่าที่นั่น - ส่วนใหญ่มีแนวโน้มที่จะมีสีในลักษณะเดียวกัน

ฉันไม่สามารถให้รายชื่อกรณีทั้งหมด แต่ฉันคิดว่าคุณมีเงื่อนงำ!)


น่าสนใจฉันสามารถทำให้สิ่งนี้ทำงานในคอลัมน์ไม่ใช่แถว (เช่นถ้าคุณย้ายตัวอย่างของคุณฉันไม่สามารถทำงานได้)
RipperDoc

ฉันไม่รู้ว่าทำไมอย่างนั้น ... อาจเป็นเพราะข้อมูลมักจะถูกเก็บไว้ในโหมดคอลัมน์โดยมีการเติบโต - มันดูเป็นธรรมชาติมากขึ้น))
Peter L.

พวกเขาจะต้องมีอย่างน้อยสี่
ลุ

@PeterL., การตีความที่ดี +10 ☺
Rajesh S

3

คุณสามารถหลีกเลี่ยงคุณลักษณะป้อนอัตโนมัติอย่างสมบูรณ์กับสูตรอาร์เรย์ เพียงแค่ใส่สูตรเหมือนปกติ แต่ผนวก:columnในตอนท้ายของการอ้างอิงแต่ละเซลล์แล้วกดCtrl+ShiftEnter + สูตรจะถูกนำไปใช้กับเซลล์ทั้งหมดในคอลัมน์ทันทีโดยไม่ต้องลากอะไรเลย


แก้ไข:

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

เริ่มต้นด้วยการอัปเดตเดือนกันยายน 2018 สำหรับ Office 365 สูตรใด ๆ ที่สามารถส่งคืนผลลัพธ์ได้หลายรายการจะทำให้เกิดการรั่วไหลโดยอัตโนมัติไม่ว่าจะลงในเซลล์ที่อยู่ใกล้เคียง การเปลี่ยนแปลงในพฤติกรรมนี้ยังมาพร้อมกับฟังก์ชั่นอาร์เรย์แบบไดนามิกใหม่ ๆ สูตรอาเรย์แบบไดนามิกไม่ว่าจะใช้ฟังก์ชันที่มีอยู่หรือฟังก์ชั่นอาเรย์แบบไดนามิกจะต้องป้อนเข้าสู่เซลล์เดียวจากนั้นยืนยันด้วยการกด Enter ก่อนหน้านี้สูตรอาร์เรย์มรดกต้องเริ่มจากการเลือกช่วงการส่งออกทั้งหมดแล้วยืนยันสูตรด้วยCtrl+ +Shift Enterโดยทั่วไปเรียกว่าเป็นสูตร CSE

แนวทางและตัวอย่างของสูตรอาร์เรย์

หากคุณอยู่ใน Excel รุ่นเก่าหรือต้องการทราบข้อมูลเพิ่มเติมเกี่ยวกับสูตรอาร์เรย์แล้วอ่านต่อ


ตัวอย่างเช่นการใส่=B3:B + 2*C3:CD3 และCtrl+ Shift+ Enterเทียบเท่ากับการพิมพ์=B3 + 2*C3และลากลงไปในตารางโดยเริ่มจากแถวที่ 3

พิมพ์ได้เร็ว แต่มีข้อเสียที่เซลล์ที่ไม่ได้ใช้ในตอนท้าย (นอกตารางปัจจุบัน) ยังคงคำนวณและแสดง 0 มีวิธีซ่อน 0อย่างง่าย อย่างไรก็ตามวิธีที่ดีกว่าคือ จำกัด การคำนวณไว้ที่คอลัมน์สุดท้ายของตาราง ทราบว่าในสูตรอาเรย์คุณสามารถใช้X3:X101เพื่อนำไปใช้กับเซลล์เฉพาะจาก X3 ถึง X101 เราสามารถใช้INDIRECTฟังก์ชั่นเพื่อให้ได้ผลเช่นเดียวกัน

  • ใส่=LOOKUP(2, 1/(A:A <> ""), A:A)ในเซลล์บางส่วนนอกตารางเพื่อหาเซลล์ที่ไม่ว่างเปล่าสุดท้ายLastRowในตารางและชื่อมัน หรือใช้=COUNTA(A3:A) + 2เมื่อแถวแรกของตารางคือ 3
  • จากนั้นแทนการB3:Bใช้งาน=INDIRECT("B3:B" & LastRow)

ตัวอย่างเช่นถ้าคุณต้องการที่เซลล์ในคอลัมน์ D จะมีผลิตภัณฑ์ของเซลล์ใน B และ C และคอลัมน์ E มีผลรวมของ B และ C แทนการใช้D3 = B3*C3และE3 = B3 + C3และลากลงคุณเพียงแค่ใส่ที่อยู่ด้านล่างสูตรใน D3 และ E3 ตามลำดับและกดCtrl+ Shift+Enter

=INDIRECT("B3:B" & LastRow) * INDIRECT("C3:C" & LastRow)
=INDIRECT("B3:B" & LastRow) + INDIRECT("C3:C" & LastRow)

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


สูตรอาร์เรย์นั้นเร็วมากเนื่องจากรูปแบบการเข้าถึงข้อมูลเป็นที่รู้จักกันอยู่แล้ว ตอนนี้แทนที่จะทำการคำนวณที่แตกต่างกัน 1,001 รายการพวกเขาสามารถทำเวกเตอร์และทำแบบขนานโดยใช้หลายคอร์และหน่วย SIMD ในซีพียู นอกจากนี้ยังมีข้อดีดังต่อไปนี้:

  • ความสอดคล้อง:หากคุณคลิกเซลล์ใด ๆ จาก E2 ลงมาคุณจะเห็นสูตรเดียวกัน ความสอดคล้องนั้นสามารถช่วยรับรองความถูกต้องได้มากขึ้น
  • ความปลอดภัย:คุณไม่สามารถเขียนทับส่วนประกอบของสูตรอาร์เรย์หลายเซลล์ได้ ตัวอย่างเช่นคลิกเซลล์ E3 และกดลบ คุณต้องเลือกทั้งช่วงของเซลล์ (E2 ถึง E11) และเปลี่ยนสูตรสำหรับอาร์เรย์ทั้งหมดหรือปล่อยให้เป็นอาร์เรย์ตามที่เป็นอยู่ เพื่อเป็นการเพิ่มมาตรการความปลอดภัยคุณต้องกดCtrl+ Shift+ Enterเพื่อยืนยันการเปลี่ยนแปลงสูตร
  • ขนาดไฟล์ที่เล็กลง:คุณมักจะสามารถใช้สูตรอาเรย์เดี่ยวแทนหลายสูตรกลางได้ ยกตัวอย่างเช่นสมุดงานใช้สูตรอาร์เรย์หนึ่งในการคำนวณผลในคอลัมน์อีหากคุณเคยใช้สูตรมาตรฐาน (เช่น=C2*D2, C3*D3, C4*D4... ), คุณจะได้ใช้ 11 สูตรที่แตกต่างกันในการคำนวณผลเดียวกัน

แนวทางและตัวอย่างของสูตรอาร์เรย์

สำหรับข้อมูลเพิ่มเติมอ่าน


INDIRECTเป็นฟังก์ชันระเหยซึ่งทำให้สมุดงานคำนวณซ้ำทุกครั้งที่มีการเปลี่ยนแปลงเซลล์ มีวิธี (CSE หรืออื่น ๆ ) เพื่อเติมจำนวนแถวที่ระบุโดยไม่ใช้INDIRECTหรือไม่?
feetwet

0

นี่คือการทำงานเริ่มต้นของ Excel ถ้าคุณป้อนสูตรในคอลัมน์ว่างเปล่าในตาราง เพื่อให้ได้สิ่งนี้คุณต้องแทรกตาราง :

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


ขอบคุณที่ใช้งานได้ แต่ไม่เคยใช้ Table มาก่อนฉันได้เห็นผลกระทบนี้ในแต่ละเซลล์ ฉันเชื่อว่ามันต้องเป็นการตั้งค่าการป้อนอัตโนมัติบางอย่าง
RipperDoc

มีสองวิธีที่คุณสามารถทำได้อย่างรวดเร็วมาก: 1. ป้อนสูตรจากนั้นดับเบิลคลิกที่เครื่องหมาย "+" เล็ก ๆ เมื่อคุณเลื่อนเมาส์ไปที่มุมล่างขวาของเซลล์ 2. เลือกช่วงเต็มและป้อนสูตรด้วย Ctrl-Enter . แต่ไม่มีตัวเลือกใดเป็น "ป้อนอัตโนมัติจริง" เหมือนในตาราง ค่อนข้างมั่นใจว่ามันไม่ได้อยู่ (ยกเว้นกรณีที่กำหนดเองที่สร้างขึ้นใน VBA)
ปีเตอร์อัลเบิร์

0

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


0

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


0

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


นี่คือคำตอบสำหรับปัญหาที่แตกต่างและไม่ตอบคำถามตามที่ถาม
DavidPostill

0

ฉันมีปัญหานี้ที่ตารางหยุดการป้อนอัตโนมัติ ... ฉันไม่รู้ว่าทำไมหยุดทำงานทันที แต่นี่คือการแก้ไข:

  • เพิ่มสูตรของคุณไปยังคอลัมน์ที่เหมาะสมในแถวสุดท้ายของตารางและกด enter
  • คลิกป๊อปอัปสี่เหลี่ยมเล็ก ๆ ที่ชื่อfxแล้วเลือกOverwrite all cells in this column with this formula
  • เพิ่มแถวใหม่ลงในตารางของคุณซึ่งตอนนี้ควรมีการเติมสูตรอัตโนมัติ

มันใช้งานได้ดีสำหรับฉันหวังว่ามันจะช่วยให้คนอื่น


0

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


อ่าน"ทำไมฉันต้องมี 50 ชื่อเสียงในการแสดงความคิดเห็น"เพื่อให้แน่ใจว่าคุณเข้าใจว่าคุณสามารถเริ่มแสดงความคิดเห็นได้อย่างไร
Pimp Juice IT

เมื่อต้องการเขียนบางอย่างลงบนกระดาษให้เลี้ยวขวาและWright Brothers ที่ควรจะบินเครื่องบินลำแรก
Pimp Juice IT

เรียนรู้สิ่งนี้เป็นพิธีทาง
สกอตต์

-2

คุณสามารถทำได้โดยใช้ฟังก์ชัน Justify ภายใต้การเติมแบบหล่นลง มันอยู่ใต้แท็บหน้าแรกในฟังก์ชั่นการแก้ไข บนของฉันมันอยู่ด้านขวาของแถบเครื่องมือ


สนใจที่จะเพิ่มรายละเอียดว่าเกิดอะไรขึ้น? จากสิ่งนี้มันไม่ได้ทำตามที่ OP ร้องขอ
zagrimsan

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

วิธีนี้ทำให้แถวที่คุณกำลังป้อนข้อมูลเข้าสู่การจัดรูปแบบเหมือนกับแถวที่อยู่ด้านบน
XLRookie

คุณไม่สามารถแทรกรูปลงในความคิดเห็น แต่คุณสามารถตอบได้ อย่างไรก็ตามฉันทดสอบสิ่งนี้และดูเหมือนว่าฉันไม่จำเป็นต้องเติม -> Justify เพื่อให้การเติมอัตโนมัติเกิดขึ้น (ลองด้วยตัวคุณเองโดยปล่อยให้ขั้นตอนการปรับเป็นไปตามขั้นตอนที่คุณอธิบายไว้) ฟังก์ชั่นเติมอัตโนมัติใน Excel ซึ่งมีการกล่าวถึงที่นี่เป็นสาเหตุของผลที่ได้ไม่ใช่การให้เหตุผล
zagrimsan

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