Nhờ giúp đỡ thêm về HighLight ? (1 người xem)

Liên hệ QC

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

Miền Cát Trắng

Thành viên hoạt động
Tham gia
18/5/13
Bài viết
171
Được thích
37
Xin chào các bạn!
Tôi tải được file HighLight_Row của bác Lê Văn Duyệt về xem. Nhưng do chưa đủ kiến thức về vba nên không xử lý được.
Phiền các bạn giúp mình với.
Làm sao chỉ có thể HighLight được trong vùng kẻ khung của file?
Xin cảm ơn.
 

File đính kèm

Lần chỉnh sửa cuối:
Xin chào các bạn!
Tôi tải được file HighLight_Row của bác Lê Văn Duyệt về xem. Nhưng do chưa đủ kiến thức về vba nên không xử lý được.
Phiền các bạn giúp mình với.
Làm sao chỉ có thể HighLight được trong vùng kẻ khung của file?
Xin cảm ơn.

Bạn vào sheet2 xem cách HL đó có được ko :-=

Link MediaFire: HighLight_Row (1)
 
Lần chỉnh sửa cuối:
Upvote 0
Cảm ơn bạn đã chia sẻ.Cách của bạn thật đơn giản khi kết hợ với CF.
Còn nếu trường hợp của mình đã nêu trong bài 1 liệu có giải pháp gì không?
Mong bạn giúp đỡ!
 
Upvote 0
Cảm ơn bạn đã chia sẻ.Cách của bạn thật đơn giản khi kết hợ với CF.
Còn nếu trường hợp của mình đã nêu trong bài 1 liệu có giải pháp gì không?
Mong bạn giúp đỡ!

ý của bạn là fill color toàn bộ từ B7 đến H25 (sheet 1) luôn đó hả.
 
Upvote 0
Cảm ơn bạn đã chia sẻ.Cách của bạn thật đơn giản khi kết hợ với CF.
Còn nếu trường hợp của mình đã nêu trong bài 1 liệu có giải pháp gì không?
Mong bạn giúp đỡ!
Cái gì cũng có cách xử, nhưng còn hên xui may rủi nữa nhá
PHP:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim vung As Range, i
Set vung = [B6:H24]
If Not Intersect(vung, Target) Is Nothing Then
   For i = vung.Row To vung.Rows.Count + vung.Row
      If Cells(i, 2).Interior.ColorIndex = 6 Then
         Cells(i, 2).Resize(, 7).Interior.ColorIndex = xlNone
         Exit For
      End If
   Next
   Cells(Target.Row, 2).Resize(, 7).Interior.ColorIndex = 6
Else
   vung.Interior.ColorIndex = xlNone
End If
End Sub
 
Upvote 0
Cái gì cũng có cách xử, nhưng còn hên xui may rủi nữa nhá
PHP:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim vung As Range, i
Set vung = [B6:H24]
If Not Intersect(vung, Target) Is Nothing Then
   For i = vung.Row To vung.Rows.Count + vung.Row
      If Cells(i, 2).Interior.ColorIndex = 6 Then
         Cells(i, 2).Resize(, 7).Interior.ColorIndex = xlNone
         Exit For
      End If
   Next
   Cells(Target.Row, 2).Resize(, 7).Interior.ColorIndex = 6
Else
   vung.Interior.ColorIndex = xlNone
End If
End Sub

Dear Anh Hải,Cảm ơn Anh đã giúp đỡ.Em đã chạy thử đoạn code trên.
Cách này sẽ làm mất đi định dạng cũ của vùng dữ liệu.
Anh có cách nào áp dụng đoạn code của bài 1 cho vùng kẻ khung không?
 
Upvote 0
Dear Anh Hải,Cảm ơn Anh đã giúp đỡ.Em đã chạy thử đoạn code trên.
Cách này sẽ làm mất đi định dạng cũ của vùng dữ liệu.
Anh có cách nào áp dụng đoạn code của bài 1 cho vùng kẻ khung không?
Bạn dùng thử ADDins này xem . Vì nó là ADDins nên bạn giải nén rồi copy vào Program file \Addins .
Sau đó mở Excel \tools\Add-Ins ( tích chọn )
Khi thấy trên Menu bar xuất hiện HightLight thì bạn chọn "trợ giúp" để xem hướng dẫn . Nếu Khu vực HightLight đã có dữ liệu thì bạn phải định dạng lại và sau đó HightLight không ảnh hưởng đến bất cứ định dạng nào nữa.
 

