Hello SW friends! I need a macro that adds a simple row to the top of my (bottom-up) rev table, but doesn't increment the revision. Here is the code I borrowed and modified:
Dim swApp As Object
Sub main()
Set swApp = Application.SldWorks
Dim swDraw As SldWorks.DrawingDoc
Dim swSheet As SldWorks.Sheet
Set swDraw = swApp.ActiveDoc
If Not swDraw Is Nothing Then
Set swSheet = swDraw.GetCurrentSheet
Dim swRevTable As SldWorks.RevisionTableAnnotation
Set swRevTable = swSheet.RevisionTable
If Not swRevTable Is Nothing Then
AddRevision swRevTable, " ", Array("", "", "RELEASED TO PRODUCTION")
Else
MsgBox "There is no revision table in the drawing"
End If
Else
MsgBox "Please open a drawing"
End If
End Sub
Sub AddRevision(swRevTable As SldWorks.RevisionTableAnnotation, revName As String, rowData As Variant)
Dim i As Integer
Dim swTableAnn As SldWorks.TableAnnotation
Set swTableAnn = swRevTable
swRevTable.AddRevision revName
For i = 0 To UBound(rowData)
If rowData(i) <> "" Then
swTableAnn.Text(swTableAnn.RowCount - (swTableAnn.RowCount), i) = rowData(i)
End If
Next
End Sub
This code gives me the row, which includes today's date, and the "RELEASED TO PRODUCTION" description. Unfortunately, it also increments the revision, so that the next revision skips a letter (since this rev is blank).
Is there a way to do this?
without the next revision being Rev E?
If I manually add a row (LMB top row - insert: row above), then type in the info, the rev stays correct, like this:
Any help would be appreciated. I am hoping to use this code to automate production release of multiple drawings.
Thanks a ton,
Jim
SolidworksApi/macros