Я знаю, как открыть все книги в каталоге, мне нужно открыть исходную книгу и скопировать изображение из файла wbPicture.xlsx Picture 100
и для каждого открываемого wbdestination удалить любую форму, которая находится ниже строки 84 на каждом рабочем листе в режиме wbdestination.Копировать изображение во все книги в каталоге
У меня googled и нашел, что вы можете использовать это, чтобы скопировать образ из одной книги в другую, но как учесть каждый рабочий лист и как удалить существующее изображение (если они уже есть одно)?
Sub CopyImage()
Dim imagewb As String
Dim openedwb As Workbook
Dim workbook As Workbook
Dim destbook As String
Dim totalbooks As Int
Dim bookname As String
Dim fulllist() As String
imagewb = "C:\Image.xlsx"
Set openedwb = Workbooks.Open(imagewb)
'Selecting image from template workbook
For Each shape in ActiveSheet.Shapes
If shape.Name = "Picture 100" Then
shape.Select
shape.Copy
End If
Next shape
Set WB = ActiveWorkbook
'Setting location of destination workbooks
destbook = "\\Hiya\ExcelFiles\"
totalbooks = 0
'Getting name of all .xlsx workbooks
bookname = Dir(destbook & "*.xlsx")
'Creating array
totalbooks = totalbooks + 1
ReDim Preserve fullList(1 To totalbooks)
fullList(totalbooks) = bookname
bookname = Dir()
Wend
For int totalbooks = 1 To UBound(fullList)
Set openedwb = Workbooks.Open(destbook & fullList(totalbooks))
'Selecting 1st sheet
Sheets(1).Select
'Pasting image from clipboard to workbook
With Sheets(1)
.Paste(.Range("A81"))
End With
'Saving workbook & opening next
openedwb.Save
openedwb.Close False
End Sub
спасибо за этот синтаксис, но когда я пытаюсь перебирать все листы синтаксис не представляет ошибку, нО d oes фактически не обновляет все листы. – MasterOfStupidQuestions