Cara Membuat Grafik Tertempel di Suatu Barisan Sel Tertentu dengan Macro VBA Excel
Berbeda dengan grafik tertanam pada worksheet, grafik yang tertempel di atas worksheet mengharuskan Anda menentukan worksheet yang mana dan sel yang mana tempat grafik tersebut akan diletakkan.
Kali ini kami akan berbagi kode macro sebagai contoh bagaimana cara menempatkan suatu grafik kolom ke dalam barisan sel D2:J19 sehingga barisan sel ditutupi oleh grafik tersebut seperti hasil akhirnya ditunjukkan pada gambar berikut.
Langsung saja ikuti langkah-langkah berikut ini:
1. Siapkan tabel data dengan dua kolom sebagai contoh seperti pada gambar di atas.
2. Tekan Alt+F11 untuk membuka VBE.
3. Buat module baru melalui menu Insert > Module.
4. Beri judul macro misalnya GrafikDiBarisanSel sehingga ketik kode berikut pada module:
Sub GrafikDiBarisanSel()
5. Tepat di bawah garis kode di atas, tetapkan variabel objek untuk grafik dan ChartObject yang tertempel:
Dim g As Chart, og As ChartObject
6. Tetapkan variabel Range untuk menentukan barisan sel mana yang akan ditempatkan grafik pada dan juga variabel String untuk menentukan worksheet yang mana:
Dim bg As Range, sh As String
7. Grafik akan ditempatkan pada worksheet yang sedang aktif:
sh = ActiveSheet.Name
8. Buat grafik barunya:
Set g = Charts.Add
9. Tentukan letak grafiknya:
g.Location _
(Where:=xlLocationAsObject, Name:=sh)
10. Tentukan sumber datanya:
Source:=Range("A1").CurrentRegion, PlotBy:=xlColumns
11. Tentukan jenis grafik, sebagai contoh grafik kolom:
g.ChartType = xlColumnClustered
12. Pilih grafik untuk mengenali ChartObject:
Set og = ActiveChart.Parent
13. Tetapkan barisan sel yang akan ditempatkan grafik:
og.Left = bg.Left
og.Width = bg.Width
og.Top = bg.Top
og.Height = bg.Height
14. Keluar dari tampilan grafik dengan memilih sel A1:
Range("A1").Select
15. Sebagai tambahan, Anda mungkin ingin menghapus judul dan legenda grafik:
g.Legend.Delete
16. Susunan lengkap kode macro menjadi:
Dim g As Chart, og As ChartObject
Dim bg As Range, sh As String
sh = ActiveSheet.Name
Set g = Charts.Add
Set g = _
g.Location _
(Where:=xlLocationAsObject, Name:=sh)
g.SetSourceData _
Source:=Range("A1").CurrentRegion, PlotBy:=xlColumns
g.ChartType = xlColumnClustered
ActiveSheet.ChartObjects(1).Activate
Set og = ActiveChart.Parent
Set bg = Range("D2:J19")
og.Left = bg.Left
og.Width = bg.Width
og.Top = bg.Top
og.Height = bg.Height
Range("A1").Select
g.ChartTitle.Delete
g.Legend.Delete
End Sub
17. Tekan Alt+Q untuk kembali ke worksheet.
18. Tekan Alt+F8 untuk membuka Macro lalu pilih GrafikDiBarisanSel lalu klik Run.
Ada tip tambahan untuk Anda, jadi saat pointer sel diletakkan di dalam suatu tabel data lalu Anda menekan tombol Alt+F1 maka grafik tertempel akan langsung dihasilkan dalam sekejap.
Itulah pembahasan mengenai cara membuat grafik tertempel di suatu barisan sel tertentu dengan Macro VBA Excel.
Selamat mempraktikkan dan semoga bermanfaat.

