Chèn hình ảnh tự động vào excel

Liên hệ QC
Em chào anh ndu96081631 ạ!
E
m có xem các bài viết của Anh nhưng vẫn chưa biết cách làm. Em muốn nhờ Anh giúp đỡ giải thích giúp em cách chèn ảnh vào bảng tính, khi thay đổi mã ID thì ảnh cũng thay đổi theo ... :)

Bảng của em đây ạ, rất mong được giúp đỡ !
 
Em chào anh ndu96081631 ạ!
E
m có xem các bài viết của Anh nhưng vẫn chưa biết cách làm. Em muốn nhờ Anh giúp đỡ giải thích giúp em cách chèn ảnh vào bảng tính, khi thay đổi mã ID thì ảnh cũng thay đổi theo ... :)

Bảng của em đây ạ, rất mong được giúp đỡ !

Bạn xem bài viết tại đây nhé:
http://www.giaiphapexcel.com/forum/showthread.php?51408-Chèn-hình-vào-cell-bằng-hàm-tự-tạo
 
Em chào các anh chị,

Em có 1 file báo cáo. Em muốn chèn ảnh tự động vào cho file báo cáo này.
Tất cả ảnh được lưu với code của mã hàng tương ứng.
Có anh chị nào biết cách chèn ảnh tự động thì chỉ giúp em với.
Em có gửi file đính kèm, anh chị xem và giúp em với. Em đang cần gấp. Em cảm ơn anh chị nhiều.
 

File đính kèm

  • Chèn ảnh.rar
    275 KB · Đọc: 52
Em chào các anh chị,

Em có 1 file báo cáo. Em muốn chèn ảnh tự động vào cho file báo cáo này.
Tất cả ảnh được lưu với code của mã hàng tương ứng.
Có anh chị nào biết cách chèn ảnh tự động thì chỉ giúp em với.
Em có gửi file đính kèm, anh chị xem và giúp em với. Em đang cần gấp. Em cảm ơn anh chị nhiều.

- Chèn code dưới đây vào trong module:
Mã:
Function CommPic(ByVal Pic As String, Optional ByVal Cel As Range) As String
  Dim mRng As Range, comm As Comment, FSO As Object
  On Error Resume Next
  Application.Volatile
  Set FSO = CreateObject("Scripting.FileSystemObject")
  If Cel Is Nothing Then Set Cel = Application.ThisCell
  Cel(1, 1).Comment.Delete
  If Not FSO.FileExists(Pic) Then
    Pic = ThisWorkbook.Path & "\" & Pic
  End If
  If FSO.FileExists(Pic) Then
    If Cel(1, 1).Comment Is Nothing Then Cel(1, 1).AddComment
    Cel(1, 1).Comment.Text vbLf
    Set mRng = Cel(1, 1).MergeArea
    If mRng Is Nothing Then Set mRng = Cel(1, 1)
    Set comm = mRng(1, 1).Comment
    comm.Visible = True
    With comm.Shape
      .LockAspectRatio = msoFalse
      .Placement = xlMoveAndSize
      .Shadow.Visible = msoFalse
      .Line.Visible = msoFalse
      .AutoShapeType = msoShapeRectangle
      .Left = mRng.Left: .Top = mRng.Top
      .Width = mRng.Width: .Height = mRng.Height
      .Fill.UserPicture Pic
    End With
  End If
  Set FSO = Nothing
End Function
- Trên bảng tính, gõ vào cell D4 công thức:
Mã:
=CommPic(C4&".png")
Kéo fill xuống!
- Lưu file theo định dạng XLSM hoặc XLSB
Xong!
-----------------
Cuối cùng, nếu muốn tìm hiểu, nên vào chỗ này tham khảo:
http://www.giaiphapexcel.com/forum/showthread.php?51408-Chèn-hình-vào-cell-bằng-hàm-tự-tạo
 

File đính kèm

  • CommPic.rar
    292.6 KB · Đọc: 108
