Để dễ hình dung, mình xin mô tả bảng số liệu thực nghiệm được ghi ở cột 'A' như dưới đây:
::
00| . . A
01|SL Thực nghiệm
02|++++++
03|0
04|G
05|++++++
06|w
07|C
08|z
09|++++++
10|0
11|C
12|C
13|Good
14|++++++
15|GPE
16|Good
17|0
:nguguc:
Nhiệm vụ đề ra là giữa các thí nghiệm (được fân cách bỡi dòng có 5 dấu '+')
Nếu chỉ cần có 1 dữ liệu thí nghiệm được đánh giá là 'C' thì xóa toàn vùng/dòng của thực nghiệm đó. Việc xóa này tiến hành bắt đầu từ dòng có 6 "+" cho đến trước dòng 6 chữ "+" kế tiếp
Trong bảng trên, các dòng bị xóa sẽ là
Từ dòng 5 đến dòng 8 vì [A7] có chứa 'C'
Từ dòng 9 đến dòng 13 vì [A11] có chứa 'C'
Dưới đây là nội dung macro; Nhưng macro này chỉ mới tô màu để kiểm tra thôi; Nó chưa thực sự xóa các dòng đó. Nó còn chờ hiệu lệnh của các bạn!
Mã nguồn PHP:
[COLOR=#000000]
Option Explicit
Sub XoaKhoang[/COLOR][COLOR=#007700]()
Const [/COLOR][COLOR=#0000BB]CTh [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]String [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#DD0000]"++++++"
[/COLOR][COLOR=#0000BB]Dim Rng [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Range[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]sRng [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Range[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]fRg [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Range[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]Cls [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Range
Dim MyAdd [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]String[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]jJ [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Long
Set Rng [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]Range[/COLOR][COLOR=#007700]([[/COLOR][COLOR=#0000BB]A1[/COLOR][COLOR=#007700]], [[/COLOR][COLOR=#0000BB]A65500[/COLOR][COLOR=#007700]].[/COLOR][COLOR=#0000BB]End[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]xlUp[/COLOR][COLOR=#007700]))
[/COLOR][COLOR=#0000BB]Rng[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Interior[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]ColorIndex [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]0
Set sRng [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]Rng[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Find[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]CTh[/COLOR][COLOR=#007700], , [/COLOR][COLOR=#0000BB]xlFormulas[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]xlWhole[/COLOR][COLOR=#007700])
If [/COLOR][COLOR=#0000BB]Not sRng Is Nothing Then
MyAdd [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]sRng[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Address
[/COLOR][COLOR=#007700]Do
[/COLOR][COLOR=#0000BB]jJ [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]jJ [/COLOR][COLOR=#007700]+ [/COLOR][COLOR=#0000BB]1
[/COLOR][COLOR=#007700]If [/COLOR][COLOR=#0000BB]jJ [/COLOR][COLOR=#007700]> [/COLOR][COLOR=#0000BB]1 Then
[/COLOR][COLOR=#007700]For [/COLOR][COLOR=#0000BB]Each Cls In Range[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]fRg[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]sRng[/COLOR][COLOR=#007700])
If [/COLOR][COLOR=#0000BB]UCase[/COLOR][COLOR=#007700]$([/COLOR][COLOR=#0000BB]Cls[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Value[/COLOR][COLOR=#007700]) = [/COLOR][COLOR=#DD0000]"C" [/COLOR][COLOR=#0000BB]Then
Range[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]fRg[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]sRng[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Offset[/COLOR][COLOR=#007700](-[/COLOR][COLOR=#0000BB]1[/COLOR][COLOR=#007700])).[/COLOR][COLOR=#0000BB]Interior[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]ColorIndex [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]34 [/COLOR][COLOR=#007700]+ ([/COLOR][COLOR=#0000BB]jJ Mod 9[/COLOR][COLOR=#007700])
Exit For
[/COLOR][COLOR=#0000BB]End [/COLOR][COLOR=#007700]If
[/COLOR][COLOR=#0000BB]Next Cls
End [/COLOR][COLOR=#007700]If
[/COLOR][COLOR=#0000BB]Set fRg [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]sRng
Set sRng [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]Rng[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]FindNext[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]sRng[/COLOR][COLOR=#007700])
[/COLOR][COLOR=#0000BB]Loop [/COLOR][COLOR=#007700]While [/COLOR][COLOR=#0000BB]Not sRng Is Nothing [/COLOR][COLOR=#007700]And [/COLOR][COLOR=#0000BB]sRng[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Address [/COLOR][COLOR=#007700]<> [/COLOR][COLOR=#0000BB]MyAdd
End [/COLOR][COLOR=#007700]If
[/COLOR][COLOR=#0000BB]End Sub
[/COLOR]
View more random threads:
Địa chỉ cung cấp mẫu lăng mộ đá khu lăng mộ uy tín chất lượng Đá mỹ nghệ Tài Tuệ là đơn vị hàng đầu trong lĩnh vực điêu khắc chế tác các sản phẩm, công trình tâm linh bằng đá tại làng đá truyền...
Địa chỉ cung cấp mẫu lăng mộ đá khu lăng mộ uy tín chất lượng năm 2024