Đồ họa chia tỷ lệ trong Macro (Microsoft Word)
Bạn có thể có nhu cầu thường xuyên chia tỷ lệ đồ họa trong tài liệu của mình theo một tỷ lệ nhất định. Việc sử dụng các menu để thực hiện việc chia tỷ lệ có thể gây mệt mỏi, vì vậy bạn có thể muốn thực hiện việc chia tỷ lệ bằng cách sử dụng macro mà bạn có thể gán cho một nút trên thanh công cụ hoặc một phím tắt. Macro sau sẽ xử lý việc chia tỷ lệ rất tốt:
Sub PictSize() Dim PercentSize As Integer PercentSize = InputBox("Enter percent of full size", _ "Resize Picture", 75) If Selection.InlineShapes.Count > 0 Then Selection.InlineShapes(1).ScaleHeight = PercentSize Selection.InlineShapes(1).ScaleWidth = PercentSize Else Selection.ShapeRange.ScaleHeight Factor:=(PercentSize / 100), _ RelativeToOriginalSize:=msoCTrue Selection.ShapeRange.ScaleWidth Factor:=(PercentSize / 100), _ RelativeToOriginalSize:=msoCTrue End If End Sub
Trước tiên, macro yêu cầu tỷ lệ phần trăm mà bạn muốn chia tỷ lệ hình ảnh đã chọn, cung cấp 75 (75%) làm mặc định. Khi bạn chỉ định một tỷ lệ phần trăm, macro sau đó sẽ kiểm tra xem hình ảnh được chọn là đồ họa nội tuyến hay đồ họa nổi. Lý do để làm điều này là đặc điểm kỹ thuật đối tượng khác nhau trong mỗi trường hợp, cũng như cách quy mô được chỉ định. Các đối tượng nội tuyến thuộc bộ sưu tập InlineShapes, trong khi các đối tượng nổi được thiết lập bằng cách sử dụng đối tượng ShapeRange.
Nếu bạn muốn thay đổi kích thước tất cả các đồ họa trong tài liệu của mình theo cùng một tỷ lệ phần trăm, thì bạn chỉ cần sửa đổi macro ở trên để nó đi qua từng đồ họa nội tuyến và sau đó là từng đồ họa nổi.
Sub AllPictSize() Dim PercentSize As Integer Dim oIshp As InlineShape Dim oshp As Shape PercentSize = InputBox("Enter percent of full size", _ "Resize Picture", 75) For Each oIshp In ActiveDocument.InlineShapes With oIshp .ScaleHeight = PercentSize .ScaleWidth = PercentSize End With Next oIshp For Each oshp In ActiveDocument.Shapes With oshp .ScaleHeight Factor:=(PercentSize / 100), _ RelativeToOriginalSize:=msoCTrue .ScaleWidth Factor:=(PercentSize / 100), _ RelativeToOriginalSize:=msoCTrue End With Next oshp End Sub
_Lưu ý: _
Nếu bạn muốn biết cách sử dụng các macro được mô tả trên trang này (hoặc trên bất kỳ trang nào khác trên các trang WordTips), tôi đã chuẩn bị một trang đặc biệt bao gồm thông tin hữu ích.
WordTips là nguồn của bạn để đào tạo Microsoft Word hiệu quả về chi phí.
(Microsoft Word là phần mềm xử lý văn bản phổ biến nhất trên thế giới.) Mẹo này (7694) áp dụng cho Microsoft Word 97, 2000, 2002 và 2003. Bạn có thể tìm thấy phiên bản của mẹo này cho giao diện ribbon của Word (Word 2007 và sau này) tại đây: