Khả năng cập nhật của các ActiveX Object khá kém, vì thế thay vì dùng Image, bạn hãy thay bằng 1 Shape (hình chữ nhật) là xongĐúng rồi. Cái này mà thay printpreview bằng printout thì khá hữu dụng đấy
Nhưng mình chưa làm được. Các dữ liệu text thì chuyển nhưng hình thì cứ đứng yên
Private Sub CommandButton1_Click()
Dim cls As Range
For Each cls In Sheet1.Range("b2:b4")
[g2] = cls
Sheet1.Shapes("Rec1").Fill.UserPicture ThisWorkbook.Path & "\" & cls & ".jpg"
Application.ThisWorkbook.Worksheets.PrintPreview
Next
End Sub