Grafik VBA

Grafik VBA Excel

Grafik bisa diistilahkan sebagai objek di VBA, mirip dengan worksheet kita juga bisa menyisipkan grafik di VBA dengan cara yang sama, pertama kita pilih data dan tipe grafik yang kita inginkan untuk keluar datanya, sekarang ada dua jenis grafik yang kita sediakan satu adalah bagan sematan di mana bagan berada di lembar data yang sama dan bagan lainnya dikenal sebagai lembar bagan di mana bagan berada di lembar data yang terpisah.

Dalam analisis data, efek visual adalah indikator kinerja utama dari orang yang telah melakukan analisis. Visual adalah cara terbaik yang mungkin dilakukan seorang analis untuk menyampaikan pesannya. Karena kita semua adalah pengguna excel, kita biasanya menghabiskan banyak waktu untuk menganalisis data dan menarik kesimpulan dengan angka dan grafik. Membuat bagan adalah seni yang harus dikuasai dan saya harap Anda memiliki pengetahuan yang baik tentang cara membuat bagan dengan excel. Pada artikel ini, kami akan menunjukkan cara membuat grafik menggunakan pengkodean VBA.

Bagaimana cara menambahkan grafik menggunakan kode VBA di Excel?

Anda dapat mendownload Template Excel VBA Charts ini di sini - Template Excel VBA Charts

# 1 - Buat Bagan menggunakan VBA Coding

Untuk membuat grafik apapun kita harus memiliki semacam data numerik. Untuk contoh ini, saya akan menggunakan contoh data di bawah ini.

Oke, mari beralih ke editor VBA.

Langkah 1: Mulai Sub Prosedur.

Kode:

 Sub Charts_Example1 () End Sub 

Langkah 2: Tentukan variabel sebagai Bagan.

Kode:

 Sub Charts_Example1 () Redupkan MyChart Sebagai Chart End Sub 

Langkah 3: Karena grafik adalah variabel objek, kita perlu mengaturnya .

Kode:

 Sub Charts_Example1 () Redupkan MyChart Sebagai Chart Set MyChart = Charts.Tambahkan End Sub 

Kode diatas akan menambahkan sheet baru sebagai sheet sheet, bukan sebagai worksheet.

Langkah 4: Sekarang kita perlu mendesain grafik. Terbuka Dengan Pernyataan.

Kode:

 Sub Charts_Example1 () Redupkan MyChart Sebagai Chart Set MyChart = Charts. Tambahkan Dengan MyChart Akhiri Dengan End Sub 

Langkah 5: Hal pertama  dengan grafik yang perlu kita lakukan adalah Menetapkan rentang sumber dengan memilih metode "Set Source Data" .

Kode:

 Sub Charts_Example1 () Redupkan MyChart Sebagai Chart Set MyChart = Charts. Tambahkan Dengan MyChart .SetSourceData Akhiri Dengan End Sub 

Langkah 6: Di sini kita perlu menyebutkan rentang sumbernya. Dalam kasus ini, rentang sumber saya ada di lembar bernama "Sheet1" dan kisarannya adalah "A1 hingga B7".

Kode:

 Sub Charts_Example1 () Redupkan MyChart Sebagai Chart Set MyChart = Charts.Add Dengan MyChart .SetSourceData Sheets ("Sheet1"). Range ("A1: B7") Akhiri Dengan End Sub 

Langkah 7: Selanjutnya kita perlu memilih jenis grafik yang akan kita buat. Untuk ini, kita perlu memilih properti Jenis Bagan .

Kode:

 Sub Charts_Example1 () Redupkan MyChart Sebagai Chart Set MyChart = Charts.Tambahkan Dengan MyChart .SetSourceData Sheets ("Sheet1"). Range ("A1: B7") .ChartType = End With End Sub 

Langkah 8: Di sini kami memiliki berbagai grafik. Saya akan memilih grafik " xlColumnClustered ".

Kode:

 Sub Charts_Example1 () Redupkan MyChart Sebagai Chart Set MyChart = Charts.Tambahkan Dengan MyChart .SetSourceData Sheets ("Sheet1"). Range ("A1: B7") .ChartType = xlColumnClustered End With End Sub 

Ok, saat ini mari kita jalankan kode menggunakan tombol F5 atau secara manual dan lihat bagaimana grafik terlihat.

Langkah 9: Sekarang ubah properti grafik lainnya. Untuk merubah judul grafik dibawah ini adalah kodenya.

Seperti ini, kami memiliki banyak properti dan metode dengan bagan. Gunakan masing-masing untuk melihat dampaknya dan belajar.

 Sub Charts_Example1 () Redupkan MyChart As Chart Set MyChart = Charts.Tambahkan Dengan MyChart .SetSourceData Sheets ("Sheet1"). Range ("A1: B7") .ChartType = xlColumnClustered .ChartTitle.Text = "Kinerja Penjualan" Akhiri Dengan Sub Akhir 

# 2 - Buat Bagan dengan Lembar Excel yang Sama dengan Bentuk

Untuk membuat grafik dengan lembar kerja yang sama (lembar data) sebagai bentuk kita perlu menggunakan teknik yang berbeda.

Langkah 1: Pertama Deklarasikan tiga Variabel Objek.

Kode:

 Sub Charts_Example2 () Dim Ws As Worksheet Dim Rng As Range Redup MyChart Sebagai Objek End Sub 

Langkah 2: Kemudian Atur referensi Lembar Kerja.

Kode:

 Sub Charts_Example2 () Dim Ws As Worksheet Dim Rng As Range Dim MyChart As Object Set Ws = Worksheets ("Sheet1") End Sub 

Langkah 3: Sekarang atur objek jangkauan di VBA

Kode:

 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") End Sub 

Step 4: Now set the chart object.

Code:

 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:

 Sub Charts_Example3() Dim Ws As Worksheet Dim Rng As Range Dim MyChart As ChartObject Set Ws = Worksheets("Sheet1") Set Rng = Ws.Range("A1:B7") Set MyChart = Ws.ChartObjects.Add(Left:=ActiveCell.Left, Width:=400, Top:=ActiveCell.Top, Height:=200) MyChart.Chart.SetSourceData Source:=Rng MyChart.Chart.ChartType = xlColumnStacked MyChart.Chart.ChartTitle.Text = "Sales Performance" End Sub