Em đã tìm ra câu trả lời, không rõ có tối ưu khôngEm chào thầy, khi sử dụng hàm này, thì khi thay đổi giá trị của biến Pic trong hàm về giá trị rỗng thì nó vẫn hiển thị ảnh cũ, vậy có cách nào xử lí không ạ.
Em xin cảm ơn
Sau đó mình dùng như sau:Option ExplicitFunction Xoaanh(anh As String, Cel As Range) As String
On Error Resume Next
Application.Volatile
If anh = "" Then Cel(1, 1).Comment.Delete
End Function
=IF(A15<>"";CommPic(link(B15);D15);Xoaanh(B15;D15))
Function link(piclink As String) As Stringlink = ThisWorkbook.Path & "\hinhanh\" & piclink & ".jpg"
If piclink = "" Then link = ""
End Function
dạ, thưa thầy. file mẫu thầy hướng dẫn rất hữu ích với công việc của em. Tuy chỉ có 1 cái là em vẫn ko làm được, là khi e copy nguyên ảnh và giá trị biến rồi insert thêm cột thì file lỗi ko hiển thị được ảnh nữa. e ko hiểu lắm (mù tịt). Mong thầy khai sáng chút kiến thức ạ. Tiện thể cho e hỏi nhỏ, với một người đi làm như em chỉ có thời gian nghiên cứu buổi đêm thì thầy có lớp học online nào dạy excell nâng cao VBA không ạ!Dễ òm!
Chình lại code tí xíu
Bảo đảm merge bao nhiêu cell thì ảnh sẽ "trải ra" bấy nhiêu cellPHP:Function CommPic(Pic As String, Cel As Range) As String On Error Resume Next Application.Volatile Cel(1, 1).Comment.Delete If Cel(1, 1).Comment Is Nothing Then Cel(1, 1).AddComment Cel(1, 1).Comment.Text vbLf With Cel(1, 1).Comment.Shape .Left = Cel.Left: .Top = Cel.Top: .Visible = True .Width = Cel.Width: .Height = Cel.Height .Fill.UserPicture Pic End With End Function