Переключитесь с дочерней фигуры на группу, чтобы выбрать - PullRequest
0 голосов
/ 28 марта 2019

У меня реальная проблема с интеграцией двух отдельных функций манипуляции с фигурами.

Этот псевдокод работает (я упустил некоторые функции для простоты).Он просматривает список имен объектов в столбце N, выбирает объект с таким именем, затем раскрашивает его.

Sub Macro1()
Dim shp As Shape
Dim clr As Range
Dim i As Integer
'
    Range("R2").Select
    Range(Selection, Selection.End(xlDown)).Select
    Selection.Copy
    Range("O2").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False

    For i = 2 To 300
        Set clr = Sheets("SheetName1").Range("O" & i)
        Sheets("SheetName1").Shapes.Range(Array(Cells(i, 14))).Select
        Selection.ShapeRange.Fill.ForeColor.RGB = RGB(1, 2, 3) 'RGB actually calculated - just go with it!
    Next i
end sub

и ЭТОТ код работает;при этом выбирается имя группы для объектов в предыдущем цикле, а также объект заголовка и легенды, копируется и вставляется как объект изображения на другой вкладке:

sub Macro2()        
    Sheets("SheetName1").Shapes.Range(Array("WholeGroupItem")).Select
    Application.CutCopyMode = False
    Selection.Copy ' << ----
    Sheets("Destination1").Select
    Range("B7").Select
    ActiveSheet.Pictures.Paste.Select
End Sub

Однако, когда я объединяю их вместеи запустить в одном макросе, я получаю сообщение об ошибке на этапе, помеченном ' << ---- отчет:

метод копирования класса groupobject не удалось

Это почти как проблемаотмена выбора последнего дочернего объекта и выбор (копирование) родительской группы.Я попытался добавить случайный range("A1").select, но это не имеет никакого значения.

Есть идеи?

1 Ответ

0 голосов
/ 29 марта 2019

Я нашел решение. Терпение!

Буквально. После первоначального цветного вызова я добавил строку Calculate для принудительного обновления различных условных форматов и т. Д., Которые, по общему признанию, я не включил в исходный пост, поскольку это явно не было проблемой.

Все отсортировано. Надеюсь, это поможет другой душе в будущем.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...