Định dạng giá trị trong chuỗi ký tự

Liên hệ QC

ruoitrau2501

Thành viên mới
Tham gia
1/1/15
Bài viết
5
Được thích
0
Chào các bạn!
Nhờ các bạn xem giúp mình có cách nào để định dạng tự động các số trong 1 chuỗi ký tự. (Số dương màu đỏ, số âm màu xanh)
Ví dụ: trong 1 ô, mình có thông tin:
Doanh thu: +4.05 tỷ VND (~ +10%):
- Hàng nội địa tăng +6.0 tỷ VND (~ +20%)
- Hàng nhập giảm -1.5 tỷ VND (~ -0.3%)

Mình muốn định dạng tự động:
Doanh thu: +4.05 tỷ VND (~ +10%):
- Hàng nội địa tăng +6.0 tỷ VND (~ +20%)
- Hàng nhập giảm -1.5 tỷ VND (~ -0.3%)

Cảm ơn các bạn!
 

File đính kèm

  • Example.xlsx
    9.3 KB · Đọc: 8
Lần chỉnh sửa cuối:
Chào các bạn!
Nhờ các bạn xem giúp mình có cách nào để định dạng tự động các số trong 1 chuỗi ký tự. (Số dương màu đỏ, số âm màu xanh)
Ví dụ: trong 1 ô, mình có thông tin:
Doanh thu: +4.05 tỷ VND (~ +10%):
- Hàng nội địa tăng +6.0 tỷ VND (~ +20%)
- Hàng nhập giảm -1.5 tỷ VND (~ -0.3%)

Mình muốn định dạng tự động:
Doanh thu: +4.05 tỷ VND (~ +10%):
- Hàng nội địa tăng +6.0 tỷ VND (~ +20%)
- Hàng nhập giảm -1.5 tỷ VND (~ -0.3%)

Cảm ơn các bạn!
Bạn thử code này:
PHP:
Sub forcolor()
Dim rng As Range, cell As Range, item
Set rng = Range("a3:a" & [a100000].End(xlUp).Row)
With CreateObject("vbscript.regexp")
    .Global = True: .MultiLine = True
    .Pattern = "[+-][\d.%]+"
    For Each cell In rng
        For Each item In .Execute(cell)
            If Left(item, 1) = "+" Then
                cell.Characters(InStr(1, cell, item), Len(item)).Font.Color = vbRed
            Else
                cell.Characters(InStr(1, cell, item), Len(item)).Font.Color = vbBlue
            End If
            cell.Characters(InStr(1, cell, item), Len(item)).Font.Bold = True
        Next
    Next
End With
End Sub
 
Cảm ơn excel_lv1.5 nhiều!

Nếu trong trường hợp các ô của mình đều là công thức thì code này không chạy được.

Ví dụ: Mình cần format ở cột D của file attach.

Cảm ơn bạn.
 

File đính kèm

  • Example2.xlsx
    9.4 KB · Đọc: 6
Web KT
Back
Top Bottom