На cell.Comment.ShapeRange... Я получаю сообщение об ошибке: «Ошибка во время выполнения« 1004 »: ошибка приложения или объекта». Что с этим не так?

Cells(cell.Row, 6) является справочным столбцом, который содержит URL-адреса для изображений. Например, http://somelink.com/img.jpg

Sub test()
Dim rng As Range


Set rng = Range("B2:B2331")


For Each cell In rng.Cells
    cell.AddComment
    cell.Comment.Text Text:="Owner:" & Chr(10) & ""
    cell.Comment.ShapeRange.Fill.UserPicture Cells(cell.Row, 6).Value
Next


End Sub

1 ответ1

0

Во-первых, .shaperange не является свойством или методом comment поэтому вы не можете его использовать.

Вот пример, который будет работать -

Sub tete()
Dim rng As Range
Set rng = ActiveSheet.Cells(5, 6)
rng.AddComment
rng.Comment.Text Text:="hi"
rng.Comment.Shape.Fill.UserPicture ("C:\Users\path\to\pic.jpg")
End Sub

Что приводит нас к использованию .UserPicture() который требует путь в виде строки. Так что, если ваш путь в этой ячейке, убедитесь, что вы принимаете значение этого.

Поэтому, если ячейка G1 = C:\Users\path\to\pic.jpg

rng.Comment.Shape.Fill.UserPicture (Range("G1"))

должно сработать.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .