คำถามนี้มีคำตอบอยู่ที่นี่แล้ว:
- Excel 2007 ไขว้ / รวมหลายแถวเป็น 2 คำตอบเดียว
สวัสดีฉันกำลังพยายามปรับ VBA ที่ยอดเยี่ยมที่โพสต์ก่อนหน้านี้เพื่ออ่านข้อมูลและนำทุกบรรทัดที่มี ID เดียวกันในคอลัมน์ 1 และเพิ่มทั้งหมดลงในหนึ่งแถวสำหรับแต่ละรายการ พยายามรับจากสิ่งนี้:
สำหรับสิ่งนี้
แต่โค้ดที่ดัดแปลงด้านล่างจะรวมแถว 2 แถวเข้าด้วยกันเท่านั้นแม้ว่าจะมีมากกว่าสองแถวที่มี id เดียวกันในคอลัมน์ 1
Sub CombineInvoices()
Dim currentRow As Long
Dim currentCol As Long
Dim LastRow As Long
LastRow = Cells(Rows.Count, 1).End(xlUp).Row
currentCol = 4
For currentRow = LastRow To 2 Step -1
If Cells(currentRow, 1) = Cells(currentRow - 1, 1) Then
Range(Cells(currentRow, 1), Cells(currentRow, 4)).Copy Destination:=Range(Cells(currentRow - 1, currentCol + 1), Cells(currentRow - 1, currentCol + 4))
Rows(currentRow).EntireRow.Delete
End If
Next
currentCol = currentCol + 4
End Sub
ความช่วยเหลือทั้งหมดได้รับสุดซึ้งจริงๆ
ขอบคุณ Mate ยังรวมสองแถวเท่านั้น แต่เพิ่ม 12 ช่องว่างเซลล์ระหว่างสองรายการสำหรับหมายเลขใบแจ้งหนี้ 12345 เพิ่มรูปภาพของผลลัพธ์ด้านบน
—
Pbot
คำถามนี้หมายถึง“ … VBA ที่ยอดเยี่ยมที่โพสต์ก่อนหน้านี้” ฉันเดาว่าหมายถึงการรวมค่าจากหลายแถวเข้าในแถวเดียวใน Excel ได้อย่างไร อิงจากความคล้ายคลึงกันในชื่อเรื่อง (และความคล้ายคลึงกันในเนื้อหาที่คลุมเครือ)
—
สกอตต์
currentCol = currentCol + 4
อยู่ในสถานที่ที่ไม่ถูกต้องคุณต้องวางไว้ด้านบนEnd IF