Как пройти через один и тот же диапазон для всех листов?

У меня есть код Excel VBA, который будет смотреть на процесс (на листе, помеченном как "Процесс A") и создавать блок-схему на листе, помеченном как блок-схема. Проблема в том, что у меня может быть до 15 разных процессов (на 15 разных листах, помеченных от "Процесс А" до "Процесс О"). Я хотел бы, чтобы VBA действовал в "Процессе А", а затем переходил к каждому последующему процессу и делал то же самое. Я дал часть кодирования ниже. По сути, код использует "Дело", чтобы определить, является ли объект Соединителем, Решением или Процессом. Затем он помещает форму, соответствующую каждому из них, в назначенное место и форматирует в соответствии с кодом. Я пробовал разные способы просмотра всех рабочих листов и диапазонов, но каждый из них приводил к сбою. Заранее благодарю за любую помощь, которую вы можете оказать!

Sub ProcessA()


Line1:     Dim ws As Worksheets
Dim ws2 As Worksheet: Set ws2 = Worksheets("Flowchart")
Dim wb As Workbook
Dim shp As Shape
Dim Left As Variant, Top As Variant, Width As Variant, Height As Variant
Dim BegX As Variant, BegY As Variant, EndX As Variant, EndY As Variant
Dim arw As Shape
Dim Vrb As String
Dim rng As Range


For Each ws In ThisWorkbook.Worksheets
If IsNumeric(Range("CK2:CK23")) = True Then


    Left = rng.Value
    Top = rng.Offset(, 1).Value
    Width = rng.Offset(, 2).Value
    Height = rng.Offset(, 3).Value
    BegX = rng.Offset(, 4).Value
    BegY = rng.Offset(, 5).Value
    EndX = rng.Offset(, 6).Value
    EndY = rng.Offset(, 7).Value
    Vrb = rng.Offset(, -87).Value

 End If

            Select Case rng.Offset(, -85).Value
            Case "Connector"
            Set shp = ws2.Shapes.AddShape(msoShapeFlowchartConnector, Left, Top, Width, Height)
                With shp
                    .TextFrame.Characters.Text = Vrb

0 ответов

Другие вопросы по тегам