Cho mình hỏi về macro hoặc code định dạng 1 cell

Liên hệ QC

SUPERGAMER

Thành viên mới
Tham gia
5/12/11
Bài viết
6
Được thích
0
Mình đang có 1 file excel gồm nhiều cell, mỗi cell gồm 2 hàng (Dòng 1 rồi ALT + Enter rồi dòng 2), giờ mình muốn cho dòng 1 in đậm, dòng 2 in nghiêng thì mình phải làm như thế nào?Vì mình có rất nhiều cell như vậy nên cần macro làm cho nhanh, mong các bác cho mình giải pháp, thanks mọi người, mình up file ví dụ cho mọi người tham khảo luôn
 

File đính kèm

Mình đang có 1 file excel gồm nhiều cell, mỗi cell gồm 2 hàng (Dòng 1 rồi ALT + Enter rồi dòng 2), giờ mình muốn cho dòng 1 in đậm, dòng 2 in nghiêng thì mình phải làm như thế nào?Vì mình có rất nhiều cell như vậy nên cần macro làm cho nhanh, mong các bác cho mình giải pháp, thanks mọi người, mình up file ví dụ cho mọi người tham khảo luôn
Quét chọn vùng dữ liệu và chạy code này:
PHP:
Sub Test()
  Dim Clls As Range
  For Each Clls In Selection
    If InStr(Clls.Value, vbLf) Then
      Clls.Characters(1, InStr(Clls.Value, vbLf)).Font.Bold = True
      Clls.Characters(InStr(Clls.Value, vbLf) + 1, Len(Clls)).Font.Italic = True
    End If
  Next
End Sub
Thật ra bạn cũng có thể tự nghiên cứu bằng công cụ record macro đấy
 
Upvote 0
à, còn mình muốn chỉnh font chữ và size trên mỗi hàng như vậy thì sao ạ?
 
Upvote 0
à, còn mình muốn chỉnh font chữ và size trên mỗi hàng như vậy thì sao ạ?
Ví dụ thế này:
- Chỉnh font chữ:
Clls.Characters(1, InStr(Clls.Value, vbLf)).Font.Name = "Arial"
- Chỉnh size chữ
Clls.Characters(1, InStr(Clls.Value, vbLf)).Font.Size =12
Bạn tự mình suy ra thêm nhé (chổ tô đỏ ấy)
 
Upvote 0
à, còn mình muốn chỉnh font chữ và size trên mỗi hàng như vậy thì sao ạ?

Nếu bạn muốn thực hiện nhiều lệnh định dạng Font thì viết nó trong With
Ví dụ:
Mã:
Sub Test()
    Dim Clls As Range
    For Each Clls In Selection
        If InStr(Clls.Value, vbLf) Then
            With Clls.Characters(1, InStr(Clls.Value, vbLf)).Font
                .Bold = True
                .Size = 24
                .ColorIndex = 3
            End With
            With Clls.Characters(InStr(Clls.Value, vbLf) + 1, Len(Clls)).Font
                .Italic = True
                .Size = 14
                .ColorIndex = 5
            End With
        End If
    Next
End Sub
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
Nếu bạn muốn thực hiện nhiều lệnh định dạng Font thì viết nó trong With
Ví dụ:
Mã:
Sub Test()
    Dim Clls As Range
    For Each Clls In Selection
        If InStr(Clls.Value, vbLf) Then
            With Clls.Characters(1, InStr(Clls.Value, vbLf)).Font
                .Bold = True
                .Size = 24
                .ColorIndex = 3
            End With
            With Clls.Characters(InStr(Clls.Value, vbLf) + 1, Len(Clls)).Font
                .Italic = True
                .Size = 14
                .ColorIndex = 5
            End With
        End If
    Next
End Sub
Hoặc 1 cách khác ít người biết:
PHP:
Sub Test()
  Dim Clls As Range, fnt1 As Font, fnt2 As Font
  For Each Clls In Selection
    If InStr(Clls.Value, vbLf) Then
      Set fnt1 = Clls.Characters(1, InStr(Clls.Value, vbLf)).Font
      Set fnt2 = Clls.Characters(InStr(Clls.Value, vbLf) + 1, Len(Clls)).Font
      fnt1.Bold = True
      fnt1.Size = 24
      fnt1.ColorIndex = 3
      fnt2.Italic = True
      fnt2.Size = 14
      fnt2.ColorIndex = 5
    End If
  Next
End Sub
Ẹc... Ẹc...
 
Upvote 0
Web KT

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

Back
Top Bottom