Chào mọi người!
Mình có code như sau:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Rng As Range, PicName As String, path As String
Dim i As Integer
Application.ScreenUpdating = False
On Error Resume Next
If Not Intersect([U3], Target) Is Nothing Then
Set Rng = Sheet3.Range(Sheet3.[B1], Sheet3.[T65536].End(xlUp))
PicName = Rng.Resize(, 1).Find(Target, LookAt:=xlWhole).Offset(, 20)
path = ActiveSheet.Range("U3").Value
Sheet1.Shapes(PicName).Delete
With ActiveSheet.Pictures.Insert(ThisWorkbook.path & "\Picture\" & path & "\" & "Site view.jpg ")
.Name = PicName
.Left = ActiveSheet.[G19:L44].Left
.Top = ActiveSheet.[G19:L44].Top
.Width = ActiveSheet.[G19:L44].Width
.Height = ActiveSheet.[G19:L44].Height
End with
End if
End Sub
Đoạn code trên chạy trên excel 2003 thì ảnh nằm trong G19:L44. Nhưng khi chạy trên excel 2007 thì bức ảnh lại không nằm trong ô G19:L44, mà thường lớn hơn
Có ai biết vì sao không? khắc phục thế nào?
Mình có code như sau:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Rng As Range, PicName As String, path As String
Dim i As Integer
Application.ScreenUpdating = False
On Error Resume Next
If Not Intersect([U3], Target) Is Nothing Then
Set Rng = Sheet3.Range(Sheet3.[B1], Sheet3.[T65536].End(xlUp))
PicName = Rng.Resize(, 1).Find(Target, LookAt:=xlWhole).Offset(, 20)
path = ActiveSheet.Range("U3").Value
Sheet1.Shapes(PicName).Delete
With ActiveSheet.Pictures.Insert(ThisWorkbook.path & "\Picture\" & path & "\" & "Site view.jpg ")
.Name = PicName
.Left = ActiveSheet.[G19:L44].Left
.Top = ActiveSheet.[G19:L44].Top
.Width = ActiveSheet.[G19:L44].Width
.Height = ActiveSheet.[G19:L44].Height
End with
End if
End Sub
Đoạn code trên chạy trên excel 2003 thì ảnh nằm trong G19:L44. Nhưng khi chạy trên excel 2007 thì bức ảnh lại không nằm trong ô G19:L44, mà thường lớn hơn
Có ai biết vì sao không? khắc phục thế nào?