VBA चार्ट - VBA कोड का उपयोग करके चार्ट जोड़ने के उदाहरण

विषय - सूची

एक्सेल VBA चार्ट

चार्ट को VBA में ऑब्जेक्ट के रूप में कहा जा सकता है, वर्कशीट के समान हम VBA में चार्ट भी उसी तरह से चार्ट में सम्मिलित कर सकते हैं, पहले हम डेटा और चार्ट प्रकार का चयन करते हैं जिसे हम डेटा के लिए चाहते हैं, अब दो अलग-अलग प्रकार के चार्ट हैं जिन्हें हम प्रदान करते हैं। वह चार्ट है जहां चार्ट डेटा की एक ही शीट में होता है और किसी अन्य को चार्ट शीट के रूप में जाना जाता है जहां चार्ट डेटा की अलग शीट में होता है।

डेटा विश्लेषण में, दृश्य प्रभाव उस व्यक्ति के प्रमुख प्रदर्शन संकेतक हैं जिन्होंने विश्लेषण किया है। दृश्य सबसे अच्छा संभव तरीके हैं जो एक विश्लेषक अपने संदेश को व्यक्त कर सकता है। चूंकि हम सभी एक्सेल उपयोगकर्ता हैं, हम आमतौर पर डेटा का विश्लेषण करने और संख्याओं और चार्ट के साथ निष्कर्ष निकालने में काफी समय व्यतीत करते हैं। एक चार्ट बनाना एक कला है, और मुझे आशा है कि आपको एक्सेल के साथ चार्ट बनाने का अच्छा ज्ञान होगा। इस लेख में, हम आपको दिखाएंगे कि वीबीए कोडिंग का उपयोग करके चार्ट कैसे बनाएं।

एक्सेल में VBA कोड का उपयोग करके चार्ट कैसे जोड़ें?

# 1 - VBA कोडिंग का उपयोग करके चार्ट बनाएं

किसी भी चार्ट को बनाने के लिए, हमें किसी प्रकार का संख्यात्मक डेटा होना चाहिए। इस उदाहरण के लिए, मैं नीचे दिए गए नमूना डेटा का उपयोग करने जा रहा हूं।

ठीक है, चलो VBA संपादक पर जाएं।

चरण 1: उप प्रक्रिया शुरू करें।

कोड:

उप चार्ट_Example1 () उप सब

चरण 2: चार्ट के रूप में चर को परिभाषित करें।

कोड:

उप चार्ट_Example1 () चार्ट अंत के रूप में डिम MyChart

चरण 3: चूंकि चार्ट एक वस्तु चर है, हमें इसे सेट करने की आवश्यकता है ।

कोड:

उप चार्ट_Example1 () चार्ट के रूप में डिम MyChart = MyChart = चार्ट सेट करें। उप समाप्त करें

उपरोक्त कोड एक चार्टशीट के रूप में एक नई शीट जोड़ देगा, वर्कशीट के रूप में नहीं।

चरण 4: अब, हमें चार्ट डिजाइन करने की आवश्यकता है। स्टेटमेंट के साथ खोलें।

कोड:

उप चार्ट_Example1 () चार्ट के रूप में डिम MyChart MyChart = चार्ट सेट करें। MyChart के साथ समाप्त करें

चरण 5: चार्ट के साथ पहली चीज जो हमें करने की ज़रूरत है वह है "स्रोत डेटा सेट करें" विधि का चयन करके स्रोत सीमा निर्धारित करना

कोड:

उप चार्ट_Example1 () चार्ट के रूप में डिम MyChart = MyChart = चार्ट सेट करें। CChart के साथ जोड़ें ।SSSourceData अंत के साथ।

चरण 6: यहां, हमें स्रोत श्रेणी का उल्लेख करना होगा। इस स्थिति में, मेरी स्रोत सीमा "शीट 1" नाम की शीट में है, और सीमा "ए 1 से बी 7" है।

कोड:

उप चार्ट_Example1 () चार्ट के रूप में डिम MyChart = MyChart = चार्ट सेट करें ।Chart .SetSourceData शीट्स ("Sheet1") के साथ जोड़ें। सीमा ("A1: B7") अंतिम उप सबमिशन।

चरण 7: अगला, हमें उस तरह के चार्ट का चयन करना होगा जिसे हम बनाने जा रहे हैं। इसके लिए हमें चार्ट प्रकार की संपत्ति का चयन करना होगा ।

कोड:

उप Charts_Example1 () चार्ट के रूप में Dim MyChart सेट करें MyChart = Charts.Add withChart .SetSourceData शीट्स ("Sheet1")। रेंज ("A1: B7") .ChartType = अंतिम उप के साथ समाप्त करें।

चरण 8: यहां, हमारे पास विभिन्न प्रकार के चार्ट हैं। मैं " xlColumnClustered " चार्ट का चयन करने जा रहा हूं ।

