ไปยังเนื้อหาหลัก

วิธีคัดลอกการเลือกหรือช่วงหลายรายการใน Excel

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


คัดลอกช่วงที่เลือกหลายรายการด้วยคลิปบอร์ด

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

1. คลิก หน้าแรก > doc คัดลอกหลายช่วง 09 ใน คลิปบอร์ด จัดกลุ่มเพื่อแสดงไฟล์ คลิปบอร์ด ขนมปัง.. ดูภาพหน้าจอ:

2. จากนั้นคัดลอกช่วงที่เลือกที่คุณต้องการทีละรายการ ในเวลาเดียวกันช่วงที่คัดลอกได้ปรากฏในไฟล์ คลิปบอร์ด ขนมปัง. ดูภาพหน้าจอด้านบน:

3. เลือกเซลล์แรกของช่วงปลายทางที่คุณจะวางช่วงที่คัดลอกทั้งหมดแล้วคลิก วางทั้งหมด ปุ่มใน คลิปบอร์ด บานหน้าต่าง

จากนั้นช่วงที่คัดลอกทั้งหมดจะถูกวางลงในช่วงปลายทางที่ระบุ

รวมการเลือกหลายอย่างจากแผ่นงาน / สมุดงานจำนวนมากเป็นแผ่นงาน / สมุดงานเดียวได้อย่างง่ายดาย

อาจเป็นเรื่องน่าเบื่อที่จะรวมแผ่นงานหลายสิบแผ่นจากสมุดงานต่างๆไว้ในแผ่นงานเดียว แต่ด้วย Kutools for Excel's รวม (แผ่นงานและสมุดงาน) ยูทิลิตี้คุณสามารถทำได้ด้วยการคลิกเพียงไม่กี่ครั้ง!


ad หนังสือรวมชีท 1

Kutools สำหรับ Excel - เพิ่มประสิทธิภาพ Excel ด้วยเครื่องมือที่จำเป็นมากกว่า 300 รายการ เพลิดเพลินกับฟีเจอร์ทดลองใช้ฟรี 30 วันโดยไม่ต้องใช้บัตรเครดิต! Get It Now

คัดลอกช่วงที่เลือกหลายรายการด้วยรหัส VBA

ด้วยรหัส VBA คุณยังสามารถคัดลอกช่วงที่เลือกหลาย ๆ ช่วงและวางลงในแผ่นงานอื่น ๆ

1. ถือ Ctrl คีย์และเลือกหลายช่วงที่ไม่อยู่ติดกันที่คุณต้องการใช้

2. กด อื่น ๆ + F11 ในเวลาเดียวกันเพื่อเปิดไฟล์ Microsoft Visual Basic สำหรับแอปพลิเคชัน หน้าต่างคลิก สิ่งที่ใส่เข้าไป > โมดูลและใส่รหัสต่อไปนี้ลงในโมดูล:

