Note: The other languages of the website are Google-translated. Back to English

Bagaimana cara mengubah URL gambar menjadi gambar sebenarnya di Excel?

doc url ke img 1

Jika Anda memiliki daftar alamat URL gambar di kolom A, dan sekarang, Anda ingin mendownload gambar yang sesuai dari URL dan menampilkannya ke kolom B yang berdekatan seperti gambar di sebelah kiri yang ditampilkan. Di Excel, bagaimana Anda bisa mengekstrak gambar sebenarnya dari URL gambar dengan cepat dan mudah?

Konversikan URL gambar menjadi gambar aktual dengan kode VBA

Ubah URL gambar menjadi gambar sebenarnya dengan Kutools for Excel


Konversikan URL gambar menjadi gambar aktual dengan kode VBA

Kode VBA berikut dapat membantu Anda mengekstrak gambar sebenarnya dengan cepat dari alamat URL gambar, lakukan seperti ini:

1. Tahan ALT + F11 kunci untuk membuka jendela Microsoft Visual Basic for Applications.

2. Klik Menyisipkan > Modul, dan tempel kode berikut di Module Window.

Kode VBA: Ubah URL gambar menjadi gambar sebenarnya:

Sub URLPictureInsert()
Dim Pshp As Shape
Dim xRg As Range
Dim xCol As Long
On Error Resume Next
Application.ScreenUpdating = False
Set Rng = ActiveSheet.Range("A2:A5")
For Each cell In Rng
filenam = cell
ActiveSheet.Pictures.Insert(filenam).Select
Set Pshp = Selection.ShapeRange.Item(1)
If Pshp Is Nothing Then GoTo lab
xCol = cell.Column + 1
Set xRg = Cells(cell.Row, xCol)
With Pshp
.LockAspectRatio = msoFalse
If .Width > xRg.Width Then .Width = xRg.Width * 2 / 3
If .Height > xRg.Height Then .Height = xRg.Height * 2 / 3
.Top = xRg.Top + (xRg.Height - .Height) / 2
.Left = xRg.Left + (xRg.Width - .Width) / 2
End With
lab:
Set Pshp = Nothing
Range("A2").Select
Next
Application.ScreenUpdating = True
End Sub

Catatan: 

  • 1. Pada kode di atas, A2: A5 adalah rentang sel yang berisi alamat URL yang ingin Anda ekstrak gambarnya, Anda harus mengubah referensi sel sesuai kebutuhan Anda.
  • 2. Dengan kode ini, Anda tidak dapat menentukan ukuran gambar yang diekstrak sesuai kebutuhan Anda.
  • 3. Kode di atas hanya dapat mengekstrak gambar aktural ke dalam sel selain kolom URL Anda, Anda tidak dapat menentukan sel untuk menampilkan gambar.
  • 4. Anda harus memiliki pengetahuan dasar tentang kode, jika ada karakter yang terlewat atau salah, kode tidak akan berhasil dijalankan.

3. Lalu tekan F5 kunci untuk menjalankan kode ini, dan semua gambar yang sesuai telah diekstraksi dari URL gambar ke kolom yang berdekatan sekaligus, dan gambar akan ditempatkan di tengah sel spesifik Anda, lihat tangkapan layar:

doc url ke img 2


Ubah URL gambar menjadi gambar sebenarnya dengan Kutools for Excel

Jika Anda tidak terbiasa dengan kode VBA atau ingin memperbaiki batasan kode di atas, Kutools untuk Excel's Sisipkan Gambar bentuk Jalur (URL) Fitur ini dapat membantu Anda dengan cepat memasukkan gambar yang sesuai berdasarkan alamat URL atau jalur tertentu di komputer Anda seperti gambar di bawah ini. Klik untuk mengunduh Kutools for Excel!

Note:Untuk menerapkan ini Sisipkan Gambar bentuk Jalur (URL), pertama, Anda harus mengunduh Kutools untuk Excel, lalu terapkan fitur dengan cepat dan mudah.

Setelah menginstal Kutools untuk Excel, lakukan seperti ini:

1. Klik Kutools > Menyisipkan > Sisipkan Gambar bentuk Jalur (URL), di kotak dialog yang muncul, silakan atur operasi berikut, lihat tangkapan layar:

