2013-05-16 39 views
5

Cố gắng để thực hiện một macro mà dần dần chèn 3 hình ảnh trong ExcelChèn hình ảnh sang Excel VBA, phương pháp Hình thất bại

Một bảng (ảnh) chứa các URL của hình ảnh trong Cột A liên tiếp 1-3

Các các trang tính khác (đầu ra) được cho là xuất các hình ảnh theo chiều ngang.

Sub testinsertpix() 
Dim i As Integer 
Dim link As String 

For i = 1 To 3 
link = Worksheets("pics").Cells(i, "A").Value 
Cells(1, i).Select 
ActiveSheet.Pictures.Insert (link) 

Next i 

End Sub 

Chèn hình ảnh đầu tiên nhưng không thành công khi vòng lặp đến hình thứ 2.

"Phương thức chèn của lớp Ảnh không thành công"

Trợ giúp nhỏ, vui lòng?

Trả lời

0

Hãy thử:

Dim link as Variant 

Sau đó, đầu ra giá trị và xem nơi nó đang xảy ra sai. Dự đoán tốt nhất của tôi là URL của bạn không được đọc theo cách bạn mong đợi.

+0

URL này đang được đọc tốt. Tôi đặt trong một dòng Msgbox "liên kết" ngay sau khi vòng lặp để kiểm tra đã. Thanh trạng thái Excel cũng cho thấy nó tải xuống hình ảnh, nhưng nó chỉ cung cấp cho tôi thông báo lỗi không thành công này. –

+0

Và bạn chắc chắn 100% không có bất kỳ khoảng trống thừa nào ở phần cuối hoặc phần đầu, những thứ như thế? Tôi đã thấy tất cả mọi thứ đọc các giá trị tế bào trong vba ... – SBI

0

Tôi có macro tương tự và tôi đã gặp lỗi tương tự. Đối với tôi điều này đã giúp: On error resume next

Sub INSERTPICTURES() 
With Sheets("Condition_report") 
    Dim cella As Range 

    For Each cella In .Range("A1:A10000").Cells 

     If cella.Interior.ColorIndex = 3 Then 

     ActiveSheet.Shapes.AddPicture Filename:=cella, LinkToFile:=msoFalse, SaveWithDocument:=msoCTrue, Left:=cella.MergeArea.Left, Top:=cella.MergeArea.Top, Width:=cella.MergeArea.Width - 3, Height:=cella.MergeArea.Height 
     On Error Resume Next 

     End If 
    Next 
End With 
End Sub 
Các vấn đề liên quan