Копирование изображений, вставленных в ячейки с одного листа на другой
Вот код по умолчанию для копирования ячеек - я использовал этот метод, потому что он копирует только видимые ячейки, игнорируя все скрытые строки:
Sheets("Master").Range("C5:D120").SpecialCells(xlCellTypeVisible).Copy
With Sheets("ExportSheet").Range("B5")
.PasteSpecial xlPasteColumnWidths
.PasteSpecial xlPasteAll
End With
Этот код не копирует любые отсеченные картинки в ячейках .... поэтому я добавил подпрограмму, чтобы сделать это:
Sub Copypics()
Dim pic As Shape, rng As Range
For Each pic In MasterAudit.Shapes
If pic.Type = msoPicture Then
pic.Copy
With Sheets("Post_Diagnostic_Report")
.Select
.Range(pic.TopLeftCell.Address).Select
.Paste
End With
Selection.Placement = xlMoveAndSize
End If
Next pic
End Sub
Эта копия копирует изображения на новый лист, но поскольку я изменил относительные строки во время своей первоначальной копии, изображение находится в неправильном столбце и из-за того, что скрытые ячейки НЕ копируются ... поэтому изображение в неправильном ряду.
Я открыт для предложений ... либо что-то в исходный блок кода, чтобы копировать картинки с ячейками одновременно - при этом все же только копировать видимые строки .... или что-то в .Range (рис. TopLeftCell.Address). Выберите строку, которая выровняет изображение по строке данных, из которой оно было скопировано.