VBA insert Picture từ bảng biểu sheet này qua sheet khác

Liên hệ QC

Harry90

Thành viên mới
Tham gia
9/8/19
Bài viết
34
Được thích
-13
Xin các Pro chỉ giao giúp em!
em tạo 1 bảng biểu ở sheet Form sẽ input thông tin, hình ảnh ứng viên sang sheet "Danhsach"
em đang gặp khó khăn khi xử lý với hình ảnh khi không chuyển từ sheet "Form" sang sheet"Danhsach"
em đính kèm file bên dưới bài viết
Rất mong anh/chị sửa code giúp em ạ
Em xin cảm ơn rất nhiều ạ
1668826740934.png
 

File đính kèm

  • Form nhap lieu.xlsm
    167 KB · Đọc: 19
Xin các Pro chỉ giao giúp em!
em tạo 1 bảng biểu ở sheet Form sẽ input thông tin, hình ảnh ứng viên sang sheet "Danhsach"
em đang gặp khó khăn khi xử lý với hình ảnh khi không chuyển từ sheet "Form" sang sheet"Danhsach"
em đính kèm file bên dưới bài viết
Rất mong anh/chị sửa code giúp em ạ
Em xin cảm ơn rất nhiều ạ
View attachment 283564
Đơn giản nhất là bạn khi nào lấy ảnh vào excel.Bạn đổi tên ảnh đi rồi khi chuyển nó cũng rễ và khi sử dụng nó đơn giản.
 
Upvote 0
Tôi sửa trên nền code của bạn.
Cụ thể:
- Thêm 1 thủ tục mới
Mã:
Sub CopyImage(PasteCell As String)
    Dim pic As Shape, piccopy As Shape
    
    For Each pic In ActiveSheet.Shapes
        If pic.Type = msoPicture Then
            Set piccopy = pic.Duplicate
            piccopy.Cut
            Exit For
        End If
    Next
    Sheet2.Select
    Sheet2.Range(PasteCell).PasteSpecial xlPasteAll
    
    With ActiveSheet.Shapes(ActiveWindow.Selection.Name)
        .Left = Sheet2.Range(PasteCell).Left + (Sheet2.Range(PasteCell).Width - .Width) / 2
        .Top = Sheet2.Range(PasteCell).Top + (Sheet2.Range(PasteCell).Height - .Height) / 2
        .Placement = 1
    End With
    
    Sheet1.Select
End Sub
- Thay thế 1 dòng code
Mã:
'danh_sach.Range("F" & hang_cuoi).Value = form.Range("C8").Value thay the:
 Call CopyImage("F" & hang_cuoi)
 
Upvote 0
Tôi sửa trên nền code của bạn.
Cụ thể:
- Thêm 1 thủ tục mới
Mã:
Sub CopyImage(PasteCell As String)
    Dim pic As Shape, piccopy As Shape
   
    For Each pic In ActiveSheet.Shapes
        If pic.Type = msoPicture Then
            Set piccopy = pic.Duplicate
            piccopy.Cut
            Exit For
        End If
    Next
    Sheet2.Select
    Sheet2.Range(PasteCell).PasteSpecial xlPasteAll
   
    With ActiveSheet.Shapes(ActiveWindow.Selection.Name)
        .Left = Sheet2.Range(PasteCell).Left + (Sheet2.Range(PasteCell).Width - .Width) / 2
        .Top = Sheet2.Range(PasteCell).Top + (Sheet2.Range(PasteCell).Height - .Height) / 2
        .Placement = 1
    End With
   
    Sheet1.Select
End Sub
- Thay thế 1 dòng code
Mã:
'danh_sach.Range("F" & hang_cuoi).Value = form.Range("C8").Value thay the:
 Call CopyImage("F" & hang_cuoi)
Em xin cảm ơn ạ!
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom