Bị lỗi khi chèn hình

Liên hệ QC

hunggtg

Thành viên chính thức
Tham gia
30/11/09
Bài viết
75
Được thích
3
Chào bạn

Mình chèn hình vào file đính kèm, nhưng khi chèn hình xong thì nó đứng luôn không chạy những cái tiếp theo. Do lỗi trong đoạn code nhưng mình tìm không ra, nhờ các bạn tìm giúp nhé.

Cám ơn
 

File đính kèm

Hình như bạn thiếu hàm GetOpenFilename thì phải, nên nó bị lỗi chăng?
 
Upvote 0
Nhờ bạn chèn vào giùm luôn giúp mình với

Bạn thay thế cái này vào dòng Code của bạn:

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)")

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.
 
Upvote 0
Vẫn bị lỗi như cũ bạn ơi

À, quên nói với bạn là VBA không load hình có đuôi là *.png đâu bạn nhé, các đuôi sau đây thì được:

*.jpg; *.jpeg; *.bmp; *.gif ...

Bạn kiểm tra lại nhé! Nhớ viết tên hình liền vào nhau đấy, không thôi sẽ bị lỗi access... đó.
 
Upvote 0
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
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
Xong!
Đươ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é
 

File đính kèm

Upvote 0
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
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
Xong!
Đươ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é

Cao thủ quá, cám ơn bạn nhiều nhé
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom