Изучение нескольких методов для перебора всех фигур в книге Excel с использованием VBA

В этой статье блога мы углубимся в различные методы циклического перебора всех фигур в книге Excel с помощью VBA. Фигуры в Excel могут включать в себя такие объекты, как изображения, диаграммы, кнопки и т. д. Поняв эти различные методы, вы сможете эффективно манипулировать и обрабатывать фигуры в макросах VBA. Давайте углубимся в примеры кода!

Метод 1: перебор всех фигур на определенном листе

Sub LoopShapesInWorksheet()
    Dim ws As Worksheet
    Dim shp As Shape

    Set ws = ThisWorkbook.Worksheets("Sheet1") ' Replace "Sheet1" with the desired worksheet name

    For Each shp In ws.Shapes
        ' Do something with the shape
        Debug.Print shp.Name
    Next shp
End Sub

Метод 2. Перебор всех фигур на активном листе

Sub LoopShapesInActiveWorksheet()
    Dim shp As Shape

    For Each shp In ActiveSheet.Shapes
        ' Do something with the shape
        Debug.Print shp.Name
    Next shp
End Sub

Метод 3. Перебор всех фигур во всей книге

Sub LoopShapesInWorkbook()
    Dim wb As Workbook
    Dim ws As Worksheet
    Dim shp As Shape

    Set wb = ThisWorkbook

    For Each ws In wb.Worksheets
        For Each shp In ws.Shapes
            ' Do something with the shape
            Debug.Print shp.Name
        Next shp
    Next ws
End Sub

Метод 4. Перебор всех фигур с использованием коллекции фигур

Sub LoopShapesUsingShapesCollection()
    Dim shp As Shape

    For Each shp In ThisWorkbook.Sheets("Sheet1").Shapes ' Replace "Sheet1" with the desired sheet name
        ' Do something with the shape
        Debug.Print shp.Name
    Next shp
End Sub

Метод 5. Перебор всех фигур с использованием коллекции имен

Sub LoopShapesUsingNamesCollection()
    Dim shp As Object

    For Each shp In ThisWorkbook.Names
        If TypeName(shp.RefersToRange) = "Shape" Then
            ' Do something with the shape
            Debug.Print shp.RefersToRange.Name
        End If
    Next shp
End Sub

В этой статье мы рассмотрели различные методы перебора всех фигур в книге Excel с помощью VBA. Используя эти методы, вы можете эффективно обрабатывать и манипулировать фигурами в макросах. Не забудьте адаптировать примеры кода в соответствии с вашими конкретными потребностями. Приятного кодирования!