कोड:

उप Charts_Example1 () चार्ट के रूप में Dim MyChart सेट करें MyChart = Charts.Add withChart .SetSourceData शीट्स ("Sheet1")। रेंज ("A1: B7") .ChartType = xlColumnClustered अंत के साथ अंतिम उप सबमिशन।

ठीक है, इस समय, आइए F5 कुंजी या मैन्युअल रूप से कोड का उपयोग करें और देखें कि चार्ट कैसा दिखता है।

चरण 9: अब, चार्ट के अन्य गुणों को बदलें। चार्ट शीर्षक बदलने के लिए, नीचे कोड है।

इस तरह, हमारे पास चार्ट के साथ कई गुण और तरीके हैं। प्रभाव को देखने और सीखने के लिए उनमें से प्रत्येक का उपयोग करें।

उप चार्ट_Example1 () चार्ट के रूप में डिम MyChart सेट करें MyChart = Charts.Add withChart .SSSourceData शीट्स ("शीट 1")। रेंज ("A1: B7") .ChartType = xlColumnClustered .ChartTitle.Text = "बिक्री समाप्ति"।

# 2 - आकृति के रूप में एक ही एक्सेल शीट के साथ एक चार्ट बनाएं

आकृति के समान वर्कशीट (डेटाशीट) के साथ चार्ट बनाने के लिए, हमें एक अलग तकनीक का उपयोग करने की आवश्यकता है।

चरण 1: पहला डिक्लेयर थ्रू ऑब्जेक्ट वेरिएबल्स।

कोड:

सब Charts_Example2 () डिम Ws के रूप में काम करता है डिम Rng के रूप में रेंज मंद MyChart ऑब्जेक्ट अंत उप के रूप में

चरण 2: फिर वर्क्सशीट संदर्भ सेट करें।

कोड:

सब Charts_Example2 () डिम Ws के रूप में काम करता है डिम Rng के रूप में रेंज डिम MyChart ऑब्जेक्ट सेट Ws = Worksheets ("शीट 1") के रूप में समाप्त होता है

चरण 3: अब VBA में रेंज ऑब्जेक्ट सेट करें

कोड:

सब Charts_Example2 () वर्क्स Ws के रूप में डिम Ws के रूप में डिम Rng के रूप में रेंज Dim MyChart के रूप में ऑब्जेक्ट सेट Ws = कार्यपत्रक ("शीट 1") Rng = Ws.Range ("A1: B7") को समाप्त करें

चरण 4: अब, चार्ट ऑब्जेक्ट सेट करें।

कोड:

Sub Charts_Example2() Dim Ws As Worksheet Dim Rng As Range Dim MyChart As Object Set Ws = Worksheets("Sheet1") Set Rng = Ws.Range("A1:B7") Set MyChart = Ws.Shapes.AddChart2 End Sub

Step 5: Now, as usual, we can design the chart by using the “With” statement.

Code:

Sub Charts_Example2() Dim Ws As Worksheet 'To Hold Worksheet Reference Dim Rng As Range 'To Hold Range Reference in the Worksheet Dim MyChart As Object Set Ws = Worksheets("Sheet1") 'Now variable "Ws" is equal to the sheet "Sheet1" Set Rng = Ws.Range("A1:B7") 'Now variable "Rng" holds the range A1 to B7 in the sheet "Sheet1" Set MyChart = Ws.Shapes.AddChart2 'Chart will be added as Shape in the same worksheet With MyChart.Chart .SetSourceData Rng 'Since we already set the range of cells to be used for chart we have use RNG object here .ChartType = xlColumnClustered .ChartTitle.Text = "Sales Performance" End With End Sub

This will add the chart below.

#3 - Code to Loop through the Charts

Like how we look through sheets to change the name or insert values, hide & unhide them. Similarly, to loop through the charts, we need to use chart object property.

The below code will loop through all the charts in the worksheet.

Code:

Sub Chart_Loop() Dim MyChart As ChartObject For Each MyChart In ActiveSheet.ChartObjects 'Enter the code here Next MyChart End Sub

#4 - Alternative Method to Create Chart

We can use the below alternative method to create charts. We can use the Chart Object. Add method to create the chart below is the example code.

This will also create a chart like the previous method.

Code:

उप चार्ट_Example3 (डिम Ws के रूप में कार्यपत्रक डिम Rng के रूप में रेंज मंद MyChart के रूप में ChartObject सेट Ws = कार्यपत्रक ("शीट 1") Rng = Ws.Range ("A1: 77) सेट करें MyChart = Ws.ChartObjects.Add (Left: =) ActiveCell.Left, Width: = 400, Top: = ActiveCell.Top, Height: = 200) MyChart.Chart.SetSourceData स्रोत: = Rng MyChart.Chart .ChartType = xlColumnStacked MyChart.Chart.ChartTitleTitle विषय

दिलचस्प लेख...