I think I may have an iLogic rule you could use do automate this specific task. However, you would have to manually run the rule when you want to use it. You could either create this iLogic rule 'locally', within the document is it to effect, or create it as an external iLogic rule, so that it will be available to use on other documents, but the 'local' route is simplest to set-up and use quickly.
This rule first checks to make sure the 'active' document is a drawing, then if so, captures it. Then it tries to find the first parts list in the drawing, as its target. If it doesn't find one, it lets you know, then exits the rule. It then checks for a column within this parts list with the title "NOTES". If it doesn't find it, it lets you know, then exits the rule. It then starts 'looping' through each row of the parts list, checking to see if the cell in that row that corresponds with the specified column contains the text "Varies". If it does, it tries to replace the whole value of that cell with your custom value. If it doesn't contain that text, it does nothing with that cell. If it encounters an error while trying to check the value of the cell or while trying to change its value, it will let you know, then try to continue with any other rows that might remain.
Here is the code for this iLogic rule:
If ThisApplication.ActiveDocumentType <> DocumentTypeEnum.kDrawingDocumentObject Then
MsgBox("A Drawing Document must be active for this rule to work. Exiting.",vbCritical, "WRONG DOCUMENT TYPE")
Exit Sub
End If
Dim oDDoc As DrawingDocument = ThisApplication.ActiveDocument
'find first parts list in the drawing, as target
Dim oPList As PartsList
For Each oSheet As Sheet In oDDoc.Sheets
If oSheet.PartsLists.Count > 0 Then
oPList = oSheet.PartsLists.Item(1)
Exit For
End If
Next
If IsNothing(oPList) Then
MsgBox("No Parts List found in active drawing. Exiting Rule.", , "iLogic")
Exit Sub
End If
'make sure the "NOTES" column exists
Dim oNotesColExists As Boolean = False
For Each oCol As PartsListColumn In oPList.PartsListColumns
If oCol.Title = "NOTES" Then
oNotesColExists = True
Exit For
End If
Next
'make sure we found that specified column, if not, let user know then exit rule
If oNotesColExists = False Then
MsgBox("The 'NOTES' column was not found. Exiting Rule.", , "iLogic")
Exit Sub
End If
'now start looping through each row, then each cell in each row
For Each oRow As PartsListRow In oPList.PartsListRows
Try
If oRow.Item("NOTES").Value.Contains("Varies") Then
'replace this cell's Value with your custom value
oRow.Item("NOTES").Value = "REFER TO CALLOUT FOR TRQ"
End If
Catch e As Exception
MsgBox("Attempt to overwrite 'Varies' in Parts List cell failed." & vbCrLf & _
e.Message & vbCrLf & e.StackTrace,vbInformation,"iLogic")
End Try
Next
If you need help creating this rule within the document, and/or running it, just let me know.
If this solved your problem, or answered your question, please click ACCEPT SOLUTION.
Or, if this helped you, please click (LIKE or KUDOS) 👍.
If you want and have time, I would appreciate your Vote(s) for My IDEAS 💡or you can Explore My CONTRIBUTIONS
Wesley Crihfield

(Not an Autodesk Employee)