thang_nguyen1
Thành viên hoạt động
- Tham gia
- 6/10/16
- Bài viết
- 136
- Được thích
- 8
Sub ResizePictureCells()
Dim pic As Shape
For Each pic In ActiveSheet.Shapes
With pic.TopLeftCell
pic.LockAspectRatio = 0
pic.top = .top
pic.left = .left
pic.Width = .Width
pic.Height = .Height
End With
Next pic
End Sub
em muốn ảnh nhỏ hơn ô một chút thì làm như thế nào ạNếu bạn muốn viiết code cho Sub ResizePictureCells hiện có thì
Mã:Sub ResizePictureCells() Dim pic As Shape For Each pic In ActiveSheet.Shapes With pic.TopLeftCell pic.LockAspectRatio = 0 pic.top = .top pic.left = .left pic.Width = .Width pic.Height = .Height End With Next pic End Sub
Tự thêm bớt deltaem muốn ảnh nhỏ hơn ô một chút thì làm như thế nào ạ
Sub ResizePictureCells()
Dim delta As Double, pic As Shape
delta = 3
For Each pic In ActiveSheet.Shapes
With pic.TopLeftCell
pic.LockAspectRatio = 0
pic.top = .top + delta
pic.left = .left + delta
pic.Width = .Width - 2 * delta
pic.Height = .Height - 2 * delta
End With
Next pic
End Sub
Cảm ơn thầy rất nhiều ạ. Em đã làm file add-in rồi, rất tiện luôn!Tự thêm bớt delta
Mã:Sub ResizePictureCells() Dim delta As Double, pic As Shape delta = 3 For Each pic In ActiveSheet.Shapes With pic.TopLeftCell pic.LockAspectRatio = 0 pic.top = .top + delta pic.left = .left + delta pic.Width = .Width - 2 * delta pic.Height = .Height - 2 * delta End With Next pic End Sub
Vậy với Merge Cells thì mình làm thế nào ạ?Tự thêm bớt delta
Mã:Sub ResizePictureCells() Dim delta As Double, pic As Shape delta = 3 For Each pic In ActiveSheet.Shapes With pic.TopLeftCell pic.LockAspectRatio = 0 pic.top = .top + delta pic.left = .left + delta pic.Width = .Width - 2 * delta pic.Height = .Height - 2 * delta End With Next pic End Sub
Dùng cho toàn ô đơn, toàn ô kết hợp, và lẫn lỗn vừa có ô đơn vừa có ô kết hợp.Vậy với Merge Cells thì mình làm thế nào ạ?
Option Explicit
Sub ResizePictureCells()
Dim delta As Double, pic As Shape
delta = 3
For Each pic In ActiveSheet.Shapes
With pic.TopLeftCell
pic.LockAspectRatio = 0
pic.Top = .MergeArea.Top + delta
pic.Left = .MergeArea.Left + delta
pic.Width = .MergeArea.Width - 2 * delta
pic.Height = .MergeArea.Height - 2 * delta
End With
Next pic
End Sub
Phần này đang chọn hết tất cả ảnh trong file của mình ( bao gồm cả logo, tiêu đề...)Dùng cho toàn ô đơn, toàn ô kết hợp, và lẫn lỗn vừa có ô đơn vừa có ô kết hợp.
Mã:Option Explicit Sub ResizePictureCells() Dim delta As Double, pic As Shape delta = 3 For Each pic In ActiveSheet.Shapes With pic.TopLeftCell pic.LockAspectRatio = 0 pic.Top = .MergeArea.Top + delta pic.Left = .MergeArea.Left + delta pic.Width = .MergeArea.Width - 2 * delta pic.Height = .MergeArea.Height - 2 * delta End With Next pic End Sub