Để 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:
Một điểm nổi bật khiến Long Biên Central khác biệt chính là trải nghiệm sống được cá nhân hóa theo từng nhu cầu của cư dân. Dự án tích hợp nhiều loại hình căn hộ từ 1PN+ đến Duplex hay Penthouse, đáp...
Không gian sống nâng niu từng thế hệ trong gia đình