CARA MEMASUKKAN / INSERT BEBERAPA GAMBAR / FOTO KE CELL WORKSHEET EXCEL DENGAN VBA
Assalamualaikum Warohmatullahi Wabarokatuh
sOdara2 sekaliYan para pembatja jang boediman … beberapa artikel tentang cara membuat VLOOKUP gambar di Excel … ataupun cara menampilkan foto otomatis di Excel yang bisa insert foto otomatis di Excel telah publish di blog ini … yang pertama dengan cara membuat rumus Excel agar muncul gambar yang artikelnya bisa sOdara baca dengan ceKlik disini … dengan cara seperti ini database foto akan disimpan di Sheet Excel yang selanjutnya akan di-Link dengan Obyek yang akan menampilkan gambar / foto via rumus Excel / formula
artikel yang kedua tentang cara membuat otomatisasi data disertai gambar dengan Excel menggunakan macro VBA … yang artikelnya bisa sOdara baca dengan ceKlik disini ….. dengan VBA database foto / gambar bisa disimpan sebagai file gambar biasa diluar Workbook Excelnya … sehingga ukuran Workbook Excelnya ndak akan bengkak gegara nyimpen banyak foto / gambar dalam Lembar Kerja / Worksheetnya seperti ketika menggunakan rumus Excel
artikel2 tersebut ternyata lumayan laris sehingga beberapa kali bisa masuk Top 10 Post … salah satu komen yang masuk berisi pertanyaan bagaimana cara menyisipkan beberapa foto sekaligus pada Worksheet Excel … berikut penampakan komen yang menjadi Problema de Excellente kali ini
Sebenarnya untuk menyisipkan satu gambar atau lebih caranya ndak beda jauh … cuman diulang saja langkah2nya … kalau sudah paham teknik untuk menyisipkan 1 gambar tentunya tidak akan terlalu sulit untuk menyisipkan 2 gambar atau lebih … tetapi kadang kita tidak tahu bagian mana yang harus diulang dari prosedurnya … secara garis besar untuk menyisipkan foto ke worksheet Excel sOdara harus memperhatikan hal2 berikut :
- Nama File foto/gambar yang akan disisipkan … nama file harus lengkap dengan path direktori / folder tempat file tersebut bersemanyam
- Range tempat gambar/foto tersebut akan disisipkan
dan berikut adalah prosedur VBA yang ada pada artikel sebelumnya untuk menyisipkan 1 foto pada worksheet
dari kode diatas bisa kita lihat untuk Nama File didapat dari kode berikut
NamaFile = ThisWorkbook.Path & "\" & Target.Value & ".jpg"
coba sOdara kasih perhatian pada bagian berikut ini
ThisWorkbook.Path
ThisWorkbook.Path akan menghasilkan path direktori tempat file berada … karena file gambar dan file excelnya pada contoh file tersebut berada pada 1 folder … dengan kode ThisWorkbook.Path diatas bisa secara otomatis mengikuti direktori tempat file Excelnya berada …. sOdara tidak perlu melakukan penyesuaian kodenya jika memindahkan file2nya
jika gambar/fotonya ada di folder khusus yang berada pada folder yang sama dengan file excelnya (sub folder atau folder anak atau apalah istilahnya) … sOdara perlu membuat sedikit ubahan pada kode VBAnya … misal nama folder tempat gambar / foto bersemayam adalah “Foto” maka sodara bisa modip dikit kodenya kayak penampakan berikut
NamaFile = ThisWorkbook.Path & "\Foto\" & Target.Value & ".jpg"
bagaimana jika beda folder ??? … sOdara bisa langsung menuliskan pathnya kaya contoh berikut
NamaFil
e = "D:\InserPictureVBA\" & Target.Value & ".jpg"
Target.Value & “.jpg”
Target.Value digunakan karena kode diatas memanfaatkan event WorkSheet_Change … sehingga Target pada kode diatas adalah Cell yang berubah isi/nilainya … dimana isi/nilai dari cell tersebut adalah Nama File yang akan disisipkan … sedangkan “.jpg” adalah ekstensi dari format file gambarnya
Jika sOdara ingin menjalankan kodenya tidak melalui event Worksheet_Change (misal dari tombol/button khusus) … yang artinya sodara tidak mempunyai informasi Target Cell sodara bisa menuliskan nama filenya langsung
NamaFile = "D:\InserPictureVBA\Hulk.jpg"
atau jika nama filenya ada pada Sheet1!E2 sOdara bisa bikin kode kaya berikut
NamaFile = "D:\InserPictureVBA\" & ThisWorkbook.Sheets('Sheet1").[E2].Value & ".jpg"
silahkan dipilih metode yang cocok yang sesuai dengan kebutuhan sOdara2 sekalian
sedangkan Range tempat gambar akan disispkan bisa kita lihat pada kode ini
.Top = [G2].Top
.Left = [G2].Left
.Width = [G2:L14].Width
.Height = [G2:L14].Height
Range tersebut digunakan untuk menentukan beberapa properti yang mempengaruhi posisi dan ukuran gambar yang telah disisipkan yaitu .. Top, Left, Width dan Height
ingat selalu dua point penting dalam teknik menyisipkan gambar / foto dalam cell Excel tersebut diatas … tetapi jangan sampai gegara mengingat Nama File dan Range tersebut sOdara sampai lupa Tuhan 🙂 😉 … kalau sOdara sudah mengantongi Nama File dan Range lokasi gambar / foto akan ditempatkan berikutnya sOdara harus memilih dari beberapa alternatip kapan dan bagaimana teknik menyisipkan gambar yang akan digunakan
Pada contoh file dalam artikel sebelumnya untuk memicu kode yang berisi prosedur menyisipkan gambar digunakan event Worksheet_Change … selain teknik tersebut ada beberapa alternatip lainnya yang bisa sOdara gunakan … ada beberapa yang pernah saya gunakan yaitu :
- Mouse klik pada Tombol / Button yang khusus sodara buat untuk menjalankan prosedurnya … Tombolnya bisa sOdara bikin dengan AutoShape atau Picture yang di Assign ke macro yang berisi prosedur untuk menyisipkan gambar … bisa jugaK sOdara bikin tombolnya pada Toolbar atau Ribbon Menu Excel
- Menggunakan Fungsi Excel … teknik ini pernah saya pakai untuk membuat event “Mouse Over” jadi2an yang digunakan untuk menampilkan gambar Preview / Thubmnail saat pointer mouse kita tempatkan pada Cell Excel yang berisi nama Foto / Gambar tersebut … contoh penggunaan teknik ini bisa sOdara terapkan untuk membuat lembar kerja Excel yang berisi katalog produk … jadi saat pointer mouse sOdara tempatkan pada nama produk maka gambar dari produk tersebut akan ditampilkan
Dalam artikel ini saya akan pakai cara yang pertama karena sepertinya cara ini yang paling praktis dan populer 🙂 … untuk cara yang kedua karena penggunaannya yang lebih spesifik mungkin baru akan saya bikin artikelnya kalau banyak yang request 😉
pertama sOdara siapkan bentuk tabelnya … berikut adalah contoh tabel sederhana yang ada dalam contoh file InsertOneOrMorePictures.xlsm yang ada pada file InsertPicureVBA.rar bisa sOdara download pada folder 2017 >> 10_OKT
Seperti yang sudah saya tulis diatas bahwa untuk menyisipkan satu gambar atau lebih caranya ndak beda … cuman diulang saja langkahnya … dan kita sudah punya modal dari kode yang ada pada artikel sebelumnya seperti yang sudah nongol diatas … kode tinggal kita modip dikit … modipikasi yang diperlukan bisa sOdara lihat pada gambar berikut … silahkan bandingkan dengan kode yang lama dengan yang baru … sudah saya kasih keterangan seperlunya
Kodenya sudah tersedia dan siap ditest … sebagai catatan kode tersebut diatas akan menyisipkan gambar pada cell sebelah kanan dari cell yang berisi nama gambarnya … seperti yang bisa sOdara lihat dalam penampakan gambar tabel diatas … selanjutnya bikin tombol menggunakan AutoShape ... bentuknya terserah sOdara saja … lalu hubungkan dengan prosedur InsertPictureIntoCell diatas… caranya kayak gambar berikut
Tombol diatas akan menyisipkan HANYA SATU GAMBAR SAJA … cara pakainya sOdara select cell yang berisi nama … misalnya B2 lalu klik tombolnya … kalau sukses penampakannya akan seperti ini
“Gimana sih janjinya kan mau bikin yang lebih dari 1 gambar 👿 👿 👿 👿 ..
kok yang nongol masih 1 gambar aja 😈 😈 😈 😈 “
tenang sOdara2 sekaliYan … seperti yang saya bilang sebelumnya kodenya masih sama kok … cuman untuk beberapa gambar sOdara harus bikin prosedur tambahan … ndak bisa langsung panggil prosedur InsertPictureIntoCell … kodenya singkat aja kayak penampakan berikut
Selanjunya bikinkan tombolnya untuk kode prosedur Insert_1_or_More_Picture tersebut diatas … caranya sama kaya bikin tombol untuk InsertPictureIntoCell yang sudah dijelaskan sebelumnya diatas
Cara pakainya sodara bisa blok semua cell yang ada namanya misal B2:B11 … lalu klik tombol yang baru saja sOdara bikin untuk prosedur Insert_1_or_More_Picture … untuk pilihan Nama2 yang tidak berurutan / loncat2 sodara bisa tekan tombol Ctrl lalu dengan mouse klik Nama2 yang akan ditampilkan gambarnya … contoh jika sOdara akan menyisipkan gambar dari B2 , B4 dan B5 … silahkan lihat pada gambar berikut
Tombol yang baru ini bisa menyisipkan 1 atau lebih gambar … tergantung banyaknya Cell yang berisi Nama Superhero pada kolom B yang diSelect
Demikianlah artikel tentang cara menyisipkan beberapa foto / gambar yang berbeda kedalam lembar kerja Excel … saya kasih bonus 2 tombol dalam contoh filenya untuk menghapus gambar … sekiYan … semoga manpaat dan MDLMDL
bingung cara downloadnya ??Baca aja halaman download dengan klik icon di samping |
feed , email and my social media![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Tutorialnya sangat membantu..
bagaimana kalau insert foto dari Suggest list? gabungan tutorial suggestlist bisa lgsg muncul foto.
mohon bantuannya 🙂
mantap…..
bagaimana kalau bukan satu kolom atau baris menampilkan gambarnya,
klo ukuran gambar selalu berubah,padahal udh dilock. berbagai cara sudah dicoba,dari mulai 1cell sampai dont move with cell. tapi tetep berubah ukuran format gambar’y.
bang kalo di userform gimana coding nya 🙁 hiks
bisa pakai control Image … mainkan properti Picture-nya
bagaimana kalau fotonya tampil pada Image (ActiveX) sedangkan sumber fotonya berasal dari folder (atau folder yg berlapis2) dan path nya tercantum pada cell. bisa gak kalo kita klik spinbutton maka Image berubah ubah fotonya sesuai path yang muncul pada cell tsb?