- Chèn code dưới đây vào trong module:
Mã:
Function CommPic(ByVal Pic As String, Optional ByVal Cel As Range) As String
  Dim mRng As Range, comm As Comment, FSO As Object
  On Error Resume Next
  Application.Volatile
  Set FSO = CreateObject("Scripting.FileSystemObject")
  If Cel Is Nothing Then Set Cel = Application.ThisCell
  Cel(1, 1).Comment.Delete
  If Not FSO.FileExists(Pic) Then
    Pic = ThisWorkbook.Path & "\" & Pic
  End If
  If FSO.FileExists(Pic) Then
    If Cel(1, 1).Comment Is Nothing Then Cel(1, 1).AddComment
    Cel(1, 1).Comment.Text vbLf
    Set mRng = Cel(1, 1).MergeArea
    If mRng Is Nothing Then Set mRng = Cel(1, 1)
    Set comm = mRng(1, 1).Comment
    comm.Visible = True
    With comm.Shape
      .LockAspectRatio = msoFalse
      .Placement = xlMoveAndSize
      .Shadow.Visible = msoFalse
      .Line.Visible = msoFalse
      .AutoShapeType = msoShapeRectangle
      .Left = mRng.Left: .Top = mRng.Top
      .Width = mRng.Width: .Height = mRng.Height
      .Fill.UserPicture Pic
    End With
  End If
  Set FSO = Nothing
End Function
- Trên bảng tính, gõ vào cell D4 công thức:
Mã:
=CommPic(C4&".png")
Kéo fill xuống!
- Lưu file theo định dạng XLSM hoặc XLSB
Xong!
-----------------
Cuối cùng, nếu muốn tìm hiểu, nên vào chỗ này tham khảo:
http://www.giaiphapexcel.com/forum/showthread.php?51408-Chèn-hình-vào-cell-bằng-hàm-tự-tạo



Cảm ơn anh nhiều. Anh có cách nào để lưu file ở dang xls thông thường thay vì xlsb không ạ?
 
Cảm ơn anh nhiều. Anh có cách nào để lưu file ở dang xls thông thường thay vì xlsb không ạ?

Lưu thành xls đương nhiên được rồi! Sao bạn không thí nghiệm trước khi hỏi?
(Tôi đề nghị lưu thành xlsm và xlsb vì định dạng này sẽ giảm dung lượng cho file)
 
chèn hình tự động

Sorry... tôi sơ xuất!
- Bạn xóa mấy tấm ảnh (đã chèn) tại sheet Z7
- Tiếp theo bấm Alt + F11, thay đoạn:
Sheet1.Shapes(PicName).Delete
Thành:
ActiveSheet.Shapes("Pic").Delete
Thay:
.Name = PicName
Thành:
.Name = "Pic"
Thay:
[B12:L22]
Thành:
[B12:O22]

Hoặc chạy file mới này

sao minh cung chèn hinh giong file nay ma hi go hinh k ra vay? troi oi tieng viet go k dc.
 
Kính gửi thầy ndu96081631 ,

Em có nghiên cứu các bài của thầy về "tự động insert ảnh và cell" em thấy:
- phần lớn nhu cầu của mọi người cũng như em là: căn cứ vào mã sản phẩm (đồng thời là tên ảnh) tại cột mã hàng -> tự động insert ảnh vào cell trong cột ảnh (phục vụ báo giá, quản lý danh mục hàng....)
- vấn đề là: ảnh sản phẩm không đồng nhất về kích thước nên khi áp dụng code thầy cho, ảnh fill vào sell làm cho hình ảnh bị méo mó -> ko đảm bảo mục tiêu mô tả sản phẩm; Ảnh không được đặt theo dạng Middle + center trong cell -> không đạt tính thẩm mỹ
Em rất mong thầy giúp em mấy vấn đề trên ạ!



 
Kính gửi thầy ndu96081631 ,

Em có nghiên cứu các bài của thầy về "tự động insert ảnh và cell" em thấy:
- phần lớn nhu cầu của mọi người cũng như em là: căn cứ vào mã sản phẩm (đồng thời là tên ảnh) tại cột mã hàng -> tự động insert ảnh vào cell trong cột ảnh (phục vụ báo giá, quản lý danh mục hàng....)
- vấn đề là: ảnh sản phẩm không đồng nhất về kích thước nên khi áp dụng code thầy cho, ảnh fill vào sell làm cho hình ảnh bị méo mó -> ko đảm bảo mục tiêu mô tả sản phẩm; Ảnh không được đặt theo dạng Middle + center trong cell -> không đạt tính thẩm mỹ
Em rất mong thầy giúp em mấy vấn đề trên ạ!



