Một câu hỏi về hàm if khi đối tượng được format.

Liên hệ QC

yeucuocsong78

Thành viên chính thức
Tham gia
18/11/10
Bài viết
64
Được thích
52
Nghề nghiệp
Xuất nhập khẩu + trợ lý bán hàng dầu Shell
Các chuyên gia làm ơn cho hỏi, có nào sử dụng hàm if trong trường hợp sau không?


Nếu ô A1 in đậm (hoặc màu xanh, màu đỏ, in nghiêng...) thì ......

Nếu có thì sử dụng thế nào?

Vui lòng trả lời em sớm nhé. Thanks
 
Lần chỉnh sửa cuối:
Điều kiện format này theo mình với trình độ hạn hẹp chắc nghĩ là không làm được mà chỉ làm ngược lại nếu A1... thì in đậm (hoặc màu xanh, màu đỏ, in nghiêng...)
 
Cám ơn bạn. Nếu làm ngược lại thì mình biết làm rồi, mình chỉ muốn hỏi cái chiều xuôi kia cơ.
 
Các chuyên gia làm ơn cho hỏi, có nào sử dụng hàm if trong trường hợp sau không?
Nếu ô A1 in đậm (hoặc màu xanh, màu đỏ, in nghiêng...) thì ......
Nếu có thì sử dụng thế nào?
Vui lòng trả lời em sớm nhé. Thanks
Bài toán này không thể giải quyết được với các hàm Excel nhưng có thể giải quyết được với VBA.
Bạn hãy gửi file ví dụ lên để được hướng dẫn chi tiết hơn nhé.
 
Đây là file mình muốn hỏi, giúp mình với nhé.
 

File đính kèm

  • hoi ve ham if.xls
    14.5 KB · Đọc: 24
Đây là file mình muốn hỏi, giúp mình với nhé.
Bạn sử dụng code sau:
PHP:
Sub GhiChu()
    Dim Rng As Range
    Sheet1.Activate
    For Each Rng In Range([A3], [A65536].End(xlUp))
        Rng.Offset(, 1) = IIf(Rng.Font.Bold, "Ok", "")
    Next
End Sub
Mỗi khi cần đánh lại Ghi chú, bạn chỉ cần chạy code là xong.
 

File đính kèm

  • hoi ve ham if.rar
    8.8 KB · Đọc: 22
Bạn dùng đoạn code sau:
PHP:
Sub Macro1()
For i = 1 To 600
If Range("A" & i).Font.Bold = True Then
Range("B" & i) = "OK"
Else
Range("B" & i) = ""
End If
Next
End Sub
 
Đây là file mình muốn hỏi, giúp mình với nhé.

Bạn làm như sau:
- Đặt con trỏ chuột tại dòng 3
- Bấm Ctrl + F3, vào Defined Name, đặt 1 name tên là Bold, có công thức tham chiếu =GET.CELL(20+NOW()*0, $A3)
- Tại cell B3, gõ công thức =IF(Bold,"OK","") và kéo fill xuống
 
Bạn dùng đoạn code sau:
PHP:
Sub Macro1()
For i = 1 To 600
If Range("A" & i).Font.Bold = True Then
Range("B" & i) = "OK"
Else
Range("B" & i) = ""
End If
Next
End Sub
Dùng con số 600 ở đây là hơi áp đặt à nghen, bởi vì có thể thiếu, cũng có thể thừa. Có thể thay con số này bởi con số [A65536].End(xlUp).Row thì hợp lý hơn.
 
Bạn làm như sau:
- Đặt con trỏ chuột tại dòng 3 có phải
là đặt chỗ nào bất kỳ của dòng 3?

- Bấm Ctrl + F3, vào Defined Name, đặt 1 name tên là Bold, có công thức tham chiếu =GET.CELL(20+NOW()*0, $A3) Công thức này gõ vào đâu ạ?
- Tại cell B3, gõ công thức =IF(Bold,"OK","") và kéo fill xuống

Em vẫn chưa hiểu lắm, bác ndu chỉ giúp em với ạ.
 
Em vẫn chưa hiểu lắm, bác ndu chỉ giúp em với ạ.
Câu hỏi 1: Đúng là như vậy, chỉ cần đặt tại ô bất kỳ trên dòng 3 là được.
Câu hỏi 2: Chữ Bold gõ tại vị trí Name, còn =GET.CELL(20+NOW()*0, $A3) đặt tại vị trí Refers to.
 
Bạn sử dụng code sau:
PHP:
Sub GhiChu()
    Dim Rng As Range
    Sheet1.Activate
    For Each Rng In Range([A3], [A65536].End(xlUp))
        Rng.Offset(, 1) = IIf(Rng.Font.Bold, "Ok", "")
    Next
End Sub
Mỗi khi cần đánh lại Ghi chú, bạn chỉ cần chạy code là xong.

ơ cái file bạn gửi thì làm được rồi, nhưng mình chưa biết cách để làm như bạn, mình có biết gì về VBA đâu. Vui lòng chỉ cho mình từng bước một với.
 
Câu hỏi 1: Đúng là như vậy, chỉ cần đặt tại ô bất kỳ trên dòng 3 là được.
Câu hỏi 2: Chữ Bold gõ tại vị trí Name, còn =GET.CELL(20+NOW()*0, $A3) đặt tại vị trí Refers to.

Chuẩn luôn, đúng cái em cần. Nhưng phiền bác ndu giải thích giùm cái cụm =GET.CELL(20+NOW()*0, $A3) với, vì em muốn áp dụng công thức này vào bảng của em mà không biết qui luật nó ra làm sao. hì hì....
 
Chuẩn luôn, đúng cái em cần. Nhưng phiền bác ndu giải thích giùm cái cụm =GET.CELL(20+NOW()*0, $A3) với, vì em muốn áp dụng công thức này vào bảng của em mà không biết qui luật nó ra làm sao. hì hì....
Đó là hàm macro 4 bạn à --> Muốn hiểu thì download tài liệu về xem thôi
Giải thích sơ qua về hàm GET.CELL(type_num, reference)

- type_num: là 1 số nào đó từ 1 đến 66, mỗi số có công dụng riêng, trong đó nếu type_num = 20 thì nó có nghĩa là kiểm tra xem reference được format là Bold hay không?
- reference: Tham chiếu của hàm
- Riêng đoạn + NOW()*0 là tôi tự thêm vào, với mục đích khi có thay đổi, chỉ cần bấm F9 là hàm cập nhật lại kết quả (không có đoạn này, nó cóc cập nhật)
Mấy hàm này chỉ có thể đặt trong Defined Name, không dùng trực tiếp được trên Sheet
 
Đó là hàm macro 4 bạn à --> Muốn hiểu thì download tài liệu về xem thôi
Giải thích sơ qua về hàm GET.CELL(type_num, reference)

- type_num: là 1 số nào đó từ 1 đến 66, mỗi số có công dụng riêng, trong đó nếu type_num = 20 thì nó có nghĩa là kiểm tra xem reference được format là Bold hay không?
- reference: Tham chiếu của hàm
- Riêng đoạn + NOW()*0 là tôi tự thêm vào, với mục đích khi có thay đổi, chỉ cần bấm F9 là hàm cập nhật lại kết quả (không có đoạn này, nó cóc cập nhật)
Mấy hàm này chỉ có thể đặt trong Defined Name, không dùng trực tiếp được trên Sheet

Ta có thể dùng hàm này mà không dùng name mà Thầy.
 
Em đã hiểu ra vấn đề, cám ơn các "chuyên gia" đã giúp đỡ trong topic này.
 
Web KT

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

Back
Top Bottom