Tô màu các kí tự đằng sau dấu gạch ngang

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

hml89

Thành viên tiêu biểu
Tham gia
14/9/12
Bài viết
526
Được thích
392
Giới tính
Nam
Kính gửi anh,chị,em trong diễn đàn.

Mọi người cho em hỏi một chút là nếu em muốn tô màu cho kí tự cuối trong một chuỗi, ví dụ 236/21_143-12 => tô màu sau dấu gạch ngang giữa "-" thì có làm được không ạ?
Em có thử mà vẫn chưa làm được.


Rất mong nhận được sự giúp đỡ của anh,chị,em
 

File đính kèm

Kính gửi anh,chị,em trong diễn đàn.

Mọi người cho em hỏi một chút là nếu em muốn tô màu cho kí tự cuối trong một chuỗi, ví dụ 236/21_143-12 => tô màu sau dấu gạch ngang giữa "-" thì có làm được không ạ?
Em có thử mà vẫn chưa làm được.


Rất mong nhận được sự giúp đỡ của anh,chị,em
VBA có thể làm được
 
PHP:
Sub ToMauDuLieuSauGachNoi()
 Const GN As String = "-"
 Dim Cls As Range, Rng As Range
 Dim VTr As Byte
 
 Set Rng = [E1].CurrentRegion
' MsgBox Rng.Cells.Count    '
 For Each Cls In Rng
    If Cls.Value > Space(0) Then
        ToMau Cls
    End If
 Next Cls
End Sub
Mã:
Sub ToMau(Cls As Range)
 Dim VTr As Byte
    
 VTr = InStr(Cls.Value, "-")
 If VTr Then
    With Cls.Characters(Start:=VTr + 1, Length:=9).Font
        .Color = -16776961:             .TintAndShade = 0
        .ThemeFont = xlThemeFontNone
    End With
 End If
End Sub
 
Vâng ạ. Mong anh giúp em với ạ.

Vâng ạ. Mong anh giúp em với ạ.
Sub GPE()

Mã:
Dim rng As Range, cell As Range, str As String
    Dim pos As Byte
        Set rng = Application.InputBox("Chon vung du lieu can xu ly", , , , , , , 8)
        For Each cell In rng
            str = cell: pos = InStrRev(str, "-")
            cell.Characters(pos + 1, Len(str) - pos).Font.ColorIndex = 3
        Next
End Sub
 
Em cám ơn anh nhiều ạ. Anh cho em hỏi một chút là trong trường hợp mình đã có vùng cố định, giả sử là "A2:M5" thì sửa như nào để không phải hiện hộp chọn ạ?
Sub GPE()

Mã:
Dim rng As Range, cell As Range, str As String
    Dim pos As Byte
        Set rng = Application.InputBox("Chon vung du lieu can xu ly", , , , , , , 8)
        For Each cell In rng
            str = cell: pos = InStrRev(str, "-")
            cell.Characters(pos + 1, Len(str) - pos).Font.ColorIndex = 3
        Next
End Sub
Bài đã được tự động gộp:

Sub GPE()

Mã:
Dim rng As Range, cell As Range, str As String
    Dim pos As Byte
        Set rng = Application.InputBox("Chon vung du lieu can xu ly", , , , , , , 8)
        For Each cell In rng
            str = cell: pos = InStrRev(str, "-")
            cell.Characters(pos + 1, Len(str) - pos).Font.ColorIndex = 3
        Next
End Sub
Hi anh, em có sửa đoạn này thành "Set rng = Sheet1.Range("A2:M5") " và đã được rồi ạ. Em cám ơn anh nhiều,
Chúc anh buổi chiều vui!
 
Web KT

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

Back
Top Bottom