нужна помощь с помощью кода для загрузки изображения - PullRequest
0 голосов
/ 24 сентября 2018
Sub Cont_attachthumb()
Dim PicFile As FileDialog
With Sheet2
  Set PicFile = Application.FileDialog(msoFileDialogFilePicker)
  With PicFile
    .Title = "Select A Content Picture"
    .Filters.Add "All Picture Files", ".jpg, *jpeg, *.gif, *.png, *bmp", 1

    If .Show <> -1 Then GoTo NoSelection

    Sheet2.Range("R11").Value = .SelectedItems(1) 'Put File Name in R11
  End With
If .Range("B3").Value = False Then .Range("M" & Sheet2.Range("B2").Value).Value = .Range("R11").Value

Cont_displaythum

NoSelection:
  End With
End Sub

Я получаю переменную объекта времени 91 с ошибкой или с переменной блока не установлена ​​ошибка

здесь ошибка

Ответы [ 2 ]

0 голосов
/ 24 сентября 2018

Разделитель не ",", а ";"Вроде бы.

изменить это

.Filters.Add "All Picture Files", ".jpg, *jpeg, *.gif, *.png, *bmp", 1

на

.Filters.Add "All Picture Files", "*.jpg; *.jpeg; *.gif; *.png; *bmp", 1
0 голосов
/ 24 сентября 2018

Вы задаете 2 With операторов: 1. With Sheet2 2. With PicFile один внутри другого, даже если они не подключены или не нужны.

Вторая часть, If .Range("B3").Value = False Then .Range("M" & Sheet2.Range("B2").Value).Value = .Range("R11").Value, скорее всего, связана с объектом Sheet2, поэтому она должна находиться внутри оператора With Sheet2, поэтому, как писал @JNevill в своем комментарии, вам нужно переместить End With после этой строки.

Дополнительные пояснения в комментариях к коду ниже:

Модифицированный код

Sub Cont_attachthumb()

Dim PicFile As FileDialog

Set PicFile = Application.FileDialog(msoFileDialogFilePicker)
With PicFile
    .Title = "Select A Content Picture"
    .Filters.Add "All Picture Files", "*.jpg, *jpeg, *.gif, *.png, *bmp", 1
    If .Show <> -1 Then GoTo NoSelection

    Sheet2.Range("R11").Value = .SelectedItems(1) 'Put File Name in R11
End With

With Sheet2
    If .Range("B3").Value = False Then .Range("M" & .Range("B2").Value).Value = .Range("R11").Value
    ' moved this ^ row above the End With
End With

Cont_displaythum ' <-- I hope this is a Sub defined somewhere else

NoSelection:

End Sub
...