doc url ke img 3 doc url ke img 4

2. Lalu klik Ok tombol, dan gambar akan diekstrak dari URL, lihat tangkapan layar:

doc url ke img 1

Klik untuk Mengunduh dan uji coba gratis Kutools for Excel Sekarang!


Alat Produktivitas Kantor Terbaik

Kutools for Excel Memecahkan Sebagian Besar Masalah Anda, dan Meningkatkan Produktivitas Anda hingga 80%

  • Reuse: Masukkan dengan cepat rumus, bagan yang kompleks dan apa pun yang pernah Anda gunakan sebelumnya; Enkripsi Sel dengan kata sandi; Buat Milis dan mengirim email ...
  • Bilah Formula Super (dengan mudah mengedit beberapa baris teks dan rumus); Membaca Tata Letak (membaca dan mengedit sel dalam jumlah besar dengan mudah); Tempel ke Rentang yang Difilter...
  • Gabungkan Sel / Baris / Kolom tanpa kehilangan Data; Pisahkan Konten Sel; Gabungkan Baris / Kolom Duplikat... Mencegah Sel Duplikat; Bandingkan Rentang...
  • Pilih Duplikat atau Unik Baris; Pilih Baris Kosong (semua sel kosong); Temukan Super dan Temukan Fuzzy di Banyak Buku Kerja; Pilih Acak ...
  • Salinan Tepat Beberapa Sel tanpa mengubah referensi rumus; Buat Referensi Otomatis ke Beberapa Lembar; Sisipkan Poin, Kotak Centang, dan lainnya ...
  • Ekstrak Teks, Tambahkan Teks, Hapus berdasarkan Posisi, Hapus Space; Membuat dan Mencetak Subtotal Paging; Konversi Konten Antar Sel dan Komentar...
  • Filter Super (simpan dan terapkan skema filter ke sheet lain); Penyortiran Lanjutan menurut bulan / minggu / hari, frekuensi dan lainnya; Filter Khusus dengan huruf tebal, miring ...
  • Gabungkan Workbooks dan WorkSheets; Gabungkan Tabel berdasarkan kolom kunci; Pisahkan Data menjadi Beberapa Lembar; Konversi Batch xls, xlsx dan PDF...
  • Lebih dari 300 fitur canggih. Mendukung Office / Excel 2007-2021 dan 365. Mendukung semua bahasa. Penerapan yang mudah di perusahaan atau organisasi Anda. Fitur lengkap Uji coba gratis 30 hari. Jaminan uang kembali 60 hari.
tab kte 201905

Tab Office Membawa antarmuka Tab ke Office, dan Membuat Pekerjaan Anda Jauh Lebih Mudah

  • Aktifkan pengeditan dan pembacaan tab di Word, Excel, PowerPoint, Publisher, Access, Visio, dan Project.
  • Buka dan buat banyak dokumen di tab baru di jendela yang sama, bukan di jendela baru.
  • Meningkatkan produktivitas Anda sebesar 50%, dan mengurangi ratusan klik mouse untuk Anda setiap hari!
