Một hình dạng nội tuyến không có văn bản gói, chỉ có hình dạng thông thường làm, vì vậy bạn phải chuyển đổi hình dạng nội tuyến. Khi thực hiện việc này theo kiểu lặp khi macro được thiết lập để thực hiện, tổng số hình dạng nội tuyến trong tài liệu sẽ thay đổi theo mỗi lần lặp và tổng số mới được tính toán lại. Trong trường hợp tốt nhất, điều này thực sự có thể làm chậm quá trình và trong trường hợp xấu nhất, các đối tượng có thể bị bỏ lỡ.
Cách khắc phục là làm việc ngược từ hình dạng nội tuyến cuối cùng sang hình đầu tiên.
Sub resize()
Dim i As Long, rng As Range
With ActiveDocument
For i = .InlineShapes.Count To 1 Step -1
With .InlineShapes(i)
.ScaleHeight = 50
.ScaleWidth = 50
Set rng = .Range
.ConvertToShape
rng.ShapeRange(1).WrapFormat.Type = wdWrapTopBottom
End With
Next i
End With
End Sub