Hình như bạn thiếu hàm GetOpenFilename thì phải, nên nó bị lỗi chăng?
Nhờ bạn chèn vào giùm luôn giúp mình với
fileToOpen = Application.GetOpenFilename("Picture Files (*.emf; *.wmf; *.jpg; *.jpeg; *.png; *.bmp; *.dib; *.gif; *.tif; *.tiff), *.emf; *.wmf; *.jpg; *.jpeg; *.png; *.bmp; *.dib; *.gif; *.tif; *.tiff)")
Bạn thay thế cái này vào dòng Code của bạn:
File hình của bạn phải viết liền nhau. Ví dụ: Hinh_Anh_001 chẳng hạn. Không được có khoảng cách, không được viết có dấu tiếng Việt.
Vẫn bị lỗi như cũ bạn ơi
Tôi thấy code chèn hình vào UserForm đâu có vấn đề gì chứVẫn bị lỗi như cũ bạn ơi
Private LastSelectedFilePath
Private Sub BrowseForFile_Click()
On Error Resume Next
LastSelectedFilePath = Application.GetOpenFilename("Picture Files (*.emf; *.wmf; *.jpg; *.jpeg; *.png; *.bmp; *.dib; *.gif; *.tif; *.tiff), *.emf; *.wmf; *.jpg; *.jpeg; *.png; *.bmp; *.dib; *.gif; *.tif; *.tiff")
Image1.PictureSizeMode = 1
Image1.Picture = LoadPicture(LastSelectedFilePath)
End Sub
Private Sub SendPictureToRange_Click()
Dim r As Range
On Error Resume Next
BrowsePicture.Hide
Set r = Application.InputBox("Select the range to insert your picture...", , , , , , , 8)
r.RowHeight = 46
With Sheet1.Pictures.Insert(LastSelectedFilePath)
.Top = r.Top + 1: .Left = r.Left + 1
.Width = 64
.Height = r.Height
End With
Unload BrowsePicture
End Sub
Chắc vẫn chưa đoán ra được nhỉ? Ẹc... Ẹc... Để nói luôn:
- Sheet đang protect thì làm sao chèn hình
- Ẩn cửa sổ Form cũng không cần đến các hàm API làm gì
vân vân
Tôi sửa lại thế này:
PHP:Private LastSelectedFilePath
PHP:Private Sub BrowseForFile_Click() On Error Resume Next LastSelectedFilePath = Application.GetOpenFilename("Picture Files (*.emf; *.wmf; *.jpg; *.jpeg; *.png; *.bmp; *.dib; *.gif; *.tif; *.tiff), *.emf; *.wmf; *.jpg; *.jpeg; *.png; *.bmp; *.dib; *.gif; *.tif; *.tiff") Image1.PictureSizeMode = 1 Image1.Picture = LoadPicture(LastSelectedFilePath) End Sub
Xong!PHP:Private Sub SendPictureToRange_Click() Dim r As Range On Error Resume Next BrowsePicture.Hide Set r = Application.InputBox("Select the range to insert your picture...", , , , , , , 8) r.RowHeight = 46 With Sheet1.Pictures.Insert(LastSelectedFilePath) .Top = r.Top + 1: .Left = r.Left + 1 .Width = 64 .Height = r.Height End With Unload BrowsePicture End Sub
Đương nhiên phải Unprotect sheet mới chèn hình vào cell được
Còn lại, tùy biến thế nào nữa lầ việc của bạn nhé