officetab bawah
Urutkan komentar berdasarkan
komentar (61)
Belum ada peringkat. Jadilah yang pertama memberi peringkat!
Komentar ini diminimalkan oleh moderator di situs
Bisakah Anda mengubah "on error resume next" menjadi sesuatu yang akan menunggu hingga Google Chrome punya waktu untuk membuka gambar? Saya mencoba kode ini dan berhasil, tetapi beberapa gambar disisipkan beberapa baris di bawah di mana seharusnya, jadi saya berasumsi pernyataan "on error" tidak memberikan waktu yang cukup. Jika Anda pikir itu bisa menjadi sesuatu yang lain atau memiliki saran lain, saya terbuka untuk mendengarnya. Terima kasih!
Komentar ini diminimalkan oleh moderator di situs
Ini sangat membantu, terima kasih banyak
Komentar ini diminimalkan oleh moderator di situs
Saya sudah mencoba formulanya, tetapi sepertinya tidak berhasil. Apakah itu harus melakukan sesuatu dengan versi Excel (saya memiliki versi terbaru) Saya menghargai jawaban Anda
Komentar ini diminimalkan oleh moderator di situs
Masalah apa yang Anda dapatkan?
Komentar ini diminimalkan oleh moderator di situs
Kesalahan run-time '1004': Tidak bisa mendapatkan properti insert dari kelas Pictures
Komentar ini diminimalkan oleh moderator di situs
Ini juga tidak bekerja untuk saya. Saya memiliki Excel 2013 dan saya hanya perlu sepotong kode langsung yang akan menyisipkan gambar selain url yang ada di kolom di spreadsheet saya. Setiap solusi yang saya coba yang tersedia melalui Google Penelusuran atau melalui YouTube telah membuat kesalahan nilai sisipan gambar. Apa yang saya lakukan salah??? Apakah url seharusnya TIDAK berupa hyperlink? Apakah mereka SEHARUSNYA menjadi hyperlink? Apakah saya harus mengidentifikasi rentang kolom yang menjadi tujuan output? Saya tidak dapat menemukan set instruksi yang mudah diikuti di mana saja, tolong bantu. Ketika saya menggunakan kode ANDA, saya mendapatkan kelas "Tidak dapat memasukkan properti dari Gambar":
Komentar ini diminimalkan oleh moderator di situs
Saya memiliki masalah yang sama dan ternyata Anda perlu memeriksa url Anda. jika itu adalah HTTPS itu berarti itu adalah koneksi yang aman dan VBA tidak akan dapat mengekstraknya. jika itu adalah HTTP biasa seharusnya tidak ada masalah
Komentar ini diminimalkan oleh moderator di situs
Terima kasih. Ini berhasil untuk saya Bagaimana cara mengubah/memodifikasi sintaks untuk menampilkan url gambar yang dilindungi kata sandi
Komentar ini diminimalkan oleh moderator di situs
Hai semuanya, saya telah memodifikasi kode ini sehingga berfungsi untuk rentang yang dipilih alih-alih memasukkan rentang tertentu, Namun, adakah yang bisa menyarankan saya cara memodifikasi kode ini untuk memiliki gambar di tengah sel. Saat ini gambar ditampilkan di sudut kiri atas

Sub URLPictureInsert()

Redupkan Pshp Sebagai Bentuk

Redupkan Sel Sebagai Rentang

On Error Resume Next

Application.ScreenUpdating = Salah

Untuk Setiap rCell Dalam Seleksi

filenam = rCell ActiveSheet.Pictures.Insert(nama file).Pilih

Atur Pshp = Seleksi.ShapeRange.Item(1)

Dengan Pshp

.LockAspectRatio = msoTrue

.Lebar = 100

.Tinggi = 100

.Memotong

Berakhir dengan

Sel(rCell.Row, rCell.Column + 1).PasteSpecial

Aplikasi Berikutnya.ScreenUpdating = Benar

End Sub
Komentar ini diminimalkan oleh moderator di situs
LUAR BIASA! ini sangat bagus! saya memiliki 350 baris hyperlink dan hanya butuh 5 menit untuk menarik semua gambar!
Komentar ini diminimalkan oleh moderator di situs
hei, adakah yang bisa melampirkan tautan lembar excel dengan kode makro yang diaktifkan sehingga saya dapat mengunduh dan bereksperimen, saya baru mengenal VB dan saya sangat perlu melakukan ini.
Komentar ini diminimalkan oleh moderator di situs
Bagi saya, semua yang muncul di setiap sel adalah nama metodenya. Mereka semua mengatakan "Sub URLPictureInsert()"
Komentar ini diminimalkan oleh moderator di situs
Bekerja dengan sempurna tetapi adakah yang bisa membantu saya menambahkan sesuatu untuk memeriksa apakah gambar itu ada dan jika tidak, posting teks di sel seperti "Gambar tidak tersedia" ??
Komentar ini diminimalkan oleh moderator di situs
Di Excel 2010 saya harus menambahkan deklarasi ini

Dim Rng Sebagai Rentang
Sel redup Sebagai Rentang
Redupkan nama file As String
Komentar ini diminimalkan oleh moderator di situs
Agar ini berfungsi di Excel 2010 saya harus menambahkan deklarasi ini.


