Thì tôi đã nói rồi mà. Bạn có 2 lựa chọn:
- đặt 1 nút GetImages như bây giờ và mỗi lần mở tập tin phải nhấn nút.
- gọi Sub GetImages trong vd. Workbook_Open. Tức: mở tập tin -> bỏ nút GetImages -> Alt + F11 -> đúp chuột vào ThisWorkbook -> dán code sau và lưu lại tập tin
Mã:
Private Sub Workbook_Open()
GetImages
End Sub
-------------
Nếu nói như bạn
Kieutri
Thì phải ý thức rõ như sau - nói rõ thôi để khỏi bất ngờ nếu sảy ra những trường hợp mà tôi liệt kê:
Giả sử bạn chạy code bằng cách nhấn nút hoặc gọi GetImages trong Workbook_Open và có 10 ảnh, 10 nội dung. Nếu bây giờ bạn chỉ copy tập tin Excel sang 1 folder khác mà không là copy folder chứa tập tin Excel sang folder khác thì cho dù bạn có nút GetImages và bạn nhấn nó khi mở tập tin hay không có nút mà chỉ có code tôi ghi ở trên thì:
- nếu folder mới chứa tập tin Excel không có ảnh thì cột nội dung sẽ trống nhưng cột ảnh vẫn có 10 ảnh. Tất nhiên là 10 ảnh lỗi.
- nếu folder mới có ít hơn 10 ảnh, vd. chỉ có 8 ảnh thì cột nội dung chỉ có 8 nội dung nhưng cột ảnh vẫn có 10 ảnh - 8 ảnh mới và 2 ảnh lỗi.
Thậm chí nếu không copy tập tin Excel đi đâu nhưng một ngày đẹp trời bạn lỡ xóa 2 ảnh thì ngày đẹp trời hôm sau khi bạn mở tập tin Excel thì bạn vẫn có 10 ảnh - 8 ảnh tốt và 2 ảnh xấu (do đã xóa) trong khi cột nội dung chỉ có 8 nội dung.
Những cái tôi chỉ ra chỉ là đề phòng khi lỡ xóa ảnh, khi chỉ copy tập tin Excel sang chỗ khác. Tất nhiên những ảnh lỗi chỉ thừa và làm ngứa mắt thôi chứ không gây tác hại gì, không gây lỗi.
Nếu muốn sửa thì cũng rất dễ nhưng tôi không sửa đâu. Ở trên tôi chỉ nêu cách gọi sub GetImages. Còn sửa code của GetImages thì tôi không dám làm. Như thế là vi phạm quyền tác giả.