Option Explicit Sub CopyMultipleSelection () Dim SelAreas () As Range Dim PasteRange As Range Dim UpperLeft As Range Dim NumAreas As Integer, i As Integer Dim TopRow As Long, LeftCol As Integer Dim RowOffset As Long, ColOffset As Integer Dim NonEmptyCellCount As Integer 'Exit หากไม่ได้เลือกช่วงหาก TypeName (Selection) <> "Range" จากนั้น MsgBox "เลือกช่วงที่จะคัดลอกอนุญาตให้เลือกได้หลายรายการ" ออกจาก Sub End ถ้า 'จัดเก็บพื้นที่เป็น Range object แยกกัน NumAreas = Selection.Areas.Count ReDim SelAreas (1 ถึง NumAreas) สำหรับ i = 1 To NumAreas Set SelAreas (i) = Selection.Areas (i) Next' กำหนดด้านซ้ายบน เซลล์ในการเลือกหลายรายการ TopRow = ActiveSheet.Rows.Count LeftCol = ActiveSheet.Columns.Count For i = 1 ถึง NumAreas ถ้า SelAreas (i) .Row <TopRow จากนั้น TopRow = SelAreas (i) .Row ถ้า SelAreas (i) .Column <LeftCol Then LeftCol = SelAreas (i) .Column Next Set UpperLeft = Cells (TopRow, LeftCol) 'Get the paste address On Error Resume Next Set PasteRange = Application.InputBox _ (Prompt: = "ระบุเซลล์ด้านซ้ายบนสำหรับการวาง range: ", _ Title: =" Copy Mutliple Selection ", _ Type: = 8) On Error GoTo 0 'Exit if Cancel ถ้า TypeName (PasteRange) <>" Range "แล้ว Exit Sub' ตรวจสอบให้แน่ใจว่าเฉพาะเซลล์ด้านซ้ายบนเท่านั้น ใช้ Set PasteRange = PasteRange.Range ("A1") 'ตรวจสอบช่วงการวางสำหรับข้อมูลที่มีอยู่ NonEmptyCellCount = 0 สำหรับ i = 1 ถึง NumAreas RowOffset = SelAreas (i) .Row - TopRow ColOffset = Sel พื้นที่ (i) คอลัมน์ - LeftCol NonEmptyCellCount = NonEmptyCellCount + _ Application.CountA (ช่วง (PasteRange.Offset (RowOffset, ColOffset), _ PasteRange.Offset (RowOffset + SelAreas (i) .Rows.Count - 1, _ ColOffset + SelAreas (i) .Columns.Count - 1))) ถัดไป i 'หากช่วงการวางไม่ว่างเปล่าเตือนผู้ใช้ถ้า NonEmptyCellCount <> 0 แล้ว _ ถ้า MsgBox ("เขียนทับข้อมูลที่มีอยู่?", vbQuestion + vbYesNo, _ "คัดลอกการเลือกหลายรายการ ") <> vb ใช่แล้วออกจาก Sub 'คัดลอกและวางแต่ละพื้นที่สำหรับ i = 1 ถึง NumAreas RowOffset = SelAreas (i) .Row - TopRow ColOffset = SelAreas (i) .Column - LeftCol SelAreas (i) .Copy PasteRange.Offset ( RowOffset, ColOffset) ต่อไป i End Sub

3. จากนั้นคลิกปุ่ม วิ่ง ปุ่มเพื่อเรียกใช้รหัส

4. และตอนนี้โปรดระบุเซลล์เพื่อวางช่วงในช่องเปิด คัดลอกตัวเลือกหลายรายการ กล่องโต้ตอบแล้วคลิกไฟล์ OK ปุ่ม. ดูภาพหน้าจอ:


คัดลอกช่วงที่เลือกได้อย่างรวดเร็วจากแผ่นงานเดียว

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

Kutools สำหรับ Excel - เพิ่มประสิทธิภาพ Excel ด้วยเครื่องมือที่จำเป็นมากกว่า 300 รายการ เพลิดเพลินกับฟีเจอร์ทดลองใช้ฟรี 30 วันโดยไม่ต้องใช้บัตรเครดิต! Get It Now

1. เลือกช่วงที่คุณต้องการใช้ทีละรายการโดยไม่ต้องกดปุ่ม Ctrl จากนั้นคลิก Kutools > ช่วงการคัดลอก. ดูภาพหน้าจอ:

2. ใน คัดลอกหลายช่วง กล่องโต้ตอบตรวจสอบ ทั้งหมด ตัวเลือกจาก วางแบบพิเศษ ส่วนและคลิกปุ่ม ตกลงขutton ดูภาพหน้าจอด้านบน:

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

3. และระบุเซลล์เพื่อวางช่วงในกล่องพร้อมต์ต่อไปนี้แล้วคลิก OK ปุ่ม

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

คลิกที่นี่เพื่อดูข้อมูลเพิ่มเติมเกี่ยวกับยูทิลิตี้ Copy Multiple Ranges       

Kutools สำหรับ Excel - เพิ่มประสิทธิภาพ Excel ด้วยเครื่องมือที่จำเป็นมากกว่า 300 รายการ เพลิดเพลินกับฟีเจอร์ทดลองใช้ฟรี 30 วันโดยไม่ต้องใช้บัตรเครดิต! Get It Now


คัดลอกหลายช่วงจากแผ่นงาน / สมุดงานจำนวนมาก

Kutools for Excel ให้อีก รวมแผ่นงาน ยูทิลิตี้ในการคัดลอกหลายช่วงจากหลายแผ่นงานหรือสมุดงานจำนวนมากได้อย่างง่ายดายใน Excel กรุณาดำเนินการดังต่อไปนี้:

Kutools สำหรับ Excel - เพิ่มประสิทธิภาพ Excel ด้วยเครื่องมือที่จำเป็นมากกว่า 300 รายการ เพลิดเพลินกับฟีเจอร์ทดลองใช้ฟรี 30 วันโดยไม่ต้องใช้บัตรเครดิต! Get It Now

