แป้นพิมพ์ลัด Excel เพื่อคัดลอก / เติมสำหรับเซลล์ทั้งหมดที่มีเซลล์ติดกันหรือไม่


45

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

คำตอบ:


36

ฉันให้สองวิธีในการทำสิ่งที่คุณต้องการให้สำเร็จ น่าเสียดายที่ทั้งสองวิธีมีข้อแม้ของตัวเองเนื่องจาก Excel ไม่มีแป้นพิมพ์ลัดแบบ all-in-one สำหรับป้อนอัตโนมัติ ฉันขอแนะนำให้คุณลองใช้ทั้งสองวิธีแล้วกำหนดว่าวิธีไหนดีที่สุดสำหรับคุณ นอกเหนือจากสองวิธีนี้ฉันไม่เชื่อว่าคุณสามารถบรรลุสิ่งที่คุณต้องการโดยไม่ต้องใช้มาโครหรือโมดูลเพิ่มเข้า หากคุณไปเส้นทางมาโครAutoFillวิธีบนRangeวัตถุใด ๆควรเป็นทุกอย่างที่คุณต้องการ


วิธีที่ 1 (สลับกัน แต่ใช้ได้โดยไม่มีการโต้ตอบกับเมาส์)

อีกวิธีหนึ่งในการบรรลุเป้าหมายนี้คือการใช้การผสมผสานของทางลัดการเติมลงและการเลือกทั้งหมดที่อยู่ในช่วง หลังจากที่คุณป้อนข้อมูลในเซลล์กดCtrl+Shift+Endเพื่อเลือกจากเซลล์ปัจจุบันไปยังจุดสิ้นสุดของช่วงที่จะถูกเติมโดยอัตโนมัติ จากนั้นกดCtrl+Dเพื่อ "เติม" ลงในช่วงทั้งหมดจากเซลล์ด้านบน

วิธีที่ 2 (วิธีที่ฉันชอบใช้เมาส์โต้ตอบครั้งเดียว)

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

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


โปรดทราบว่าวิธีแรกจะมาพร้อมกับข้อแม้เล็กน้อย - มุมมอง / เคอร์เซอร์ของคุณจะย้ายไปที่ด้านล่างของสเปรดชีต (ซึ่งไม่ได้เกิดขึ้นกับCtrl+Yวิธีการ) คุณสามารถกดHomeปุ่มเพื่อเลื่อนเคอร์เซอร์กลับขึ้นอย่างรวดเร็ว


วิธีที่สองนั้นสมบูรณ์แบบสำหรับฉันช่วยฉันกรอกข้อมูลใน 123,798 แถวอย่างรวดเร็ว ขอบคุณ!
Joshua Walsh

9

ฉันยังอยากรู้เกี่ยวกับปุ่มลัดที่สั้นกว่าสำหรับ Autofill Handle แต่มันก็ใช้งานได้:

ลำดับคีย์สำหรับ Fill Series

เลือกช่วงทั้งหมดที่คุณต้องการขยายซีรี่ส์รวมถึงเซลล์ว่างและ "เมล็ดพันธุ์" (เซลล์ที่มีค่าเริ่มต้นที่จะใช้ชุดป้อนอัตโนมัติ)

กดALT>> H>> F>> I>> S>> Alt+ >>FEnter

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

การสร้าง / แก้ไขรายการที่กำหนดเองของคุณกดAlt+ Fให้ไปที่ได้รับความนิยมจากนั้นคลิกที่แก้ไขรายการที่กำหนดเอง รายการที่กำหนดเองทำหน้าที่เป็นฐานสำหรับการเติมข้อมูลอัตโนมัติในเซลล์

เติมลง

Ctrl+ D

บันทึก

คีย์ผสมเหล่านี้ใช้ได้กับภาษาอังกฤษของ Excel เท่านั้น ถ้าคุณใช้ Excel ในภาษาอื่น ๆ ให้ค้นหาการผสมผสานที่สอดคล้องกันที่สำคัญสำหรับภาษาของคุณใน: บ้านริบบิ้น> เติม (ในการแก้ไขส่วนริบบิ้น)> ซีรีส์ ... ในกล่องโต้ตอบเลือกป้อนอัตโนมัติแล้วกด Enter การผสมคีย์การเติมอาจแตกต่างกัน ( Ctrl+ D)


1
^ _ ^ ถ้าคุณเพิ่มชัค Norris ขึ้น - ลง - ลง - ลงจะปรากฏ โดยส่วนตัวแล้วฉันแทบจะไม่ใช้ตัวจัดการการเติมมากนักและฉันก็ต้องพึ่งพาตารางข้อมูลส่วนที่เหลือเพื่อไปไหนมาไหนหรือในกล่องชื่อ ตัวอย่างเช่นหากฉันต้องการคัดลอกสูตรจาก A1 ถึง 200 เซลล์ด้านล่างฉันจะพิมพ์ "A200" ลงในกล่องชื่อกด Enter จากนั้นกด Ctrl + Shift + Up แล้วกด Ctrl + D
Ellesa

