Tôi phải sử dụng đoạn macro này như thế nào ???

  • Thread starter Thread starter Blad01
  • Ngày gửi Ngày gửi
Liên hệ QC

Blad01

Thành viên thường trực
Tham gia
6/10/07
Bài viết
350
Được thích
28
Mã:
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
Dim cond As FormatCondition
   If Target.Cells[B][COLOR=Red](1, 1)[/COLOR][/B].FormatConditions.Count > 0 Then
    Set cond = Target.Cells[COLOR=Red][B](1, 1)[/B][/COLOR].FormatConditions([COLOR=Red][B]1[/B][/COLOR])
    If cond.Formula1 = "=ROW()=CELL(""ROW"")" Then
        Target.Calculate
    End If
    Set cond = Nothing
   End If
End Sub
Tôi là một thành viên mới, đây là đoạn macro của bạn TuanVNUNI về cách làm Highlight
đã có nhiều cách làm khác nhau về vấn đề này nhưng những cách làm đó khá là đơn giản và dễ làm,
còn cách này tôi làm mãi mà vẫn chưa được. Không hiểu các bước phải làm thế nào nữa. Mong các bạn
hướng dẫn mình một cách chi tiết, vì mình mới làm quen với VBA nên chưa hiểu gì cả.
Trong bài hướng dẫn tác giả có nói cách làm nhưng chung chung quá. Những người mới làm quen như chúng tôi
thấy hơi khó tiếp cận. Rất mong nhận được sự giúp đỡ của các bạn.
* Gợi ý của tác giả:
+ Xóa thủ tục "Worksheet_SelectionChange" trong sheet "Highlight"
+ Tạo thủ tục (sự kiện) "Workbook_SheetSelectionChange" trong ThisWorkbook

Xin hỏi trong đoạn code trên những dòng mà tôi in đậm và tô chữ màu đỏ có ý nghĩa gì
có phải là nó chỉ dòng một phải không ? Hay là sheet 1. Thật sự tôi chưa rõ.
 
Mã:
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
Dim cond As FormatCondition
   If Target.Cells[B][COLOR=Red](1, 1)[/COLOR][/B].FormatConditions.Count > 0 Then
    Set cond = Target.Cells[COLOR=Red][B](1, 1)[/B][/COLOR].FormatConditions([COLOR=Red][B]1[/B][/COLOR])
    If cond.Formula1 = "=ROW()=CELL(""ROW"")" Then
        Target.Calculate
    End If
    Set cond = Nothing
   End If
End Sub
Tôi là một thành viên mới, đây là đoạn macro của bạn TuanVNUNI về cách làm Highlight
đã có nhiều cách làm khác nhau về vấn đề này nhưng những cách làm đó khá là đơn giản và dễ làm,
còn cách này tôi làm mãi mà vẫn chưa được. Không hiểu các bước phải làm thế nào nữa. Mong các bạn
hướng dẫn mình một cách chi tiết, vì mình mới làm quen với VBA nên chưa hiểu gì cả.
Trong bài hướng dẫn tác giả có nói cách làm nhưng chung chung quá. Những người mới làm quen như chúng tôi
thấy hơi khó tiếp cận. Rất mong nhận được sự giúp đỡ của các bạn.
* Gợi ý của tác giả:
+ Xóa thủ tục "Worksheet_SelectionChange" trong sheet "Highlight"
+ Tạo thủ tục (sự kiện) "Workbook_SheetSelectionChange" trong ThisWorkbook

Xin hỏi trong đoạn code trên những dòng mà tôi in đậm và tô chữ màu đỏ có ý nghĩa gì
có phải là nó chỉ dòng một phải không ? Hay là sheet 1. Thật sự tôi chưa rõ.

Bạn thân mến!!

  • Cels(1,1) chỉ ra rằng đó là Tọa độ (Hàng thứ nhất và cột thứ nhất). Vì nó gắn liền với Target nên nó sẽ mang ý nghĩa tương đối theo Target, nghĩa là : Nó là Cell đầu tiên của mảng Target.
  • Cái màu đỏ ở trong FormatConditions chỉ ra rằng đây là điều kiện thứ nhất của Formatting Condition (có 3 điều kiên) trong mảng Target.
Vậy nhé, cứ từ từ rồi khoai sẽ nhừ.

Chúc bạn thành công!!

Thân!
 
Upvote 0
Bạn có thể nói rõ hơn là làm thế nào để có thể cho macro này chạy được ???
Các dòng này mình phải làm thế nào:
+ Xóa thủ tục "Worksheet_SelectionChange" trong sheet "Highlight"
+ Tạo thủ tục (sự kiện) "Workbook_SheetSelectionChange" trong ThisWorkbook
mình đã làm nhưng chẳng thấy có gì sảy ra cả, bạn có thể hướng dẫn mình một cách chi tiết để có thể macro này chạy được.
Cảm ơn bạn nhiều lắm !
 
Upvote 0
Web KT

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

Back
Top Bottom