我有Excel VBA代码,该代码将查看一个流程(在工作表上标记为“流程A”),并在工作表上生成一个流程图,该流程图称为流程图。问题是我可能有多达15个不同的流程(在15个不同的工作表上,从“流程A”到“流程O”的标签)。我想做的是让VBA对“进程A”起作用,然后继续进行每个连续的进程并执行相同的操作。我在下面给出了部分编码。本质上,代码使用“案例”来确定对象是连接器,决策还是流程。然后,将与这些形状相对应的形状放在指定的位置,并根据代码进行格式化。我尝试了各种方法来遍历所有工作表和范围,但是每种方法均导致失败。预先感谢您提供的任何帮助!
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