Всем привет, буду очень признателен за помощь.
Есть код, который добавляет в нужный лист фотографии.
Но столкнулся с проблемой: после добавления фотографий и отправки листа
по почте, связь с фотографиями теряется и получивший человек их не
видит.
Вопрос, как разорвать связь с фотографией после ее добавления на лист.
Спасибо.
Private Sub CommandButton5_Click()
Dim shActive As Excel.Worksheet
Dim myPath As String
Dim myShape As Excel.Shape
Dim myPicture As Picture
Dim myMax As Long
myPath = Excel.Application.GetOpenFilename(" Картинка (*.jpg), *.jpg")
On Error Resume Next
Set shActive = Sheets("Наказ")
If shActive.Shapes.Count = 1 Then
myMax = 201
Else
For Each myShape In shActive.Shapes
If myShape.TopLeftCell.Column = 12 Then
If myMax = 0 Then
myMax = myShape.TopLeftCell.Row
Else
If myShape.TopLeftCell.Row > myMax Then
myMax = myShape.TopLeftCell.Row
End If
End If
End If
Next myShape
If myMax = 0 Then
myMax = 253
Else
myMax = myMax + 1
End If
End If
Set myPicture = shActive.Pictures.Insert(myPath)
Set myShape = myPicture.ShapeRange(1)
myShape.LockAspectRatio = msoTrue
myShape.Width = 360
myShape.Top = shActive.Cells(myMax, "A").Top
myShape.Left = shActive.Cells(myMax, "A").Left
On Error Resume Next
Dim myRange As Excel.Range
End Sub
Есть код, который добавляет в нужный лист фотографии.
Но столкнулся с проблемой: после добавления фотографий и отправки листа
по почте, связь с фотографиями теряется и получивший человек их не
видит.
Вопрос, как разорвать связь с фотографией после ее добавления на лист.
Спасибо.
Private Sub CommandButton5_Click()
Dim shActive As Excel.Worksheet
Dim myPath As String
Dim myShape As Excel.Shape
Dim myPicture As Picture
Dim myMax As Long
myPath = Excel.Application.GetOpenFilename(" Картинка (*.jpg), *.jpg")
On Error Resume Next
Set shActive = Sheets("Наказ")
If shActive.Shapes.Count = 1 Then
myMax = 201
Else
For Each myShape In shActive.Shapes
If myShape.TopLeftCell.Column = 12 Then
If myMax = 0 Then
myMax = myShape.TopLeftCell.Row
Else
If myShape.TopLeftCell.Row > myMax Then
myMax = myShape.TopLeftCell.Row
End If
End If
End If
Next myShape
If myMax = 0 Then
myMax = 253
Else
myMax = myMax + 1
End If
End If
Set myPicture = shActive.Pictures.Insert(myPath)
Set myShape = myPicture.ShapeRange(1)
myShape.LockAspectRatio = msoTrue
myShape.Width = 360
myShape.Top = shActive.Cells(myMax, "A").Top
myShape.Left = shActive.Cells(myMax, "A").Left
On Error Resume Next
Dim myRange As Excel.Range
End Sub