Dim Rng Sebagai Rentang
Sel redup Sebagai Rentang
Redupkan nama file As String
Komentar ini diminimalkan oleh moderator di situs
Apakah ada cara untuk menjalankan ini sehingga melintasi baris, bukan kolom? Saya telah mencoba hanya mengubah rentang dan lokasi akhir gambar tetapi hanya menghasilkan sel pertama.
Komentar ini diminimalkan oleh moderator di situs
Hai, Taylor,
Mungkin kode VBA berikut dapat membantu Anda mengekstrak gambar asli dalam satu baris URL:


Sub URLPictureInsert()
Redupkan Pshp Sebagai Bentuk
On Error Resume Next
Application.ScreenUpdating = Salah
Atur Rng = ActiveSheet.Range("A1:E1")
Untuk Setiap sel Dalam Rng
nama file = sel
ActiveSheet.Pictures.Insert(nama file).Pilih
Atur Pshp = Seleksi.ShapeRange.Item(1)
Dengan Pshp
.LockAspectRatio = msoTrue
.Lebar = 100
.Tinggi = 100
.Memotong
Berakhir dengan
Sel(sel.Baris + 1, sel.Kolom).PasteSpecial
Next
Application.ScreenUpdating = Benar
End Sub

Silahkan dicoba, semoga bisa membantu. Terima kasih!
Komentar ini diminimalkan oleh moderator di situs
Hai kawan,
Akan senang jika ini berfungsi tetapi ketika saya menyalin ini di VBA & klik saat dijalankan, saya hanya mendapatkan teks ini:
Sub URLPictureInsert()
Bisakah Anda membantu saya untuk mendapatkan thumbnail gambar?
Komentar ini diminimalkan oleh moderator di situs
Halo,
Saat menerapkan kode, Anda dapat mengubah ukuran lebar dan tinggi gambar agar sesuai dengan sel Anda.
Terima kasih!
Komentar ini diminimalkan oleh moderator di situs
Berfungsi bagus untuk menarik gambar, tetapi mereka ditempatkan secara acak dan tidak di sel yang diharapkan... Excel 2016 dari Office365...
Komentar ini diminimalkan oleh moderator di situs
Halo, DKcrm,
Terima kasih atas komentar Anda, kode dalam artikel ini telah diperbarui, silakan coba yang baru, semoga dapat membantu Anda!
Komentar ini diminimalkan oleh moderator di situs
Terima kasih untuk posting Anda. Bagaimana saya bisa mendapatkan gambar di tengah sel. Dengan kode saat ini, gambar ditampilkan di sudut kiri atas
Komentar ini diminimalkan oleh moderator di situs
Halo, Khan,
kode VBA berikut dapat membantu Anda untuk mengekstrak gambar dan meletakkannya di tengah sel, silakan coba.

Sub URLPictureInsert()
Redupkan Pshp Sebagai Bentuk
Redupkan xRg Sebagai Rentang
Redupkan xCol Selamanya
On Error Resume Next
Application.ScreenUpdating = Salah
Atur Rng = ActiveSheet.Range("A2:A6")
Untuk Setiap sel Dalam Rng
nama file = sel
ActiveSheet.Pictures.Insert(nama file).Pilih
Atur Pshp = Seleksi.ShapeRange.Item(1)
Jika Pshp Bukan Apa-apa Kemudian GoTo lab
xCol = sel.Kolom + 1
Set xRg = Sel(sel.Baris, xCol)
Dengan Pshp
.LockAspectRatio = msoFalse
Jika .Width > xRg.Width Maka .Width = xRg.Width * 2 / 3
Jika .Height > xRg.Height Maka .Height = xRg.Height * 2 / 3
.Top = xRg.Top + (xRg.Tinggi - .Tinggi) / 2
.Kiri = xRg.Kiri + (xRg.Lebar - .Lebar) / 2
Berakhir dengan
laboratorium:
Setel Pshp = Tidak Ada
Rentang("A2").Pilih
Next
Application.ScreenUpdating = Benar
End Sub
Komentar ini diminimalkan oleh moderator di situs
Tidak dapat menjalankannya, dapatkah Anda menunjukkan kode lengkap untuk permintaan ini?
Komentar ini diminimalkan oleh moderator di situs
Halo,
Saya ingin mengunduh gambar dari URL (Kolom A) di folder tertentu dan mengganti nama gambar yang sama dengan kode/nomor yang ada di Kolom B.
Komentar ini diminimalkan oleh moderator di situs
Halo, Vipin,
Untuk menyimpan gambar URL ke dalam folder dan mengganti namanya dengan nama baru di Kolom B, mungkin kode VBA berikut dapat membantu Anda:

