VBA का उपयोग करके Word 2016 में विशिष्ट तालिका कैसे बदलें


2

मैं सिर्फ VBA का उपयोग करना शुरू कर रहा हूं क्योंकि मैं अपनी तालिका की चौड़ाई की व्यवस्था करना चाहता हूं। 2 घंटे के बाद मैंने पाया कि यह मेरे लिए काम करता है लेकिन Document.Tables यह दस्तावेज़ में सभी तालिकाओं पर लागू होगा।

Sub resizeTables()  
  For Each Table In ActiveDocument.Tables  
    On Error Resume Next  
    Table.Columns(1).Width = 12.8  
    Table.Columns(2).Width = 22.7  
    Table.Columns(3).Width = 22.7  
    Table.Columns(4).Width = 227  
    Table.Columns(5).Width = 22.7  
    Table.Columns(6).Width = 227  
    On Error GoTo 0  
  Next  
End Sub 

मुझे क्या उपयोग करना चाहिए ताकि किसी दिए गए दस्तावेज़ में केवल 3 तालिका बदल जाए?


आप संभवतः प्रत्येक के साथ सीधे पहुंच सकते हैं ActiveDocument.Tables(3).Columns(1).Width = 12.8 उदाहरण के लिए
Bill Hileman

यह काम करता हैं। धन्यवाद। मेरे कोड के लिए मैं इसे सब रिसाइजटेबल्स में बदल देता हूं () प्रत्येक तालिका के लिए ActiveDocument.Tables पर त्रुटि फिर से शुरू ActiveDocument.Tables (3)। कॉलम (1)। चौड़ाई = 12.8 ActiveDocument.Tables (3)। कॉलम (2)। = 22.7 ActiveDocument.Tables (3)। कॉलम (3) .idth = 22.7 ActiveDocument.Tables (3)। कॉलम (4)। चौड़ाई = 227 ActiveDocument.Tables (3)। कॉलम (5) .Width = 22.7 ActiveDocument.Tables (३)। कॉलम (६) .पद = २२ Error त्रुटि गो ० पर ० अगला अगला उप
Kevin Kweenarto

मैंने नीचे दिए गए कोड को पोस्ट किया है, ध्यान दें कि आपको प्रत्येक लूप की आवश्यकता नहीं है क्योंकि अब आप सीधे दस्तावेज़ में सभी तालिकाओं को नहीं, बल्कि एक विशिष्ट तालिका तक पहुंच रहे हैं, ताकि कोड का हिस्सा बेकार हो जाए। यदि अंदर छोड़ दिया जाता है, तो यह प्रत्येक तालिका के लिए एक ही बार एक ही चरण को दोहराएगा जो मौजूद है, लेकिन केवल हर बार तालिका 3 में परिवर्तन लागू करें। कृपया जवाब स्वीकार करें, मुझे खुशी है कि मैं मदद कर सकता हूं।
Bill Hileman

जवाबों:


0

आप जो खोज रहे हैं, उसे प्राप्त करने के लिए, प्रत्येक लूप के लिए पूरी तरह से हटा दें और नीचे दी गई तालिका तक सीधे पहुंचें:

Sub resizeTables()  
  On Error Resume Next  
  ActiveDocument.Tables(3).Columns(1).Width = 12.8  
  ActiveDocument.Tables(3).Columns(2).Width = 22.7  
  ActiveDocument.Tables(3).Columns(3).Width = 22.7  
  ActiveDocument.Tables(3).Columns(4).Width = 227  
  ActiveDocument.Tables(3).Columns(5).Width = 22.7  
  ActiveDocument.Tables(3).Columns(6).Width = 227  
  On Error GoTo 0  
End Sub 
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.