Viết code xoa dong dữ liệu (6 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

hoclaptrinh

Thành viên hoạt động
Tham gia
28/8/14
Bài viết
151
Được thích
6
nhờ mấy a/c viết dùm em code xóa dữ liệu
em có 1000 dòng dữ liệu giờ em muốn xóa dòng 2&3. sau khi xóa thì dòng 4 sẽ lùi lại thành dòng 2. Tiếp tục em muốn xòa dòng 3&4 làm cho hết 1000 dòng
 
nhờ mấy a/c viết dùm em code xóa dữ liệu
em có 1000 dòng dữ liệu giờ em muốn xóa dòng 2&3. sau khi xóa thì dòng 4 sẽ lùi lại thành dòng 2. Tiếp tục em muốn xòa dòng 3&4 làm cho hết 1000 dòng
Hông hình dung được. Cho file cụ thể xem nào. Xóa dòng là Delete hay là Clear dữ liệu trên dòng đó.
 
Upvote 0
xóa dòng là Delete, sau khi xóa dòng 2&3 thì dòng số 4 sẽ lùi lại thành dòng 2, tiếp theo là xóa dòng 3&4 cứ như thế đến dòng cuối cùng
 
Upvote 0
xóa dòng là Delete, sau khi xóa dòng 2&3 thì dòng số 4 sẽ lùi lại thành dòng 2, tiếp theo là xóa dòng 3&4 cứ như thế đến dòng cuối cùng
thử code sau xem sao ....xong tính tiếp
PHP:
Sub DelRows()
    Rows("2:3").Delete Shift:=xlUp
End Sub
 
Lần chỉnh sửa cuối:
Upvote 0
chỉ được 1 lần thôi. làm sao khi Run thì sẽ xoa hết tất cả dữ liệu luôn
 
Upvote 0
nhờ mấy a/c viết dùm em code xóa dữ liệu
em có 1000 dòng dữ liệu giờ em muốn xóa dòng 2&3. sau khi xóa thì dòng 4 sẽ lùi lại thành dòng 2. Tiếp tục em muốn xòa dòng 3&4 làm cho hết 1000 dòng
Bạn đã diễn đạt khó hiều rồi mà còn không gửi file lên. Thử code này xem
PHP:
Sub XoaDong()
For i = 999 To 1 Step -3
    Rows((i - 1) & ":" & i).Delete Shift:=xlUp
Next
End Sub
 
Upvote 0
Code đúng với sai cái quái gì.
Chỉ làm bộ làng ràng để quảng cáo chữ ký thôi. Ai vô ý click vào cái dòng trống cuối bài là dính chấu.
quần áo trẻ em | quan ao tre em | quần áo sơ sinh | quần áo bé trai | quần áo bé gái | bodysuit carter
 
Lần chỉnh sửa cuối:
Upvote 0
Em có tạo một macro xóa đòng nhưng khi dòng đó có dữ liệu thì nó cũng xóa luông
em muống khi nào dòng đó có dữ liệu thì hiện thông báo :dòng có dữ liệu bạn có muống xóa ko nếu có thì xóa còn nếu ko thì không xóa

CÒN PHẦN CHÈN NẾU VÙNG CHỌN LÀ SỐ 1 THÌ CHÈN : CÒN NẾU VÙNG CHỌN KO PHẢI LÀ SỐ 1 THÌ THÔNG BÁO BẠN CHỌN SAI VÙNG CHỌN HÃY CHỌN LẠI
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
Em có tạo một macro xóa đòng nhưng khi dòng đó có dữ liệu thì nó cũng xóa luông
em muống khi nào dòng đó có dữ liệu thì hiện thông báo :dòng có dữ liệu bạn có muống xóa ko nếu có thì xóa còn nếu ko thì không xóa

CÒN PHẦN CHÈN NẾU VÙNG CHỌN LÀ SỐ 1 THÌ CHÈN : CÒN NẾU VÙNG CHỌN KO PHẢI LÀ SỐ 1 THÌ THÔNG BÁO BẠN CHỌN SAI VÙNG CHỌN HÃY CHỌN LẠI
Bạn xài 2 code này thử: (Riêng code chèn dòng. Nếu cell mà chọn bằng 1 thì mới cho insert nên thiết nghĩ không cần thông báo làm gì cho thừa)
[GPECODE=vb]
Sub CHEN()
If ActiveCell = 1 Then ActiveCell.EntireRow.Insert Shift:=xlUp
End Sub
[/GPECODE]
[GPECODE=vb]
Sub XOA()
Dim I As Long
With Sheet1
For I = 2 To .Range("C" & Rows.Count).End(3).Row
If .Application.WorksheetFunction.CountA(Rows(I)) = 0 Then
.Rows(I).Delete Shift:=xlUp
End If
Next
End With
End Sub
[/GPECODE]
 
Upvote 0
[GPECODE=vb]
Sub XOA()
Dim I As Long
With Sheet1
For I = 2 To .Range("C" & Rows.Count).End(3).Row
If .Application.WorksheetFunction.CountA(Rows(I)) = 0 Then
.Rows(I).Delete Shift:=xlUp
End If
Next
End With
End Sub
[/GPECODE]
hình như code này xóa có vấn đề thì phải? chưa có test chưa có biết công thức như thế nào? nhưng theo như code nếu 2 hay nhiều thằng cạnh nhau đúng điều kiện thì sẽ bị xóa thiếu
 
Upvote 0
hình như code này xóa có vấn đề thì phải? chưa có test chưa có biết công thức như thế nào? nhưng theo như code nếu 2 hay nhiều thằng cạnh nhau đúng điều kiện thì sẽ bị xóa thiếu
Đúng như anh nghĩ. Phải chạy code nhiều lần nếu gặp trường hợp như anh nói thì mới xóa hết được. Em chỉ biết đến đó thì chỉ đến đó. Anh cho em học hỏi thêm với. Hihi
 
Upvote 0
Đúng như anh nghĩ. Phải chạy code nhiều lần nếu gặp trường hợp như anh nói thì mới xóa hết được. Em chỉ biết đến đó thì chỉ đến đó. Anh cho em học hỏi thêm với. Hihi
nếu cho chạy từ ở trên xuống thì khi delete thì mình phải giảm i xuống 1 lần và giảm dòng cuối 1 đơn vị( để tránh trường hợp chạy vô tận thì cài thêm đk i <dòng cuối), để xét nếu nó có 2 thằng cạnh nhau
còn muốn đơn giản thì duyệt i từ dưới lên
Mã:
[COLOR=#000000][FONT=Consolas]Sub XOA()[/FONT][/COLOR]
[COLOR=#000000][FONT=Consolas]Dim I As Long[/FONT][/COLOR]
[COLOR=#000000][FONT=Consolas]    With Sheet1[/FONT][/COLOR]
[COLOR=#000000][FONT=Consolas]           For I = .Range("C" & Rows.Count).End(3).Row  To  2 step -1[/FONT][/COLOR]
[COLOR=#000000][FONT=Consolas]                If .Application.WorksheetFunction.CountA(Rows(I)) = 0 Then[/FONT][/COLOR]
[COLOR=#000000][FONT=Consolas]                   .Rows(I).Delete Shift:=xlUp[/FONT][/COLOR]
[COLOR=#000000][FONT=Consolas]                End If[/FONT][/COLOR]
[COLOR=#000000][FONT=Consolas]          Next[/FONT][/COLOR]
[COLOR=#000000][FONT=Consolas]     End With[/FONT][/COLOR]
[COLOR=#000000][FONT=Consolas]End Sub[/FONT][/COLOR]

[CODE]
 
Lần chỉnh sửa cuối:
Upvote 0
nếu cho chạy từ ở trên xuống thì khi delete thì mình phải giảm i xuống 1 lần và giảm dòng cuối 1 đơn vị( để tránh trường hợp chạy vô tận thì cài thêm đk i <dòng cuối), để xét nếu nó có 2 thằng cạnh nhau
còn muốn đơn giản thì duyệt i từ dưới lên
Sửa như thế này thì chuẩn thiệt.
Mã:
For I = .Range("C" & Rows.Count).End(3).Row - 1 To 1 Step -1
Cảm ơn anh nhiều.
 
Upvote 0
Web KT

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

Back
Top Bottom