Tham khảo thêm chỗ này:
http://www.giaiphapexcel.com/forum/showthread.php?51408-Chèn-hình-vào-cell-bằng-hàm-tự-tạo
Chú ý code trong bài 112 nhé (đó là phiên bản mới nhất)
 
Kính gửi thầy ndu96081631

Em đã tham khảo phần chèn hình vô excel nhưng khi làm xong thì hình không hiện ra mà báo như thế này nhờ thầy giúp em cái.
"the linked image cannot be displayed the file may have been moved renamed or deleted verify that the link points to the correct file and location"

Trong file em có 2 sheet
Sheet 1 là 1 form và cần phải điền nhiều thông tin
Sheet 2 chứa toàn bộ thông tin cần điền cho form của sheet 1.
Em đánh số thứ tự thông tin: 1, 2, 3..... Tại sheet 1 em dùng lệnh Vlookup để điền thông tin vào form. Và khi cần thông tin nào thì em chỉ việc đánh số thứ tự vào là xong.
Hiện nay, do phải cập nhật cả phần hình ảnh vào trong Form của sheet 1 nhưng em không biết có cách nào để đưa được ảnh vào 1 cách tự động mà ko phải insert từng cái 1. Ví dụ: Khi em đánh số thứ tự 1 vào thì thông tin và hình ảnh của data 1 sẽ hiển thị, khi đánh số 2 vào thì thông tin và hình ảnh của data 2 sẽ hiển thị.
Nhờ thầy giúp giùm em.
 

File đính kèm

  • TEST.zip
    732.6 KB · Đọc: 31
em muốn cho size ảnh to lên thì làm cách nào ạ? e tải file mẫu về thì nhìn hình ảnh hơi nhỏ nên e muốn chỉnh cho to lên ạ
 
Nhờ anh chị GPE giúp đỡ về chèn hình vào excel. Dữ liệu ở dưới ạ
Cảm ơn các anh chị GPE trước
 

File đính kèm

  • THI NGHIEM CHEN HINH VAO EXCEL.rar
    173.8 KB · Đọc: 12
*** em đã làm được.
Chân thành cảm ơn các bác.


-------------
Các bác cho em đào cái chủ đề này lên với ạ.
TÌnh hình là em làm theo hướng dẫn (copy và chỉnh sơ sơ mấy cái địa chỉ của đoạn code của bác ndu96081631 tại #5) nhưng không thể hiện hình được.
Nhờ các bác sửa giúp em, được thì nhờ các bác chỉ chỗ sai và ý nghĩa giúp em với ạ.
Em xin cảm ơn ạ.
 

File đính kèm

  • ban thu.rar
    405.4 KB · Đọc: 11
Lần chỉnh sửa cuối:
Sorry... tôi sơ xuất!
- Bạn xóa mấy tấm ảnh (đã chèn) tại sheet Z7
- Tiếp theo bấm Alt + F11, thay đoạn:
Sheet1.Shapes(PicName).Delete
Thành:
ActiveSheet.Shapes("Pic").Delete
Thay:
.Name = PicName
Thành:
.Name = "Pic"
Thay:
[B12:L22]
Thành:
[B12:O22]

Hoặc chạy file mới này

Cảm ơn bác rất nhiều, em đã làm được.
Cảm ơn bác.
 
Cảm ơn bạn. Mình đã làm theo hướng dẫn được rồi.
Xin cho hỏi là làm thế nào để chèn ảnh lên trên chứ không phải sang ngang như hiện nay.

Đã thử chỉnh sửa code nhưng mà trình độ vẫn còn hạn hẹp mong bạn giúp cho.
 
Cho mình hỏi chút:
Mình cũng tương tự bạn #1, nhưng file ảnh của mình trong folder(vì nhiều file) thì có cách nào để khi mình nhập stt thì ảnh cũng được lấy trong folder và hiển thị không ạ?
Mình cảm ơn !
 
đâu nhất thiết cứ phải VBA để chèn ảnh nhỉ
 

File đính kèm

  • chen_anh.xlsx
    219.1 KB · Đọc: 50
Web KT
Back
Top Bottom