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

วิธีคัดลอกและวางเฉพาะเซลล์ที่ไม่ว่างใน Excel

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

คัดลอกและวางเฉพาะเซลล์ที่ไม่ว่างเปล่าด้วยคำสั่ง Go To Special

คัดลอกและวางเฉพาะเซลล์ที่ไม่ว่างด้วยคุณสมบัติตัวกรอง

คัดลอกและวางเฉพาะเซลล์ที่ไม่ว่างเปล่าด้วย Array Formula

คัดลอกและวางเฉพาะเซลล์ที่ไม่ว่างด้วยรหัส VBA

คัดลอกและวางเฉพาะเซลล์ที่ไม่ว่างด้วย Kutools for Excel ความคิดที่ดี 3


ลูกศรสีฟ้าฟองขวา คัดลอกและวางเฉพาะเซลล์ที่ไม่ว่างเปล่าด้วยคำสั่ง Go To Special

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

1. เลือกรายการข้อมูลที่คุณต้องการใช้

doc-copy-onblanks1

2. จากนั้นคลิก หน้าแรก > ค้นหาและเลือก > ไปที่พิเศษดูภาพหน้าจอ:

doc-copy-onblanks1

3. ใน ไปที่พิเศษ กล่องโต้ตอบตรวจสอบ ค่าคงที่ ตัวเลือกดูภาพหน้าจอ:

doc-copy-onblanks1

4. จากนั้นคลิก OKและเฉพาะเซลล์ค่าเท่านั้นที่ถูกเลือกในรายการ

doc-copy-onblanks1

5. จากนั้นคัดลอกและวางข้อมูลไปยังตำแหน่งที่คุณต้องการ และมีการวางเฉพาะค่าเซลล์ที่ไม่ว่างเปล่าเท่านั้น ดูภาพหน้าจอ:

doc-copy-onblanks1

หมายเหตุ: วิธีนี้ใช้ได้กับค่าคงที่เท่านั้นไม่ได้ใช้กับเซลล์สูตร


ลูกศรสีฟ้าฟองขวา คัดลอกและวางเฉพาะเซลล์ที่ไม่ว่างด้วยคุณสมบัติตัวกรอง

พื้นที่ ตัวกรอง คุณลักษณะนี้สามารถช่วยคุณกรองเซลล์ที่ไม่ว่างก่อนจากนั้นคุณสามารถคัดลอกและวางลงในเซลล์อื่นได้ตามที่คุณต้องการ

2. คลิก ข้อมูล > ตัวกรองดูภาพหน้าจอ:

doc คัดลอกเฉพาะ nonblanks6

3. จากนั้นคลิกปุ่มดรอปดาวน์ที่มุมขวาของเซลล์ในรายการที่เลือกและยกเลิกการเลือก ช่องว่าง ภายใต้เมนูแบบเลื่อนลง ดูภาพหน้าจอ:
doc-copy-onblanks1

4. จากนั้นคลิก OKเซลล์ที่ไม่ว่างทั้งหมดจะถูกกรองออกตามภาพหน้าจอต่อไปนี้:

doc-copy-onblanks1

5. ในที่สุดคุณสามารถคัดลอกข้อมูลที่กรองแล้วและวางลงในตำแหน่งใดก็ได้ที่คุณต้องการ

หมายเหตุ: ทั้งค่าและสูตรจะมีผลโดยใช้วิธีนี้


เลือกเซลล์ที่ไม่ว่างพร้อมกัน

คลิกเพื่อทดลองใช้ฟีเจอร์เต็มรูปแบบฟรีใน 30 วัน!
doc kutools เลือกเซลล์ที่ไม่ว่าง

ลูกศรสีฟ้าฟองขวา คัดลอกและวางเฉพาะเซลล์ที่ไม่ว่างเปล่าด้วย Array Formula

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