File đính kèm

Upvote 0
Lần chỉnh sửa cuối:
Upvote 0
Dear Anh Hải,Cảm ơn Anh đã giúp đỡ.Em đã chạy thử đoạn code trên.
Cách này sẽ làm mất đi định dạng cũ của vùng dữ liệu.
Anh có cách nào áp dụng đoạn code của bài 1 cho vùng kẻ khung không?

Vậy thử vầy đi nha. Cầu trời cho trúng ý của bạn
PHP:
Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
    Static rOld As Range
    Static nColorIndices(1 To 7) As Long
    Dim i As Long
    If Not Intersect(Target, [B7:H25]) Is Nothing Then
      If Not rOld Is Nothing Then
          With rOld.Cells
              If .Row = ActiveCell.Row Then Exit Sub
              For i = 1 To 7
                  .Item(i).Interior.ColorIndex = nColorIndices(i)
              Next i
          End With
      End If
      Set rOld = Cells(ActiveCell.Row, 2).Resize(1, 7)
      With rOld
          For i = 1 To 7
              nColorIndices(i) = .Item(i).Interior.ColorIndex
          Next i
          .Interior.ColorIndex = 6
      End With
   Else
      With rOld.Cells
           For i = 1 To 7
               .Item(i).Interior.ColorIndex = nColorIndices(i)
           Next i
       End With
   End If
End Sub
 
Upvote 0
Bạn dùng thử ADDins này xem . Vì nó là ADDins nên bạn giải nén rồi copy vào Program file \Addins .
Sau đó mở Excel \tools\Add-Ins ( tích chọn )
Khi thấy trên Menu bar xuất hiện HightLight thì bạn chọn "trợ giúp" để xem hướng dẫn . Nếu Khu vực HightLight đã có dữ liệu thì bạn phải định dạng lại và sau đó HightLight không ảnh hưởng đến bất cứ định dạng nào nữa.

Cảm ơn bạn nhiều vì sự chia sẻ!Tôi sẽ tìm hiểu nếu có vấn đề gì tôi sẽ thông tin lại.

Vậy thử vầy đi nha. Cầu trời cho trúng ý của bạn
PHP:
Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
    Static rOld As Range
    Static nColorIndices(1 To 7) As Long
    Dim i As Long
    If Not Intersect(Target, [B7:H25]) Is Nothing Then
      If Not rOld Is Nothing Then
          With rOld.Cells
              If .Row = ActiveCell.Row Then Exit Sub
              For i = 1 To 7
                  .Item(i).Interior.ColorIndex = nColorIndices(i)
              Next i
          End With
      End If
      Set rOld = Cells(ActiveCell.Row, 2).Resize(1, 7)
      With rOld
          For i = 1 To 7
              nColorIndices(i) = .Item(i).Interior.ColorIndex
          Next i
          .Interior.ColorIndex = 6
      End With
   Else
      With rOld.Cells
           For i = 1 To 7
               .Item(i).Interior.ColorIndex = nColorIndices(i)
           Next i
       End With
   End If
End Sub

Dear,Anh Hải!
Cảm ơn Anh đã cố gắng giúp đỡ!
Em đã xem thử về cơ bản thì đúng ý của em đã nêu rồi đó ạ nhưng hiện em thấy còn 2 vấn đề còn chưa ưng ý lắm anh giúp em khắc phục với.
1.Khi tác động ngoài vùng thì code lỗi.
2.Có một số màu chưa trả về đúng màu cũ của nó.
Anh xem video nhé.
[video=youtube;osy3u2U5wJA]http://www.youtube.com/watch?v=osy3u2U5wJA&feature=youtu.be[/video]
 
Upvote 0
Cảm ơn bạn nhiều vì sự chia sẻ!Tôi sẽ tìm hiểu nếu có vấn đề gì tôi sẽ thông tin lại.



