VBA tách dòng theo điều kiện / VBA xóa dòng rỗng

Liên hệ QC

tieuthubuongbinh

Học hoài vẫn dốt
Tham gia
3/9/08
Bài viết
498
Được thích
340
Giới tính
Nữ
Nghề nghiệp
Planning
Các bác cho em xin đoạn code mà khi em gõ vào B1 số dòng muốn insert dòng rỗng vào thì VBA sẽ tách dòng theo đó
Và đoạn code mà sau khi insert dòng rỗng xong, chạy code xóa dòng rỗng để trả dữ liệu về ban đầu
Mục đích: vì SAP bị hạn chế khi copy and paste số lượng dòng nên em cần code để tách dòng ra, copy vào cho nhanh, sau đó xóa dòng đã tách để trả dữ liệu lại như ban đầu (2 sub khác nhau)
Cám ơn các chuyên gia VBA ạ
 

File đính kèm

  • VBA tach dong va xoa dong rong.xlsx
    8.3 KB · Đọc: 33
Các bác cho em xin đoạn code mà khi em gõ vào B1 số dòng muốn insert dòng rỗng vào thì VBA sẽ tách dòng theo đó
Và đoạn code mà sau khi insert dòng rỗng xong, chạy code xóa dòng rỗng để trả dữ liệu về ban đầu
Mục đích: vì SAP bị hạn chế khi copy and paste số lượng dòng nên em cần code để tách dòng ra, copy vào cho nhanh, sau đó xóa dòng đã tách để trả dữ liệu lại như ban đầu (2 sub khác nhau)
Cám ơn các chuyên gia VBA ạ
Thế trong trường hợp mà chưa xóa dòng trống đã chạy code thêm dòng thì Data dữ liệu lấy sao.Tốt nhất bạn nên không nên làm trực tiếp vào data.Bạn nên làm cái kia sang 1 bảng khác.Không thích thì xóa đi.
 
Upvote 0
Thế trong trường hợp mà chưa xóa dòng trống đã chạy code thêm dòng thì Data dữ liệu lấy sao.Tốt nhất bạn nên không nên làm trực tiếp vào data.Bạn nên làm cái kia sang 1 bảng khác.Không thích thì xóa đi.
Thì nó cứ tính như bình thường cũng được (vd dòng trống, 6-7-8-9 thì lại chèn dòng). Vì kiểu data này ko quan trọng nên làm chung cũng được đó bạn. Do chỉ chèn và xoá dòng rỗng nên mình ko sợ nó làm sai data đi
 
Upvote 0
Các bác cho em xin đoạn code mà khi em gõ vào B1 số dòng muốn insert dòng rỗng vào thì VBA sẽ tách dòng theo đó
Và đoạn code mà sau khi insert dòng rỗng xong, chạy code xóa dòng rỗng để trả dữ liệu về ban đầu
Mục đích: vì SAP bị hạn chế khi copy and paste số lượng dòng nên em cần code để tách dòng ra, copy vào cho nhanh, sau đó xóa dòng đã tách để trả dữ liệu lại như ban đầu (2 sub khác nhau)
Cám ơn các chuyên gia VBA ạ
1/ Vậy sau khi insert dòng xong thì có Copy dữ liệu dòng trên xuống không hay để trống?
2/ Nên có tiêu đề giả định cụ thể tại 1 dòng nào đó để người giúp biết mà thực hiện bắt đầu từ đâu?
 
Lần chỉnh sửa cuối:
Upvote 0
Thử 2 code sau xem sao:
Mã:
Sub TachDong()
Dim Rng As Range, i As Long, a As Long, k As Long
With Sheets("Sheet1")
    Set Rng = .Range("A8:A" & .Range("A65535").End(xlUp).Row)
    k = .Range("B1").Value
    a = (Application.RoundUp(Rng.Rows.Count / k, 0) * k) + 1
    If a < 10 ^ 6 Then
        For i = a To 2 Step -k
            Rng(i).EntireRow.Insert
        Next i
    Else
        MsgBox "Quá nhieu dong"
    End If
End With
End Sub

Sub XoaDong()
Dim Rng As Range
Set Rng = Sheet1.Range("A8:A" & Sheet1.Range("A65535").End(xlUp).Row)
If Application.CountIf(Rng, "") > 0 Then
    Rng.SpecialCells(4).EntireRow.Delete
Else
    MsgBox "Không có dong rong"
End If
End Sub
 
Upvote 0
Web KT
Back
Top Bottom