2
  1. เลือกช่วงที่คุณต้องการเติมข้อมูลรวมถึงบรรทัด / เซลล์แรกที่มีข้อมูลในบรรทัด / เซลล์สุดท้ายที่มีข้อมูลสิ้นสุด
  2. กดCtrl+ G(ไปที่)
  3. ไปที่พิเศษและเลือก "ว่าง" จากตัวเลือกที่มี กดตกลง
  4. ในเซลล์ที่คุณอยู่ในขณะนี้ (หลังจากที่เลือกเซลล์ว่างในความโกรธ) ใส่สูตรหมายถึงเซลล์ก่อนหน้านี้ "= + ลูกศรขึ้น" (Say ถ้าคุณอยู่ในเซลล์ A3 type = A2) และกด+CtrlEnter
  5. แปลงสูตรข้างต้นเป็นค่าโดยทำการคัดลอกและวางเลือกทั้งช่วงอีกครั้ง

ทางออกที่ดีมากและมีประสิทธิภาพมากที่สุดของพวง
Forrest R. Stevens

2

จนถึงตอนนี้ทางออกที่ดีที่สุดของฉันคือ:

  1. CTRL-C ของเซลล์ต้นทาง

  2. CTRL-G (ไปที่)ป้อนเซลล์สุดท้ายในคอลัมน์

  3. SHIFT-ENTER (เน้นส่วนทั้งหมด)

  4. ENTER (วางค่าในเซลล์ทั้งหมด)

ทำงานร่วมกับ Excel 2007/2013/365


0

แป้นพิมพ์ลัดที่สั้นลงก่อนปี 2010 ที่จะเปิดกล่องโต้ตอบ Series (Windows) ที่กล่าวถึงในคำตอบของ @ Ellesa คือ:

ALT, E, I,S

มันสั้นลงเพียงการกดแป้นเดียว แต่ก็ยังเป็นจังหวะพิเศษอย่างไรก็ตาม


0

สำหรับสิ่งที่คุ้มค่ากับ Mac ฉันใช้ Keyboard Maestro เพื่อรันชุดคำสั่งที่สำคัญสำหรับสิ่งนี้ดังนั้นฉันจึงไม่ต้องใช้เมาส์

ลำดับคือ:

  1. ลูกศรลง (ทั้งสองคำสั่งอนุญาตให้คัดลอกทำงานได้อย่างถูกต้อง)
  2. ลูกศรขึ้น
  3. Command + C
  4. ลูกศรซ้าย (เปลี่ยนเป็นลูกศรขวาเพื่ออ้างอิงไปทางขวา)
  5. คำสั่ง + Shift + ลูกศรลง
  6. ตัวเลือก + แท็บ (เปลี่ยนเป็นตัวเลือก + เปลี่ยน + แท็บหากคุณอ้างอิงทางด้านขวาในขั้นตอนที่ 4)
  7. Command + V

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

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


0

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

แม้ว่ามันอาจจะเร็วกว่าที่จะดับเบิลคลิก ขึ้นอยู่กับความชอบ

ตัวอย่างเช่นฉันกำลังทำ VLOOKUP และค่าการค้นหาแรกอยู่ในเซลล์ B2 1. ฉันป้อนสูตรใน A2 2. จากนั้นฉันก็คัดลอกเซลล์ A2 (Ctrl + c) 3. จากนั้นเริ่มใน A3 ฉันเน้นช่วงที่ฉันต้องการเติมสูตรใน (Ctrl + Shift + Down) หรือ (Shift + Down) 4. จากนั้นฉันวาง (ctrl + V)

เมื่อฉันทำเช่นนี้สูตรในเซลล์ A3 มีค่าการค้นหาที่ B3, A5 มี B5 เป็นต้นคุณอาจต้องการตรวจสอบเฉพาะจุดเพื่อให้แน่ใจว่าสูตรจะปรับในครั้งแรกที่คุณทำ


0

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

เลือกเซลล์ที่คุณต้องการดับเบิลคลิกที่จุดจับเติม

แล้ว:

  1. กดLeftเพื่อเปลี่ยนเป็นคอลัมน์พร้อมข้อมูลอื่น ๆ
  2. กดCtrl+Downเพื่อไปยังจุดสิ้นสุดของข้อมูล
  3. กดRightเพื่อกลับไปที่คอลัมน์ที่จะบรรจุ
  4. กดCtrl+Shift+Upเพื่อเลือกสูงสุดเซลล์ด้วยค่าการเติม
  5. กดCtrl+Dเพื่อเติม (ลง)

ปุ่มที่กดจะเหมือนกันเสมอดังนั้นคุณสามารถใส่มันลงในแมโครคีย์บอร์ด

ลำดับที่จะเป็นสิ่งเดียวกันอีก: Left, End, Down, Right, End, ,Shift+UpCtrl+D


0

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

Sub AutoFill_Column()

Selection.AutoFill Destination:=Range(Selection, Cells(ActiveCell.SpecialCells(xlLastCell).Row, Selection.Column))

End Sub

สามารถทำเช่นเดียวกันสำหรับการป้อนอัตโนมัติแถว (โดยยึดตามข้อมูลที่อยู่ติดกันเหนือแถว) ด้วย:

Sub Autofill_Row()

Selection.AutoFill Destination:=Range(Selection, Cells(Selection.Row, ActiveCell.Offset(-1, 0).End(xlToRight).Column))

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