Dear,Anh Hải!
Cảm ơn Anh đã cố gắng giúp đỡ!
Em đã xem thử về cơ bản thì đúng ý của em đã nêu rồi đó ạ nhưng hiện em thấy còn 2 vấn đề còn chưa ưng ý lắm anh giúp em khắc phục với.
1.Khi tác động ngoài vùng thì code lỗi.
2.Có một số màu chưa trả về đúng màu cũ của nó.
Lúc đầu bạn đưa file lên có thấy màu mè gì đâu.
Tóm ý lại chút nhá:
1. Trong vùng kẻ khung bạn có sẵn màu bất kỳ trên dòng bất kỳ
2. Khi bạn chọn 1 ô nào đó trong vùng kẻ khung, dòng này đang là màu đỏ sẽ chuyển màu khác, ví dụ là màu vàng.
3. Khi bạn tiếp tục chọn 1 ô nào khác trong vùng, dòng trước đó sẽ trả về màu đỏ ban đầu, dòng hiện đang là màu xanh sẽ chuyển là màu vàng, và cứ như thế.
4. Nếu bạn chọn ra ngoài vùng thì dòng trong vùng trước đó sẽ trả lại màu xanh.
???
Hỏng biết có phải vậy không nữa. Nếu đúng vậy thì tính tiếp. Code chắc là không khó nhưng hiểu được bạn thật là khó.
 
Upvote 0
Lúc đầu bạn đưa file lên có thấy màu mè gì đâu.
Tóm ý lại chút nhá:
1. Trong vùng kẻ khung bạn có sẵn màu bất kỳ trên dòng bất kỳ
2. Khi bạn chọn 1 ô nào đó trong vùng kẻ khung, dòng này đang là màu đỏ sẽ chuyển màu khác, ví dụ là màu vàng.
3. Khi bạn tiếp tục chọn 1 ô nào khác trong vùng, dòng trước đó sẽ trả về màu đỏ ban đầu, dòng hiện đang là màu xanh sẽ chuyển là màu vàng, và cứ như thế.
4. Nếu bạn chọn ra ngoài vùng thì dòng trong vùng trước đó sẽ trả lại màu xanh.
???
Hỏng biết có phải vậy không nữa. Nếu đúng vậy thì tính tiếp. Code chắc là không khó nhưng hiểu được bạn thật là khó.

Dear Anh Hải!
Đúng rồi ạ,ý của em là vậy kiểu như là dùng HighLight bằng CF đó.
Anh giúp em với ạ.Cảm ơn Anh!
 
Upvote 0

File đính kèm

Upvote 0


Chuẩn rồi Anh Hải ơi.Cảm ơn Anh nhiều nhé.
À, nếu thêm HighLight cột nữa có được không Anh?
Hình như là không có gì là không thể. Chỉ có điều chẳng hiểu nổi ý của tác giả nên không mần được thôi. Code cho cột chắc cũng na ná như thế. Bạn tự xử đi cho sướng nhé
 
Upvote 0
vẫn biết là quá nhiều người bàn về đề tài này rồi, nhất là lại liên quan đến cây đa cây đề cỡ lê văn duyệt thì dễ bị ném đá lắm. tui vẫn (cứ dại mà) xen vô.

tuỳ theo nhu cầu, có thể làm highlight rất đơn giản. chẳng hạn khi làm việc với sheet, khi chọn một ô thì dòng kẻ phía dưới đổi màu (gọi là dóng hàng) cho đỡ nhầm lẫn.

xin giới thiệu một giải pháp cực kỳ đơn giản (xem file đính kèm)
lưu ý: sửa các thông số left, width,... cho phù hợp
 

File đính kèm

Upvote 0
vẫn biết là quá nhiều người bàn về đề tài này rồi, nhất là lại liên quan đến cây đa cây đề cỡ lê văn duyệt thì dễ bị ném đá lắm. tui vẫn (cứ dại mà) xen vô.

tuỳ theo nhu cầu, có thể làm highlight rất đơn giản. chẳng hạn khi làm việc với sheet, khi chọn một ô thì dòng kẻ phía dưới đổi màu (gọi là dóng hàng) cho đỡ nhầm lẫn.

xin giới thiệu một giải pháp cực kỳ đơn giản (xem file đính kèm)
lưu ý: sửa các thông số left, width,... cho phù hợp

Cảm ơn bạn đã chia sẻ, nếu không phiền mong bạn giúp thêm cho cả trường hợp thêm highlight cả cột,nữa.
 
Upvote 0

File đính kèm

Upvote 0
cảm ơn bạn đã tin tưởng. vui lòng xem file đính kèm (v2)