1. นอกจากข้อมูลของคุณแล้วให้ป้อนสูตรต่อไปนี้ลงในเซลล์ว่าง:

=LOOKUP("zzzzz",CHOOSE({1,2},"",INDEX(A:A,SMALL(IF($A$1:$A$15<>"",ROW($A$1:$A$15)),ROWS($B$1:B1)))))

doc-copy-onblanks1

หมายเหตุ: ในสูตรข้างต้น A1: A15 คือรายการข้อมูลที่คุณต้องการใช้คุณสามารถเปลี่ยนได้ตามความต้องการของคุณ

2. จากนั้นกด Shift + Ctrl + Enter คีย์เข้าด้วยกันจากนั้นเลือกเซลล์ B1 แล้วลากจุดจับเติมไปยังช่วงที่คุณต้องการให้มีสูตรนี้จากนั้นค่าของเซลล์ที่ไม่ว่างทั้งหมดจะถูกแยกออกมา ดูภาพหน้าจอ:

doc-copy-onblanks1

3. เนื่องจากเป็นสูตรเมื่อคุณคัดลอกไปยังที่อื่นคุณควรคัดลอกและวางเป็นค่า

หมายเหตุ: สูตรนี้ใช้ได้สำหรับค่าคงที่เท่านั้นไม่ได้ใช้กับเซลล์สูตร


ลูกศรสีฟ้าฟองขวา คัดลอกและวางเฉพาะเซลล์ที่ไม่ว่างด้วยรหัส VBA

หากคุณสนใจโค้ด VBA คุณสามารถรันโค้ดต่อไปนี้เพื่อทำงานนี้ให้เสร็จ

1. กด ALT + F11 และจะเปิดไฟล์ หน้าต่าง Microsoft Visual Basic for Applications.

2. คลิก สิ่งที่ใส่เข้าไป > โมดูลและวางรหัสต่อไปนี้ในไฟล์ หน้าต่างโมดูล.

รหัส VBA: คัดลอกและวางเฉพาะเซลล์ที่ไม่ว่างใน Excel

Sub PasteNotBlanks()
'Update 20140325
Dim rng As Range
Dim InputRng As Range, OutRng As Range
xTitleId = "KutoolsforExcel"
Set InputRng = Application.Selection
Set InputRng = Application.InputBox("Range :", xTitleId, InputRng.Address, Type:=8)
If InputRng.Columns.Count > 1 Then
    MsgBox "Please select one column."
    Exit Sub
End If
Set OutRng = Application.InputBox("Out put to (single cell):", xTitleId, Type:=8)
InputRng.SpecialCells(xlCellTypeConstants).Copy Destination:=OutRng.Range("A1")
End Sub

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

doc-copy-onblanks1

4. จากนั้นคลิก OKกล่องข้อความแจ้งอีกอันจะปรากฏขึ้นเพื่อให้คุณเลือกเซลล์ที่จะใส่ข้อมูล

doc-copy-onblanks1

5. คลิก OK เพื่อสิ้นสุดรหัสนี้และมีการวางเฉพาะค่าเซลล์ที่ไม่ว่างลงในตำแหน่งที่คุณระบุ

หมายเหตุ: รหัสนี้ใช้ได้กับค่าคงที่เท่านั้น


ลูกศรสีฟ้าฟองขวา คัดลอกและวางเฉพาะเซลล์ที่ไม่ว่างด้วย Kutools for Excel

มีวิธีใดที่ง่ายกว่าข้างต้นอีกไหม? แน่นอน, Kutools สำหรับ Excel's เลือก Nonblank Cellยูทิลิตี้สามารถช่วยคุณเลือกเซลล์ที่ไม่ว่างก่อนจากนั้นคัดลอกและวาง

Kutools สำหรับ Excel, ที่มีมากกว่า 300 ฟังก์ชั่นที่มีประโยชน์ทำให้งานของคุณง่ายขึ้น 

