Worksheets("MLS").Shapes.Range(Array("Rounded Rectangle 1"))
относится к форме с названием «Rounded Rectangle 1» на листе «MLS», поэтому вы не найдете определения, которое вы ищете в своем коде, это объект, который существует на листе.
Worksheets("SheetName").Shapes.Range([arg])
используется для ссылки на подмножество фигур, представленных на названном листе (т. Е. Объекты в коллекции Shapes
этого листа). Аргумент метода Shapes.Range
может быть либо:
- Целое число, со ссылкой на индекс формы в
Shapes
коллекции
- строку, ссылаясь на имя формы в
Shapes
коллекции.
- Array, содержащий строки и/или целые числа, ссылаясь на имена/индексы фигур в коллекции
Shapes
.
В вашем конкретном случае использование Array("Rounded Rectangle 1")
ненужно и линия в вопросе могла бы быть написана как
Worksheets("MLS").Shapes.Range("Rounded Rectangle 1")
с тем же эффектом, или даже просто
Worksheets("MLS").Shapes("Rounded Rectangle 1")
Однако если на вашем листе было несколько Rounded Rectangles, тогда вам нужно будет использовать полную ссылку на жир, которую использовал ваш программист тайны, что-то вроде строк
Worksheets("MLS").Shapes.Range(Array("Rounded Rectangle 1", "Rounded Rectangle 2", "Rounded Rectangle 3"))
Что бы вернуть коллекцию, содержащую форму объектов с закругленными углами 1, 2 & 3.
Это имя формы на листе MLS. Я предполагаю, что это округленный прямоугольник;) – Rory