Anda dapat dengan mudah memasukkan gambar ke dalam spreadsheet Excel dan mengeditnya dengan kode makro. Berikut cara menyisipkan gambar ke dalam sel menggunakan VBA di Excel .

Visual Basic for Applications, disingkat VBA, adalah bentuk Visual Basic 6 yang diintegrasikan ke dalam program Microsoft Office. Melalui pengkodean, VBA memungkinkan Anda mengotomatiskan tugas-tugas di aplikasi Office, termasuk Excel. Dalam beberapa kasus, Anda bahkan bisa menambahkan fitur baru ke Excel menggunakan VBA.
Meskipun Anda perlu bekerja dengan kode untuk menggunakan VBA, bukan berarti VBA penuh dengan huruf dan angka. Dengan VBA di Excel, Anda bisa membuat makro yang memungkinkan Anda menyisipkan gambar ke dalam sel atau rentang sel. Inilah yang perlu Anda ketahui tentang menyisipkan gambar ke dalam sel di Excel menggunakan VBA.
Cara menyisipkan gambar ke dalam sel menggunakan VBA di Excel
Untuk membuat makro yang menyisipkan gambar ke dalam sel Excel menggunakan VBA, Anda sebenarnya tidak memerlukan pengetahuan Visual Basic tingkat lanjut. Yang perlu Anda lakukan hanyalah mengaktifkan alat Pengembang, membuat makro, dan menempelkan kode yang sesuai. Tentu saja, Anda juga bisa memasukkan gambar ke Excel tanpa menggunakan VBA. Namun pada artikel ini kami akan fokus pada VBA.
1. Aktifkan alat Pengembang
Untuk menggunakan VBA di Excel, Anda perlu mengaktifkan alat Pengembang. Tindakan ini akan mengaktifkan tab Pengembang di pita, yang dinonaktifkan secara default.
- Buka Excel .
- Buka menu File .
- Klik Opsi di bagian bawah layar. Jendela Opsi Excel akan muncul.
- Di Opsi Excel, buka tab Kustomisasi Pita .
- Di Tab Utama , centang Pengembang .

Sekarang alat Pengembang, termasuk akses VBA, diaktifkan. Anda tidak perlu melakukan ini setiap kali ingin menggunakan VBA di Excel. Alat pengembang akan selalu diaktifkan hingga Anda menonaktifkannya.
2. Buat makro dan masukkan kode
- Di Excel, buka tab Pengembang .
- Di bagian Kode, pilih Makro .
- Di jendela baru, masukkan nama makro Anda di Nama makro . Artikel ini akan menggunakan insertPhotoMacro .
- Klik Buat .

Setelah mengklik Buat, jendela VBA akan terbuka dan menampilkan kode untuk makro Anda. Saat ini, kodenya akan terdiri dari 2 baris: Sub untuk memulai makro dan Sub Akhir untuk mengakhirinya.

Tambahkan sedikit kode ke makro ini. Tambahkan baris kode berikut di antara kedua baris tersebut:
Dim photoNameAndPath As Variant
Dim photo As Picture
photoNameAndPath = Application.GetOpenFilename(Title:="Select Photo to Insert")
If photoNameAndPath = False Then Exit Sub
Set photo = ActiveSheet.Pictures.Insert(photoNameAndPath)
With photo
.Left = ActiveSheet.Range("A1").Left
.Top = ActiveSheet.Range("A1").Top
.Width = ActiveSheet.Range("A1").Width
.Height = ActiveSheet.Range("A1").Height
.Placement = 1
End With
Kode terakhir akan terlihat seperti ini:

Anda tidak perlu khawatir untuk menyimpan proses ini. Setiap perubahan yang Anda buat di VBA akan segera disimpan.
Sekarang saatnya melihat kode beraksi:
- Tutup jendela VBA.
- Buka tab Pengembang di Excel.
- Pilih Makro dari bagian Kode.
- Sorot makro yang baru saja Anda buat.
- Klik Jalankan .
Sekarang sebuah pesan akan terbuka meminta Anda untuk mencari file gambar yang ingin Anda masukkan. Pilih foto, lalu klik Buka. Anda sekarang akan melihat gambar di sel A1.
Catatan, Excel akan memperkecil gambar agar pas di sel A1. Anda dapat mengubahnya dan mengubah kode untuk menyisipkan gambar ke sel lain, bahkan rentang sel. Di bagian selanjutnya, kami akan memisahkan kode dan menjelaskan parameternya.
3. Pisahkan kode
Agar kode VBA berfungsi sesuai keinginan Anda, Anda perlu memahaminya. Saat melakukan ini, Anda dapat mengubah kode untuk menyisipkan gambar ke dalam sel apa pun dengan ukuran berapa pun.
Sub insertPhotoMacro()
Dim photoNameAndPath As Variant
Dim photo As Picture
photoNameAndPath = Application.GetOpenFilename(Title:="Select Photo to Insert")
If photoNameAndPath = False Then Exit Sub
Set photo = ActiveSheet.Pictures.Insert(photoNameAndPath)
With photo
.Left = ActiveSheet.Range("A1").Left
.Top = ActiveSheet.Range("A1").Top
.Width = ActiveSheet.Range("A1").Width
.Height = ActiveSheet.Range("A1").Height
.Placement = 1
End With
End Sub
Saat kode dimulai, pernyataan Dim digunakan untuk menentukan tipe variabel. Kami memiliki dua tipe variabel: photoNameAndPath dan photo . Pertama variabelnya, lalu gambarnya.
Dari sana, variabel photoNameAndPath dijalankan dan akan membuka aplikasi untuk mendapatkan lokasi file foto. Ini dilakukan melalui Application.GetOpenFileName . Parameter Judul bersifat opsional. Konten di dalamnya ditampilkan sebagai nama jendela.
Menggunakan If photoNameAndPath = False Then Exit Sub , jika alamat yang diberikan tidak valid atau kosong, proses akan berakhir. Namun, jika file yang sesuai disediakan, Set photo = ActiveSheet.Pictures.Insert(photoNameAndPath) menunjukkan bahwa gambar harus ditetapkan sebagai variabel seperti yang ditentukan semula. Ini akan dimasukkan ke dalam lembar kerja aktif.
Terakhir, gunakan With photo dan 5 baris setelahnya untuk menentukan lokasi foto. .Left dan .Top mengacu pada posisi awal, sedangkan .Width dan .Height mengacu pada posisi akhir. Jika Anda ingin menyisipkan gambar ke dalam sel atau rentang lain, ini adalah garis yang harus Anda ubah.
.Penempatan menunjukkan bahwa gambar harus diubah ukurannya agar sesuai dengan sel atau disisipkan dalam bentuk bebas. Menyetelnya ke 1 akan mengubah ukurannya sesuai dengan sel.
Terakhir, kode di atas menggunakan End With , lalu End Sub untuk menutup makro. Sekarang Anda dapat mengubah variabel photoNameAndPath dan photo ke nama lain yang Anda suka. Ingatlah untuk menjaga konsistensi nama di seluruh kode.
Di atas adalah cara menggunakan VBA untuk menyisipkan gambar ke dalam sel di Excel . Semoga artikel ini bermanfaat bagi Anda.