Catatan: Kolom A berisi alamat URL dan Kolom B memiliki nama baru.

#Jika VBA7 Lalu
Deklarasikan Pribadi URL Fungsi PtrSafeDownloadToFile Lib "urlmon" Alias ​​​​"URLDownloadToFileA" (ByVal pCaller Selama, ByVal szURL Sebagai String, ByVal szFileName Sebagai String, ByVal dwReserved Selama, ByVal lpfnCB Selama) Selama
#Lain
Deklarasikan Fungsi Pribadi URLDownloadToFile Lib "urlmon" Alias ​​​​"URLDownloadToFileA" (ByVal pCaller Selama, ByVal szURL Sebagai String, ByVal szFileName Sebagai String, ByVal dwReserved Selama, ByVal lpfnCB Selama) Selama
#Berakhir jika
Sub URLPictureInsert()
Redupkan Aku Sebagai Bilangan Bulat
Redupkan xStr Sebagai String
Redupkan xFd Sebagai FileDialog
Redupkan xArr, xFdItem Sebagai Varian
Application.ScreenUpdating = Salah
Setel xFd = Application.FileDialog(msoFileDialogFolderPicker)
Jika xFd.Tunjukkan = -1 Maka
xFdItem = xFd.Item Terpilih.Item(1)
xArr = Range("A2:B5").Nilai
Untuk I = 1 Ke UBound(xArr)
Jika xArr(I, 1) <> "" Maka
xStr = Mid(xArr(I, 1), InStrRev(xArr(I, 1), "."), Len(xArr(I, 1)))
URLDownloadToFile 0, xArr(I, 1), xFdItem & "\" & xArr(I, 2) & I & xStr, 0, 0
End If
Next
End If
Application.ScreenUpdating = Benar
End Sub

Silahkan dicoba, semoga bisa membantu!
Komentar ini diminimalkan oleh moderator di situs
bagian penggantian nama pada kolom B diunggah ke folder tetapi menambahkan jumlah angka di sebelah nama gambar, bagaimana saya bisa menghilangkannya?

Terima kasih
Komentar ini diminimalkan oleh moderator di situs
Hai, David,
Mungkin kode vba di bawah ini dapat membantu Anda mengekstrak gambar dan mengganti namanya tanpa nomor subfix, silakan coba. Semoga bisa membantu Anda!

#Jika VBA7 Lalu
Deklarasikan Pribadi URL Fungsi PtrSafeDownloadToFile Lib "urlmon" Alias ​​​​"URLDownloadToFileA" (ByVal pCaller Selama, ByVal szURL Sebagai String, ByVal szFileName Sebagai String, ByVal dwReserved Selama, ByVal lpfnCB Selama) Selama
#Lain
Deklarasikan Fungsi Pribadi URLDownloadToFile Lib "urlmon" Alias ​​​​"URLDownloadToFileA" (ByVal pCaller Selama, ByVal szURL Sebagai String, ByVal szFileName Sebagai String, ByVal dwReserved Selama, ByVal lpfnCB Selama) Selama
#Berakhir jika
Sub URLPictureInsert()
Redupkan Aku Sebagai Bilangan Bulat
Redupkan xStr Sebagai String
Redupkan xFd Sebagai FileDialog
Redupkan xArr, xFdItem Sebagai Varian
Application.ScreenUpdating = Salah
Setel xFd = Application.FileDialog(msoFileDialogFolderPicker)
Jika xFd.Tunjukkan = -1 Maka
xFdItem = xFd.Item Terpilih.Item(1)
xArr = Range("A2:B5").Nilai
Untuk I = 1 Ke UBound(xArr)
Jika xArr(I, 1) <> "" Maka
xStr = Mid(xArr(I, 1), InStrRev(xArr(I, 1), "."), Len(xArr(I, 1)))
URLDownloadToFile 0, xArr(I, 1), xFdItem & "\" & xArr(I, 2) & xStr, 0, 0
End If
Next
End If
Application.ScreenUpdating = Benar
End Sub
Komentar ini diminimalkan oleh moderator di situs
Oh Tuhan!! Anda baru saja memberikan keajaiban, Ini bekerja seperti pesona. Terima kasih banyak.
Komentar ini diminimalkan oleh moderator di situs
range diatur, filenam = url dan berubah dengan setiap pass, Pshp selalu tidak ada. Ide apapun
Komentar ini diminimalkan oleh moderator di situs
Saya menggunakan prosesor Intel I5, windows 7 professional 64bit, Office 2016 64 bit. Saya berasumsi bahwa masalahnya adalah pengaturan di Excel. Bantuan apa pun akan sangat dihargai.
rentang diatur, filenam = url dan berubah dengan setiap pass, Pshp selalu tidak ada, URL diverifikasi, Ide Apa Saja
Komentar ini diminimalkan oleh moderator di situs
Hai skyyang, pertama untuk posting informatif seperti itu. Saya punya pertanyaan, bisakah Anda membantu saya. Dengan menggunakan kode milik Anda ini, saya ingin mengekstrak hanya satu gambar dan ingin menempatkannya di sel tertentu. Apa itu mungkin??
Komentar ini diminimalkan oleh moderator di situs
Halo, Shozib,
Untuk menempatkan gambar ke sel lain yang Anda inginkan, silakan terapkan kode VBA berikut:

