Chèn dòng xen kẻ

Liên hệ QC

tranuyennhu2910

Thành viên mới
Tham gia
30/3/13
Bài viết
2
Được thích
0
Các bạn cho mình hỏi:

Mình có một dòng có chứa dữ liệu
Mình muốn insert dòng đó xen kẻ vào tất cả các hàng trong bảng dữ liệu của mình.
Có cách nào đơn giản không dùng đến VBA mà không phải ngồi insert từng dòng một không ạ? Vì mình chưa biết gì về VBA hết.
Làm như từ hình số 1 ra giống hình số 2 nhưng làm toàn bộ bảng dữ liệu í ạ.


Cám ơn các bạn nhiềuexcel.jpgexcel2.jpg
 
Các bạn cho mình hỏi:

Mình có một dòng có chứa dữ liệu
Mình muốn insert dòng đó xen kẻ vào tất cả các hàng trong bảng dữ liệu của mình.
Có cách nào đơn giản không dùng đến VBA mà không phải ngồi insert từng dòng một không ạ? Vì mình chưa biết gì về VBA hết.
Làm như từ hình số 1 ra giống hình số 2 nhưng làm toàn bộ bảng dữ liệu í ạ.


Cám ơn các bạn nhiềuView attachment 131520View attachment 131521

Dùng 1 cột phụ nhé. Đánh số thứ tự từ 1 đến hết. Sau đó copy cả bảng xuống. Tiếp theo là dùng lệnh sort để có kết quả như hình. Hy vọng bạn hiểu ý. Không hiểu thì pó tay với bạn rồi.
 
Em lụm được cái này trên mạng và xào lại chút xíu, anh Hải và các anh chị khác có thể chỉ cho em cách làm để giống yêu cầu của bài tập này được không ạ!? (Em cũng mới bập bẹ và căn bản chưa vững vàng gì)- Cảm ơn các anh, chị nhiều
[NOTE1]
Sub MoveAndFormat()
Dim lMaxRows As Long 'max rows in the sheet
Dim lThisRow As Long 'row being processed
Dim iMaxCol As Integer 'max used column in the row being processed


lMaxRows = Cells(Rows.Count, "A").End(xlUp).Row

lThisRow = 1 'start from row 1

Do While lThisRow <= lMaxRows

iMaxCol = Cells(lThisRow, Columns.Count).End(xlToLeft).Column

If (iMaxCol > 2) Then
Rows(lThisRow + 1 & ":" & lThisRow + 1).Insert
Range(Cells(lThisRow, 1), Cells(lThisRow, iMaxCol)).Copy
Range("A" & lThisRow + 1).Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:=False, Transpose:=False

Rows(lThisRow + 1).Select


Range(Cells(lThisRow, 1), Cells(lThisRow, iMaxCol)).Clear
lThisRow = lThisRow + 1
lMaxRows = Cells(Rows.Count, "A").End(xlUp).Row

Else
Rows(lThisRow).Select

End If

' With Selection.Borders(xlEdgeBottom)

' .LineStyle = xlDash
' .Weight = xlMedium
' .ColorIndex = xlAutomatic
' End With

lThisRow = lThisRow + 1
Loop
End Sub
[/NOTE1]
 

File đính kèm

Cám ơn bạn Quanghai, cách bạn chỉ mình đã từng làm trước đó, và nó làm được nếu dòng cần insert chỉ có 1 row. Nhưng mình quên mất điều này, mình xin đính chính lại câu hỏi của mình. Là nếu cái dòng cần insert có tới 3 rows và có merge & center thì không sort được. Mong được giúp đỡ!

exxcel3.jpg
 
Cám ơn bạn Quanghai, cách bạn chỉ mình đã từng làm trước đó, và nó làm được nếu dòng cần insert chỉ có 1 row. Nhưng mình quên mất điều này, mình xin đính chính lại câu hỏi của mình. Là nếu cái dòng cần insert có tới 3 rows và có merge & center thì không sort được. Mong được giúp đỡ!
Mình đoán là bạn muốn chèn dòng tiêu đề vào để in bảng lương cho nhân viên.
Thử cách này:
Dùng cột phụ đánh STT từ 1 đến hết. ( chừa 3 dòng tiêu đề ra nhé)
Copy phần STT xuống phía dưới thêm 3 lần
Chọn hết vùng dữ liệu chừa phần tiêu đề ra và sort lại theo cột phụ
Lúc này ta có những dòng trống xen vào dữ liệu
Dùng AutoFilter lọc những dòng trắng
Copy 3 dòng tiêu đề ( có mergecells) dán vào những dòng trắng đó

(Hy vọng trúng)
 
Lần chỉnh sửa cuối:
Web KT

Bài viết mới nhất

Back
Top Bottom