1 คลิก Kutools พลัส > รวมกัน.

2. ในกล่องโต้ตอบเปิด Combine Worksheets - ขั้นตอนที่ 1 จาก 3 โปรดตรวจสอบไฟล์ รวมแผ่นงานหลายแผ่นจากสมุดงานเป็นแผ่นงานเดียว ตัวเลือกและคลิกที่ ถัดไป ปุ่ม

3. ในกล่องโต้ตอบรวมแผ่นงาน - ขั้นตอนที่ 2 จาก 3 โปรดทำดังนี้:

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

Kutools สำหรับ Excel - เพิ่มประสิทธิภาพ Excel ด้วยเครื่องมือที่จำเป็นมากกว่า 300 รายการ เพลิดเพลินกับฟีเจอร์ทดลองใช้ฟรี 30 วันโดยไม่ต้องใช้บัตรเครดิต! Get It Now

4. จากนั้นกล่องโต้ตอบ Kutools for excel จะปรากฏขึ้นและขอให้บันทึกสถานการณ์การรวมกัน กรุณาคลิกที่ไฟล์ ใช่ หรือ ไม่ ปุ่มตามที่คุณต้องการ

จนถึงขณะนี้มีการคัดลอกและวางช่วงที่ระบุทั้งหมดจากหลายแผ่นงานหรือสมุดงานลงในสมุดงานใหม่


Demo: คัดลอกช่วงที่เลือกหลาย ๆ ช่วงจากแผ่นงานเดียว

Demo: คัดลอกช่วงที่เลือกหลาย ๆ ช่วงจากสมุดงาน / แผ่นงานจำนวนมาก


Kutools สำหรับ Excel: เครื่องมือแสนสะดวกกว่า 300 รายการอยู่แค่เพียงปลายนิ้วสัมผัส! เริ่มทดลองใช้ฟรี 30 วันโดยไม่มีข้อจำกัดด้านฟีเจอร์ตั้งแต่วันนี้ Download Now!

สุดยอดเครื่องมือเพิ่มผลผลิตในสำนักงาน

คุณสมบัติยอดนิยม: ค้นหา เน้น หรือระบุรายการที่ซ้ำกัน   |  ลบแถวว่าง   |  รวมคอลัมน์หรือเซลล์โดยไม่สูญเสียข้อมูล   |   รอบโดยไม่มีสูตร ...
การค้นหาขั้นสูง: VLookup หลายเกณฑ์    VLookup หลายค่า  |   VLookup ข้ามหลายแผ่น   |   การค้นหาที่ไม่ชัดเจน ....
รายการแบบเลื่อนลงขั้นสูง: สร้างรายการแบบหล่นลงอย่างรวดเร็ว   |  รายการแบบหล่นลงขึ้นอยู่กับ   |  เลือกหลายรายการแบบหล่นลง ....
ผู้จัดการคอลัมน์: เพิ่มจำนวนคอลัมน์เฉพาะ  |  ย้ายคอลัมน์  |  สลับสถานะการมองเห็นของคอลัมน์ที่ซ่อนอยู่  |  เปรียบเทียบช่วงและคอลัมน์ ...
คุณสมบัติเด่น: กริดโฟกัส   |  มุมมองการออกแบบ   |   บาร์สูตรใหญ่    สมุดงานและตัวจัดการชีต   |  ห้องสมุดทรัพยากร (ข้อความอัตโนมัติ)   |  เลือกวันที่   |  รวมแผ่นงาน   |  เข้ารหัส/ถอดรหัสเซลล์    ส่งอีเมลตามรายการ   |  ซุปเปอร์ฟิลเตอร์   |   ตัวกรองพิเศษ (กรองตัวหนา/ตัวเอียง/ขีดทับ...) ...
ชุดเครื่องมือ 15 อันดับแรก12 ข้อความ เครื่องมือ (เพิ่มข้อความ, ลบอักขระ, ... )   |   50 + แผนภูมิ ประเภท (แผนภูมิ Gantt, ... )   |   40+ ใช้งานได้จริง สูตร (คำนวณอายุตามวันเกิด, ... )   |   19 การแทรก เครื่องมือ (ใส่ QR Code, แทรกรูปภาพจากเส้นทาง, ... )   |   12 การแปลง เครื่องมือ (ตัวเลขเป็นคำ, การแปลงสกุลเงิน, ... )   |   7 ผสานและแยก เครื่องมือ (แถวรวมขั้นสูง, แยกเซลล์, ... )   |   ... และอื่น ๆ

