Anda boleh memasukkan imej ke dalam hamparan Excel dengan mudah dan mengeditnya dengan kod makro. Berikut ialah cara untuk memasukkan gambar ke dalam sel menggunakan VBA dalam Excel .
Visual Basic for Applications, disingkatkan sebagai VBA, ialah satu bentuk Visual Basic 6 yang disepadukan ke dalam program Microsoft Office. Melalui pengekodan, VBA membolehkan anda mengautomasikan tugas dalam aplikasi Office, termasuk Excel. Dalam sesetengah kes, anda juga boleh menambah ciri baharu pada Excel menggunakan VBA.
Walaupun anda perlu bekerja dengan kod untuk menggunakan VBA, itu tidak bermakna VBA penuh dengan huruf dan nombor. Dengan VBA dalam Excel, anda boleh mencipta makro yang membolehkan anda memasukkan gambar ke dalam sel atau julat sel. Inilah yang anda perlu tahu tentang memasukkan gambar ke dalam sel dalam Excel menggunakan VBA.
Bagaimana untuk memasukkan gambar ke dalam sel menggunakan VBA dalam Excel
Untuk mencipta makro yang memasukkan gambar ke dalam sel Excel menggunakan VBA, anda benar-benar tidak memerlukan pengetahuan Visual Basic lanjutan. Apa yang anda perlu lakukan ialah menghidupkan alat Pembangun, buat makro dan tampal kod yang sesuai. Sudah tentu, anda juga boleh memasukkan imej ke dalam Excel tanpa menggunakan VBA. Walau bagaimanapun, dalam artikel ini, kami akan memberi tumpuan kepada VBA.
1. Hidupkan alat Pembangun
Untuk menggunakan VBA dalam Excel, anda perlu mendayakan alat Pembangun. Tindakan ini akan mendayakan tab Pembangun dalam reben, yang dilumpuhkan secara lalai.
- Buka Excel .
- Pergi ke menu Fail .
- Klik Pilihan di bahagian bawah skrin. Tetingkap Excel Options akan muncul.
- Dalam Excel Options, pergi ke tab Customize Ribbon .
- Dalam Tab Utama , semak Pembangun .
Kini alatan Pembangun, termasuk akses VBA, didayakan. Anda tidak perlu melakukan ini setiap kali anda ingin menggunakan VBA dalam Excel. Alat pembangun akan sentiasa didayakan sehingga anda melumpuhkannya.
2. Buat makro dan masukkan kod
- Dalam Excel, pergi ke tab Pembangun .
- Dalam bahagian Kod, pilih Makro .
- Dalam tetingkap baharu, masukkan nama makro anda dalam nama Makro . Artikel akan menggunakan insertPhotoMacro .
- Klik Buat .
Selepas mengklik Cipta, tetingkap VBA akan dibuka dan memaparkan kod untuk makro anda. Pada masa ini, kod akan terdiri daripada 2 baris: Sub untuk memulakan makro dan Sub End untuk menamatkannya.
Tambahkan sedikit kod pada makro ini. Tambahkan baris kod berikut di antara dua baris:
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
Kod akhir akan kelihatan seperti ini:
Anda tidak perlu risau tentang menyimpan proses ini. Sebarang perubahan yang anda buat dalam VBA disimpan serta-merta.
Kini tiba masanya untuk melihat kod dalam tindakan:
- Tutup tetingkap VBA.
- Pergi ke tab Pembangun dalam Excel.
- Pilih Makro dari bahagian Kod.
- Serlahkan makro yang baru anda buat.
- Klik Jalankan .
Kini mesej akan dibuka meminta anda mencari fail imej yang ingin anda masukkan. Pilih foto, kemudian klik Buka. Anda kini akan melihat imej dalam sel A1.
Ambil perhatian, Excel akan mengecilkan imej supaya ia muat dalam sel A1. Anda boleh menukarnya dan menukar kod untuk memasukkan imej ke dalam sel lain, malah julat sel. Dalam bahagian seterusnya, kami akan memisahkan kod dan menerangkan parameter.
3. Pisahkan kod
Untuk kod VBA berfungsi seperti yang anda mahu, anda perlu memahaminya. Apabila melakukan ini, anda boleh menukar kod untuk memasukkan imej ke dalam mana-mana sel pada sebarang saiz.
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
Apabila kod bermula, pernyataan Dim digunakan untuk menentukan jenis pembolehubah. Kami mempunyai dua jenis pembolehubah: photoNameAndPath dan photo . Mula-mula pembolehubah dan kemudian imej.
Dari situ, pembolehubah photoNameAndPath berjalan dan ia akan membuka aplikasi untuk mendapatkan lokasi fail foto. Ini dilakukan melalui Application.GetOpenFileName . Parameter Tajuk adalah pilihan. Kandungan di dalamnya dipaparkan sebagai nama tetingkap.
Menggunakan If photoNameAndPath = False Then Exit Sub , jika alamat tidak sah atau kosong diberikan, proses akan tamat. Walau bagaimanapun, jika fail yang sesuai disediakan, Set photo = ActiveSheet.Pictures.Insert(photoNameAndPath) menunjukkan bahawa gambar harus ditetapkan sebagai pembolehubah seperti yang ditakrifkan pada asalnya. Ia akan dimasukkan ke dalam lembaran kerja aktif.
Akhir sekali, gunakan Dengan foto dan 5 baris selepasnya untuk menentukan lokasi foto. .Kiri dan .Atas merujuk kepada kedudukan permulaan, manakala .Lebar dan .Tinggi merujuk kepada kedudukan akhir. Jika anda berhasrat untuk memasukkan imej ke dalam sel atau julat lain, ini adalah baris yang anda harus ubah.
.Peletakan menunjukkan bahawa gambar harus diubah saiznya agar sesuai dengan sel atau bentuk bebas yang dimasukkan. Menetapkannya kepada 1 akan mengubah saiznya mengikut sel.
Akhir sekali, kod di atas menggunakan End With , kemudian End Sub untuk menutup makro. Kini anda boleh menukar pembolehubah photoNameAndPath dan foto kepada mana-mana nama lain yang anda suka. Ingatlah untuk memastikan nama konsisten sepanjang kod.
Di atas ialah cara menggunakan VBA untuk memasukkan imej ke dalam sel dalam Excel . Semoga artikel itu berguna kepada anda.