[Nhờ giúp đỡ] macro xóa dòng theo chỉ định (1 người xem)

Liên hệ QC

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

kevindang

Thành viên mới
Tham gia
8/7/09
Bài viết
5
Được thích
1
Dear các anh chị!
Em đã tìm hiểu trên diễn đàn nhưng chưa xử lý được nên gửi thông tin lên nhờ các anh chị giúp!
Em cần thực hiện xóa dòng theo yêu cầu điều kiện của mình, cụ thể em có bản tính D6:H16, em muốn tạo một macro để xóa từ dòng thứ 4 đến dòng thứ 1, dòn thứ mấy là do mình nhập, theo bảng tính em đính kèm là ô L12, nếu L12=5 thì xóa từ dòng số 5 đến dòng số 1, xóa nội dung của dòng chứ không xóa dòng (tọa độ của các dòng còn lại không thay đổi).
Mục đích của việc em làm file này là em có báo cáo thu chi, mỗi ngày in một lần và dòng in hôm nay kế tíêp từ dòng hôm trước.

Thêm cái nữa là em muốn xin code để mình phục hồi các dòng đã xóa sau khi in xong (cái này nếu không được thì em sẽ dùng thủ công bằng cách không save).
Mong phản hồi của các anh chị!
Trân trọng!
 

File đính kèm

Đọc đi đọc lại vài lần mà vẫn không hiểu bạn muốn gì nữa ? +-+-+-++-+-+-++-+-+-+ Nếu bạn muốn xóa nội dung thì dùng lệnh ClearContent !
 
Lần chỉnh sửa cuối:
Upvote 0
Có lẻ là vầy; Bạn thử xem sao.
.................................................
 

File đính kèm

Upvote 0
Đọc đi đọc lại vài lần mà vẫn không hiểu bạn muốn gì nữa ? +-+-+-++-+-+-++-+-+-+ Nếu bạn muốn xóa nội dung thì dùng lệnh ClearContent !
- Đại loại em có bảng tính mà mỗi ngày phát sinh 100 dòng dữ liệu, hôm nay em in từ dòng 1-80, ngày mai em in từ dòng 81 đến 100, mỗi trang giấy chứa được 200 dòng, nếu ngày tới phát sinh in từ dòng 101 đến 200 mà em để nguyên 200 dòng em in thì sẽ đè dữ liệu cũ đã in, thành ra bây giờ em phải xóa dữ liệu dữ liệu từ dòng 1-100. Em cần lệnh VB để gán vào nút bấm để khi em nhập số dòng (ví dụ dòng 100) làm điều kiện, và em click button thì nó sẽ xóa content từ dòng 100 đến dòng 1 mà không cần chọn vùng.
Thanks anh phản hồi, chờ hỗ trợ thêm từ anh!
 
Upvote 0
Có lẻ là vầy; Bạn thử xem sao.
.................................................
- dạ thanks anh! Em có thử file này rồi, điều kiện file anh gửi là "nếu ô xx không có dữ liệu thì xóa dòng, còn mục đích của em là xóa dòng (content) từ dòng diều kiện (tùy mình nhập) đến dòng trên cùng theo số thứ tự.
Anh phản hồi thêm cho em nhé!
Trân trọng!
 
Upvote 0
. . . điều kiện file anh gửi là "nếu ô xx không có dữ liệu thì xóa dòng, còn mục đích của em là xóa dòng (content) từ dòng diều kiện (tùy mình nhập) đến dòng trên cùng theo số thứ tự.
Anh phản hồi thêm cho em nhé!
Trân trọng!

Mình thực hiện theo cách hiểu iêu cầu của bạn ở bài đầu;
Bạn thử đọc lại 2 iêu cầu của mình có giống nhau không (?)

Nếu cho là giống thì bạn tự sửa trong macro đó đi vậy!
 
Upvote 0
Mình thực hiện theo cách hiểu iêu cầu của bạn ở bài đầu;
Bạn thử đọc lại 2 iêu cầu của mình có giống nhau không (?)

Nếu cho là giống thì bạn tự sửa trong macro đó đi vậy!

Kính gửi Chú!
Cháu đã được Chú hỗ trợ xong :D!
Hân hạnh được biết Chú!
Cháu Quang
0909472188
 
Lần chỉnh sửa cuối:
Upvote 0
Mình thực hiện theo cách hiểu iêu cầu của bạn ở bài đầu;
Bạn thử đọc lại 2 iêu cầu của mình có giống nhau không (?)

Nếu cho là giống thì bạn tự sửa trong macro đó đi vậy!


Chú ơi!
Cháu có chút vướng mắt Chú hướng dẫn giúp cháu, cháu trích dẫn:
PHP:
Option ExplicitDim Arr()Sub Xóa() ReDim sArr(1 To [l12].Value, 1 To 5) ReDim Arr(1 To 17, 1 To 5)  Arr() = [D1].Resize(17, 5).Value [D1].Resize([l12].Value, 6).Value = sArr()End Sub
Sub FucHòi() [D1].Resize(17, 5).Value = Arr()  Erase Arr()End Sub

Trong file cháu thêm dữ liệu các dòng nhưng ô L12 không hiển thị thêm dòng Chú ạ!
Cháu nhờ Chú hướng dẫn cho cháu nhận định mảng vùng trong code trên!
 
Upvote 0
Bạn đối chiếu với những chàng này xem có gì thay đổi:
PHP:
Option Explicit
Dim Arr()
Const SD As Long = 35               'Them Mói'
Sub Xóa()
 ReDim sArr(1 To [l12].Value, 1 To 5)
 ReDim Arr(1 To SD, 1 To 5)         '<=| Chú ý'
 
 Arr() = [D1].Resize(SD, 5).Value   '*Chú ý'
 [D1].Resize([l12].Value, 6).Value = sArr()
End Sub
Mã:
[B]Sub FucHòi()[/B]
 [D1].Resize(SD, 5).Value = Arr()   '*Chú ý'
  Erase Arr()
[B]End Sub[/B]

Sau này lúc cần tăng hay giảm ta chỉ cần đổi con số 35 hiện giờ thành con số nào đó mà bạn iêu thích là được.
Chúc vui! @#!^% @#!^% @#!^%
 
Upvote 0

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

Back
Top Bottom