Trong một số bài viết về Excel lần trước thì mình đã hướng dẫn với các bạn cách chèn ảnh hàng loạt trong file Excel và cố định trong ô, cũng như cách chèn hình ảnh vào khung Comment bằng cách sử dụng code VBA rồi.
Và để giúp các bạn có thêm nhiều lựa chọn trong khi thao tác với hình ảnh trên file Excel thì ngày hôm nay mình sẽ tiếp tục chia sẻ với bạn một thủ thuật khá đặc biệt nữa.
Vâng ! Đó chính là cách chèn hình ảnh trực tuyến vào Excel thông qua URL bằng code VBA. Hỗ trợ các bạn trong việc lên danh sách, thống kê đơn hàng, hay quản lý websile có hình ảnh minh hoạ được dễ dàng và nhanh chóng hơn.
Đọc thêm:
- Cách tính tỷ lệ phần trăm trong Excel, tính % trong Excel
- Cách dùng hàm tra cứu thông tin và hình ảnh trên file Excel
Cách chèn hình ảnh trực tuyến hàng loạt vào Excel
+ Bước 1: Đầu tiên để chèn hình ảnh vào file Excel thông qua URL thì bạn cần sao chép các đường link (URL) của những hình ảnh mà bạn muốn chèn trước.
Cái này thì đơn giản rồi, bạn chỉ cần truy cập vào các trang web có chứa hình ảnh mà bạn muốn lấy => và click chuột phải vào hình ảnh => chọn Sao chép địa chỉ hình ảnh
=> Rồi Paste
vào các ô tương ứng trên Excel.
+ Bước 2: Sau khi đã Sao chép đủ các URL hình ảnh vào Excel => bây giờ bạn mở tab Developer ra => chọn Visual Basic
.
Hoặc là bạn nhấn tổ hợp phím ALT + F11 để mở trình soạn code VBA trong Excel cho nhanh nhé.
+ Bước 3: Tại hộp thoại Microsoft Visual Basic for Applications
=> bạn click vào tab Insert
trên thanh Menu => và chọn Module
.
+ Bước 4: Rồi copy đoạn mã code sau…..
Sub URLPictureInsert()
‘Updateby Extendoffice 20161116
Dim Pshp As Shape
Dim xRg As Range
Dim xCol As Long
On Error Resume Next
Application.ScreenUpdating = False
Set Rng = ActiveSheet.Range(“A2:A7“)
For Each cell In Rng
filenam = cell
ActiveSheet.Pictures.Insert(filenam).Select
Set Pshp = Selection.ShapeRange.Item(1)
If Pshp Is Nothing Then GoTo lab
xCol = cell.Column + 1
Set xRg = Cells(cell.Row, xCol)
With Pshp
.LockAspectRatio = msoFalse
.Width = 100
.Height = 100
.Top = xRg.Top + (xRg.Height – .Height) / 2
.Left = xRg.Left + (xRg.Width – .Width) / 2
End With
lab:
Set Pshp = Nothing
Range(“A2“).Select
Next
Application.ScreenUpdating = True
End Sub
…. và Paste vào hộp thoại Module. Sau đó bạn hãy sửa các thông tin mà mình đã bôi đổ bên trên cho phù hợp với file Excel của bạn:
- Ô các chứa URL Range (“A2:A7”)
- Column+1 tức là ô sẽ xuất ảnh liền kề ô chứa URL.
- A2 là ô đầu tiên có chứa URL
+ Bước 5: Rồi bạn hãy nhấn nút Run
để thực thi.
Ngoài ra bạn có thể thay đổi chiều dài và chiều cao hiển thị hình ảnh tại phần Width = 100
và Height = 100
, để lấy hình vuông.
Hoặc chỉnh sửa tại Height và Width để chỉnh sửa chiều cao và rộng cho hình ảnh.
+ Bước 6: Vâng, ngay sau khi nhấn Run thì bạn sẽ có được kết quả trong file Excel rồi..
Nhưng chưa xong đâu, bây giờ để làm gọn gàng file Excel hơn thì bạn có thể click chọn cột chứa URL => chọn Hide
để ẩn, hoặc Delete
để xoá khỏi bảng tính nhé.
Cuối cùng ta có được kết quả như hình bên dưới…
- Có thể bạn đang tìm: Thủ thuật lưu file Excel có chứa code Macros VBA Excel
Lời kết
Okay vậy là xong, mình vừa hướng dẫn với các bạn một mẹo nhỏ trong việc chèn hình ảnh trực tuyến vào Excel bằng code VBA một cách nhanh chóng và đơn giản rồi nhé.
Với cách làm này thì bạn có thể dễ dàng chèn hình ảnh hàng loạt vào Excel mà không mất công tải hình ảnh về, cũng như không mất công Resize lại kích thước ảnh..
Đến đây thì bài hướng dẫn cách chèn hình ảnh bằng URL trên file Excel của mình cũng xin được tạm dừng. Hi vọng thủ thuật này sẽ hữu ích trong công việc của các bạn.
Chúc các bạn thành công !
CTV: Lương Trung – Blogchiasekienthuc.com
Xin chào bạn
Trường hợp của mình có nhiều ảnh, đuôi ảnh có thể có hai định dạng là jpg hoặc png. Nên cột A mình để link ảnh đuôi jpg, cột B là link ảnh đuôi png, cột C là cột xuất ảnh. Mình muốn viết macro sao cho, nếu từ link của cột A không xuất ra ảnh được thì lấy link ở cột B, nếu có ảnh rồi thì kết thúc xử lý.
File excel của mình có 4 sheet cần xử lý xuất ảnh, các cột chứa link ảnh và xuất ảnh ở các sheet có hơi khác nhau nhưng đều có 2 cột link ảnh như trên. Nếu xuất ra MsgBox như trong bài https://blogchiasekienthuc.com/hoc-office/chen-anh-hang-loat-trong-o-excel.html thì phải chọn hơi nhiều nên mình muốn cố định vùng link ảnh và vùng xuất ảnh trong code luôn.
Mình chưa biết gì về macro, từ trước tới giờ toàn dán ảnh bằng tay cả vài trăm cái thấy cực quá nên search trên mạng thấy bài của bạn hay quá mà chưa biết sửa như thế nào cho hợp với file của mình. Mong bạn chỉ giúp.
Xin cảm ơn chủ blog rất nhiều.
Cái này khó đối với mình rồi, chờ cao nhân về Excel thôi 🙂
Nếu bạn có nghiên cứu được hoặc học hỏi được ở đâu thì chia sẻ lại cách làm cho anh em nha 😀
Cảm ơn bạn đã trả lời.
Mình sẽ tìm hiểu, nếu tìm được phương án giải quyết hay sẽ chia sẻ với mọi người nhé.