Trợ giúp code VBA (2 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

Tôi tuân thủ nội quy khi đăng bài

tvphong192

Thành viên mới
Tham gia
13/12/22
Bài viết
8
Được thích
0
Mình có đoạn code này khi chạy thì ảnh được chọn sẽ canh đều vừa trong 1 ô đó.Mình muốn mọi người giúp đỡ sửa code để có thể chọn nhiều ảnh để chạy cùng một lúc ạ!
Sub Macro1()
'
' Macro1 Macro
'
' Keyboard Shortcut: Ctrl+q
'

If TypeName(Selection) = "Picture" Then
With Selection
.ShapeRange.LockAspectRatio = False
.Height = .TopLeftCell.Height - 10
.Width = .TopLeftCell.Width - 10
.Top = .TopLeftCell.Top + 5
.Left = .TopLeftCell.Left + 5
End With
Else
MsgBox "Chon anh truoc di."
End If
End Sub
 

File đính kèm

Mình có đoạn code này khi chạy thì ảnh được chọn sẽ canh đều vừa trong 1 ô đó.Mình muốn mọi người giúp đỡ sửa code để có thể chọn nhiều ảnh để chạy cùng một lúc ạ!
Sub Macro1()
'
' Macro1 Macro
'
' Keyboard Shortcut: Ctrl+q
'

If TypeName(Selection) = "Picture" Then
With Selection
.ShapeRange.LockAspectRatio = False
.Height = .TopLeftCell.Height - 10
.Width = .TopLeftCell.Width - 10
.Top = .TopLeftCell.Top + 5
.Left = .TopLeftCell.Left + 5
End With
Else
MsgBox "Chon anh truoc di."
End If
End Sub
Thử code . . . . .
Mã:
Sub Macro1()
'
' Macro1 Macro
'
' Keyboard Shortcut: Ctrl+q
'
  Dim pic As Variant
  If TypeName(Selection) = "Picture" Then
    Call ABC(Selection)
  ElseIf TypeName(Selection) = "DrawingObjects" Then
    For Each pic In Selection
      If TypeName(pic) = "Picture" Then Call ABC(pic)
    Next pic
  Else
        MsgBox "Chon anh truoc di."
  End If
End Sub

Private Sub ABC(ByVal pic As Variant)
  With pic
    .ShapeRange.LockAspectRatio = False
    .Height = .TopLeftCell.Height - 10
    .Width = .TopLeftCell.Width - 10
    .Top = .TopLeftCell.Top + 5
    .Left = .TopLeftCell.Left + 5
  End With
End Sub
 
Web KT

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

Back
Top Bottom