หลังจาก ติดตั้งฟรี Kutools สำหรับ Excel โปรดทำดังนี้:

1. เลือกช่วงเซลล์แล้วคลิก Kutools > เลือก > เลือก Nonblank Cells. ดูภาพหน้าจอ:
doc เลือกเซลล์ที่ไม่ว่าง 2

2. จากนั้นเลือกเซลล์ที่ไม่เป็นช่องว่างให้กด Ctrl + C เพื่อคัดลอกจากนั้นไปที่เลือกเซลล์ที่คุณต้องการส่งออกผลลัพธ์ที่กำหนดให้กด Ctrl + V เพื่อวางเซลล์ที่ไม่ว่างที่เลือก ดูภาพหน้าจอ:
doc เลือกเซลล์ที่ไม่ว่าง 3

ลูกศรสีฟ้าฟองขวา คัดลอกและวางเซลล์ที่ไม่ว่างเปล่าเท่านั้น

Kutools for Excel: 300+ ฟังก์ชันที่คุณต้องมีใน Excel ทดลองใช้ฟรี 30 วันจากที่นี่

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

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

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

รายละเอียด


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

  • เปิดใช้งานการแก้ไขและอ่านแบบแท็บใน Word, Excel, PowerPoint, ผู้จัดพิมพ์, Access, Visio และโครงการ
  • เปิดและสร้างเอกสารหลายรายการในแท็บใหม่ของหน้าต่างเดียวกันแทนที่จะเป็นในหน้าต่างใหม่
  • เพิ่มประสิทธิภาพการทำงานของคุณ 50% และลดการคลิกเมาส์หลายร้อยครั้งให้คุณทุกวัน!
Comments (11)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
=Filter(A:A,A:A<>"")
This comment was minimized by the moderator on the site
Array formula Works fine on text
but don't work on numbers.
This comment was minimized by the moderator on the site
Not working on Numbers !!!
Works fine on text !!!
Please guide
This comment was minimized by the moderator on the site
Thanks for the great tips! I am using the Find & Select feature, but it's taking a long time because my spreadsheet contains 70 columns and 450k rows. Is there a way to fasten the process?
This comment was minimized by the moderator on the site
When i select and copy only non-blank cells, how can i then paste it somewhere else with keeping the same empty ranges between them?
This comment was minimized by the moderator on the site
These tools delete the blank cells and compress the row. I want the format to be retained, including the spaces, but I do not want empty cells to overwrite cells containing existing data. i.e. I want to add the new, copied, cells in a column onto an existing column.
This comment was minimized by the moderator on the site
Hi #abc I have used your formula =LOOKUP("zzzzz",CHOOSE({1,2},"",INDEX('List of Overdue items'!A:A,SMAL L(IF('List of Overdue items'!A$1:A$15 00"",ROW('List of Overdue items'!A$1:A$15 00)),ROWS('List of Overdue items'!B$1:B2)) ))) I have data in one Worksheet and want to copy that data into another worksheet (same doc). Can you help?
This comment was minimized by the moderator on the site
Is there a way to make the macro work when referencing between different sheets?
This comment was minimized by the moderator on the site
This formula is absolutely amazing, thank you. Unfortunately it breaks when trying to copy from another sheet, is there a workaround?
This comment was minimized by the moderator on the site
correct the references when using the formula between different sheets. It does work. =LOOKUP("zzzzz",CHOOSE({1,2},"",INDEX('List of Overdue items'!A:A,SMALL(IF('List of Overdue items'!A$1:A$1500"",ROW('List of Overdue items'!A$1:A$1500)),ROWS('List of Overdue items'!B$1:B2)))))
This comment was minimized by the moderator on the site
thanks for the super formula: =LOOKUP("zzzzz",CHOOSE({1,2},"",INDEX(A:A,SMALL(IF($A$1:$A$15"",ROW($A$1:$A$15)),ROWS($B$1:B1)))))
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations