उम्मीद है कि मैं सुरक्षित रूप से अनुमान लगा सकता हूं कि आप इसे प्रदर्शन कारणों से कर रहे हैं। जैसा ऊपर बताया गया है, यह वास्तव में संभव नहीं है कि आप सेल सामग्री के साथ ऐसा कर सकें।
हालांकि, यदि कोशिकाओं का स्वरूपण अक्सर आखिरी बार स्वरूपित होता है, तो प्रारूप को बदलने की आवश्यकता होती है, और केवल तभी बदलना बहुत तेज़ होता है।
यहां एक ऐसा कार्य है जो इसे कर सकता है। परीक्षणों (एक्सेल 2003) में, यह प्रारूप को हमेशा सेट करने से 8x-10x तेज चलता है, और यह स्क्रीन अपडेटिंग बंद होने के साथ होता है।
Sub SetProperty(ByRef obj As Object, propname, newvalue)
If CallByName(obj, propname, VbGet) <> newvalue Then
Call CallByName(obj, propname, VbLet, newvalue)
End If
End Sub
इसे इस तरह कॉल:
Call SetProperty(Cells(1,1).Font, "ColorIndex", 27)
Call SetProperty(Cells(1,1).Borders, "Weight", xlMedium)
etc
मैं बहुत यकीन है कि आप एक बहु सेल रेंज स्वरूपण लागू करते हैं और न यह सेल-दर-सेल करने के लिए हो सकता है, लेकिन मैं नहीं है स्वरूपण का एक टन करो। शायद कोई ऐसा व्यक्ति जो वास्तविक जवाब देगा ... – jtolle
वाह, मैंने पूरी तरह से सवाल को गलत समझा। लांस रॉबर्ट्स का जवाब मेरे लिए सही दिखता है, हालांकि। – jtolle