Sub URLPictureInsert1()
'Perbarui oleh Extendoffice 20180608
Redupkan Pshp Sebagai Bentuk
Redupkan xRg Sebagai Rentang
Redupkan xCol Selamanya
On Error Resume Next
Set Rng = Application.InputBox("Silahkan pilih sel url:", "KuTools for excel", Selection.Address, , , , , 8)
Jika Rng Bukan Apa-apa Kemudian Keluar Sub
Set xRg = Application.InputBox("Silakan pilih sel untuk meletakkan gambar:", "KuTools for excel", , , , , , 8)
Jika xRg Bukan Apa-apa Kemudian Keluar Sub
Application.ScreenUpdating = Salah
Untuk I = 1 Ke Rng.Count
nama file = Rng(I)
ActiveSheet.Pictures.Insert(nama file).Pilih
Atur Pshp = Seleksi.ShapeRange.Item(1)
Jika Pshp Bukan Apa-apa Kemudian GoTo lab
xCol = sel.Kolom + 1
Tetapkan xRg = xRg.Offset(I - 1, 0)
Dengan Pshp
.LockAspectRatio = msoFalse
.Lebar = 80
.Tinggi = 80
.Top = xRg.Top + (xRg.Tinggi - .Tinggi) / 2
.Kiri = xRg.Kiri + (xRg.Lebar - .Lebar) / 2
Berakhir dengan
laboratorium:
Setel Pshp = Tidak Ada
Rentang("A2").Pilih
Next
Application.ScreenUpdating = Benar
End Sub

Silakan dicoba, semoga bisa membantu Anda!
Komentar ini diminimalkan oleh moderator di situs
Hi semua, Makro ini sangat bagus. Namun, itu tidak benar-benar menambahkan gambar ke file tetapi tautan yang menghasilkan gambar setiap kali saya membuka file. Jadi saya tidak dapat mengompres gambar karena tidak benar-benar ada di dalam file. Bisakah Anda membantu saya untuk benar-benar menyimpan gambar di dalam file?
Komentar ini diminimalkan oleh moderator di situs
Hai! Saya memiliki pertanyaan yang sama.
Adakah cara untuk menyimpan gambar secara efektif di excel? (dan tidak terhubung ke luar)
Belum ada komentar yang diposting di sini
Muat Lebih
Tinggalkan komentar anda
Posting sebagai Tamu
×
Beri peringkat pos ini:
0   Karakter
Lokasi yang Disarankan

Ikuti kami

Hak Cipta © 2009 - www.extendoffice.com. | Seluruh hak cipta. Dipersembahkan oleh ExtendOffice. | Peta Situs
Microsoft dan logo Office adalah merek dagang atau merek dagang terdaftar dari Microsoft Corporation di Amerika Serikat dan / atau negara lain.
Dilindungi oleh Sectigo SSL