Mã:
Cảm ơn bạn nhiều!
Trong file có đoạn code:
[CODE]
[COLOR=#ff0000]        .Width = 0.5[/COLOR]
        .Left = ActiveCell.Left[COLOR=#ff0000] - 0.5[/COLOR]
Mình bỏ toàn bộ chỗ màu đỏ đi thì thấy vẫn họt động bình thường.
Vậy bạn cho hỏi cái đoạn màu đỏ đấy có tác dụng gì vậy, nó có cần thiết không?
 
Lần chỉnh sửa cuối:
Upvote 0
Mã:
Cảm ơn bạn nhiều!
Trong file có đoạn code:
[CODE]
[COLOR=#ff0000]        .Width = 0.5[/COLOR]
        .Left = ActiveCell.Left[COLOR=#ff0000] - 0.5[/COLOR]
Mình bỏ toàn bộ chỗ màu đỏ đi thì thấy vẫn họt động bình thường.
Vậy bạn cho hỏi cái đoạn màu đỏ đấy có tác dụng gì vậy, nó có cần thiết không?

1/ .left: bạn chú ý vị trí so với đường kẻ trên headline bị lệch 1 chút xíu, điều chỉnh -0.5 cho đẹp hơn thôi.
2/ . width = 0.5 là kẻ rất mảnh bạn ạ. cái này đã khai báo ngay khi insert rồi, không có cũng được.
3/ ngoài ra tui còn dùng thêm .rotation = 0 cho chắc ăn. lỡ đường kẻ bị kéo chệch đi thì sẽ tự chỉnh lại.

(có lẽ mình kỹ tính quá chăng)
 
Upvote 0
1/ .left: bạn chú ý vị trí so với đường kẻ trên headline bị lệch 1 chút xíu, điều chỉnh -0.5 cho đẹp hơn thôi.
2/ . width = 0.5 là kẻ rất mảnh bạn ạ. cái này đã khai báo ngay khi insert rồi, không có cũng được.
3/ ngoài ra tui còn dùng thêm .rotation = 0 cho chắc ăn. lỡ đường kẻ bị kéo chệch đi thì sẽ tự chỉnh lại.

(có lẽ mình kỹ tính quá chăng)

Hì,Cảm ơn bạn!Phải có kiến thức thì mới có thể tính kỹ như vậy nhỉ.
Còn 1 trường hợp nữa bạn giúp mình với,nếu đường kẻ bị mất(xóa đi) có cách nào để khôi phục tự động lại cho nó không?
 
Lần chỉnh sửa cuối:
Upvote 0
Hì,Cảm ơn bạn!Phải có kiến thức thì mới có thể tính kỹ như vậy nhỉ.
Còn 1 trường hợp nữa bạn giúp mình với,nếu đường kẻ bị mất(xóa đi) có cách nào để khôi phục tự động lại cho nó không?

trả lời: được
chỉ có điều đang bận chút, mai mốt làm cho bạn.
 
Upvote 0
vui lòng xem files đính kèm:

1/ simple-high-light (v3): bổ sung mã theo yêu cầu
2/ addin-high-light: nhân tiện viết thành addin, có thể dùng luôn khỏi add code.

lưu ý:
- có thể dùng addin theo kiểu khai báo trong excel options, khai báo trong edit code/reference và cũng có thể mở trực tiếp như file thông thường.
- tuỳ ý chỉnh sửa theo ý mình
 

File đính kèm

Upvote 0
vui lòng xem files đính kèm:

1/ simple-high-light (v3): bổ sung mã theo yêu cầu
2/ addin-high-light: nhân tiện viết thành addin, có thể dùng luôn khỏi add code.

lưu ý:
- có thể dùng addin theo kiểu khai báo trong excel options, khai báo trong edit code/reference và cũng có thể mở trực tiếp như file thông thường.
- tuỳ ý chỉnh sửa theo ý mình

Cảm ơn bạn đã có gắng dành thời gian giúp đỡ.
 
Lần chỉnh sửa cuối:
Upvote 0
vui lòng xem files đính kèm:

1/ simple-high-light (v3): bổ sung mã theo yêu cầu
2/ addin-high-light: nhân tiện viết thành addin, có thể dùng luôn khỏi add code.

lưu ý:
- có thể dùng addin theo kiểu khai báo trong excel options, khai báo trong edit code/reference và cũng có thể mở trực tiếp như file thông thường.
- tuỳ ý chỉnh sửa theo ý mình
Bạn ơi phiền bạn giúp mình tạo thêm công cụ menu trong tab addin để tắt mở chức năng được không?
 
Upvote 0

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

Back
Top Bottom