2009-12-23 10 views
5

मैंने पाया एक VBA मैक्रो ऑनलाइन है कि एक वर्ड दस्तावेज़ में सभी छवियों का आकार बदलता है:वर्ड में विजुअल बेसिक मैक्रो का आकार करने के लिए/केंद्र/हटाएं सभी छवियाँ

Sub ResizeAllImages() 
''# make all images (both inline and floating) 
''# 11 cm wide while preserving aspect ratio 

Dim oShp As Shape 
Dim oILShp As InlineShape 

For Each oShp In ActiveDocument.Shapes 
    With oShp 
     .Height = AspectHt(.Width, .Height, _ 
     CentimetersToPoints(11)) 
     .Width = CentimetersToPoints(11) 
    End With 
Next 

For Each oILShp In ActiveDocument.InlineShapes 
    With oILShp 
     .Height = AspectHt(.Width, .Height, _ 
     CentimetersToPoints(11)) 
     .Width = CentimetersToPoints(11) 
    End With 
Next 
End Sub 

मैं एक विधि का नाम नहीं मिल सका है कि मैं सभी छवियों को केंद्र-संरेखित करने के लिए उपयोग कर सकता था। क्या कोई जानता है कि मुझे क्या जोड़ने की ज़रूरत है, और मुझे इसे कहां जोड़ना होगा?

आखिरकार, मैं उन छवियों को हटाना चाहता हूं जो मुझे बहुत छोटे लगते हैं। मैं कैसे करूँगा ... यदि आकार की चौड़ाई 5 से छोटी है, और आकार की ऊंचाई 5 से छोटी है, तो आकार हटाएं।

ऑनलाइन टेक्स्ट की बड़ी मात्रा में आसानी से पढ़ने के लिए, मैं कभी-कभी शब्द में सब कुछ पेस्ट करना पसंद करता हूं, और फिर इसे पुनर्व्यवस्थित करता हूं। मैं प्रत्येक अवधि-व्हाइटस्पेस को एक अवधि-मैनुअल लाइन के साथ प्रतिस्थापित करता हूं, जो मुझे प्रत्येक वाक्य के लिए एक नई पंक्ति देता है .. जब मैं ऐसा करता हूं तो मैं बेहतर पढ़ता हूं। चूंकि मैं सब कुछ चिपका रहा हूं, ग्राफिक्स भी आता है, इसलिए मैं सभी छवियों के आकार को नियंत्रित करने में सक्षम होना चाहता हूं, और किसी भी अनावश्यक छवियों से छुटकारा पा सकता हूं।

उत्तर

3

मुझे लगता है कि आप छवियों को केंद्र-संरेखित नहीं कर सकते हैं। आप पैराग्राफ को केंद्र-संरेखित कर सकते हैं। शायद कुछ इस तरह से आपको मदद मिलेगी:

For Each oILShp In ActiveDocument.InlineShapes 
    oILShp.Select 
    Selection.ParagraphFormat.Alignment = wdAlignParagraphCenter 
Next 

विलोपन के लिए, बस प्रत्येक आकार वस्तु अपनी शर्तों को संतुष्ट करने के लिए Delete कहते हैं।

+0

धन्यवाद परिभाषा सहित पूरा कोड है। कोड का वह टुकड़ा काम करता था। –

1

कोड छोटे तस्वीरों को नष्ट करने:

Sub DeleteSmallPictures() 
Dim iShp As InlineShape 

    For Each iShp In ActiveDocument.InlineShapes 
     With iShp 
      If .Width < CentimetersToPoints(5) Then 
       iShp.Delete 
      End If 
     End With 
    Next iShp 
End Sub 
संबंधित मुद्दे