เพิ่มพูนทักษะ Excel ของคุณด้วย Kutools สำหรับ Excel และสัมผัสประสิทธิภาพอย่างที่ไม่เคยมีมาก่อน Kutools สำหรับ Excel เสนอคุณสมบัติขั้นสูงมากกว่า 300 รายการเพื่อเพิ่มประสิทธิภาพและประหยัดเวลา  คลิกที่นี่เพื่อรับคุณสมบัติที่คุณต้องการมากที่สุด...

kte แท็บ 201905


แท็บ Office นำอินเทอร์เฟซแบบแท็บมาที่ Office และทำให้งานของคุณง่ายขึ้นมาก

  • เปิดใช้งานการแก้ไขและอ่านแบบแท็บใน Word, Excel, PowerPoint, ผู้จัดพิมพ์, Access, Visio และโครงการ
  • เปิดและสร้างเอกสารหลายรายการในแท็บใหม่ของหน้าต่างเดียวกันแทนที่จะเป็นในหน้าต่างใหม่
  • เพิ่มประสิทธิภาพการทำงานของคุณ 50% และลดการคลิกเมาส์หลายร้อยครั้งให้คุณทุกวัน!
Comments (14)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Hi there,
Great code but wondered how I can paste values rather than just paste?
Thanks :)
This comment was minimized by the moderator on the site
Hi there,
Great post and the VBA code works perfectly. Is it possible to change the code to paste special > values? If so, how?
Thanks!
This comment was minimized by the moderator on the site
Hi. Nice code, works great. Is it possible to modify the code in a way such that it is possible to insert/paste the market row/ranges multiple times instead of just one time?
This comment was minimized by the moderator on the site
Hi Jacob,
Maybe this Insert Title Rows feature of Kutools for Excel can solve your problem.
https://www.extendoffice.com/product/kutools-for-excel/excel-insert-title-rows.html
This comment was minimized by the moderator on the site
Hi! How do I use the same VBA Code above but instead of simply pasting, I would like it to paste special for just the values. The table I am putting the values (constants) into is already formatted and with totals (formulas)
Thanks so much in advance!
This comment was minimized by the moderator on the site
Hi Katrina Manahan,

Please open the Microsoft Visual Basic for applications window, and create a new Module, just press CTRL + V to paste the VBA code directly. The sequence numbers before code won't be pasted.
This comment was minimized by the moderator on the site
Thanks for the code, works perfectly. This odd lack of function within Excel has stumped me many times in the past. It's normally quicker in the end to work around it, but in this case I have 4000 individually colour-coded cells so any work-around would have taken a long time, so I'm very grateful. Steve
This comment was minimized by the moderator on the site
Hi, Is it possible to adjust the code so that the copied cells can be pasted in another sheet? Now I get the error message "400" when I attempt this. I use Office 2010. Also, is it possible to copy so that empty lines are deleted? I have a big document and I copy some cells with hundreds of non-copied rows between them. This makes for a rather bulky output.
This comment was minimized by the moderator on the site
I found that if you have the Clipboard task plane open you can copy multiple rows simply using ctrl+C and paste them in order with crtl+V using Excel 2007.
This comment was minimized by the moderator on the site
Thank you SOOOOOO much - what a great site
This comment was minimized by the moderator on the site
Found above explanation of options to copy multiple ranges very helpful - thanks! I used the 'clipboard' option to copy multiple rows. Had to select each group of consecutive rows and copy it, move on and select next row or group of consecutive rows and copy it, etc.. But after this its easy, go to where you want to paste them, eg a new sheet, and click 'Paste all' from the Clipboard and all the rows are copied to there with out any gaps! Exactly what I wanted - thanks again!
This comment was minimized by the moderator on the site
I want to select the rows like 1, 5,6,10. so how can i copy these rows ???
This comment was minimized by the moderator on the site
In this case you can just select the rows and copy them as usual.
This comment was minimized by the moderator on the site
How can I copy cell a1, e5, g2, and so on.... (more than 1000 cells in same column) and paste them into b1, f5, h2 (right into the next column in same row.)
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations