Я пытаюсь изменить число чертежей из примерно 300+ чертежей (IDW) в изобретателе 2019. Проблема, с которой я сталкиваюсь с API, заключается в том, чтобы заставить его находить и изменять правильную строку.
Примером номера чертежа является 17-677-001, где 17-677 - номер задания, а 001 - произвольный идентификатор для этого чертежа. Я переворачиваю эти чертежи и хочу выполнить макрос, который можно выполнить в пакетном режиме, чтобы найти номер чертежа, содержащий 17-677, и заменить только деталь 17-677 на 19-085.
У меня есть код, который я пытался написать после прочтения об объектной модели, но я думаю, что пропустил несколько шагов в процессе. Способ установки титровального блока может быть частью проблемы. Под этим я подразумеваю, что номер чертежа находится не в текстовом поле в определении блока заголовка, а скорее в значении свойства, которое символически вызывается в блоке заголовка.
Пример. Имя свойства равно значению 17-677-001, которое необходимо изменить.
Код выглядит следующим образом
Sub replaceDwgNo()
Dim doc As DrawingDocument
Set doc = ThisApplication.ActiveDocument
Dim sheet As sheet
Set sheet = doc.ActiveSheet
Dim tb As TitleBlockDefinition
Set tb = sheet.TitleBlock.Definition
Dim sketch As DrawingSketch
Set sketch = tb.sketch
Call tb.Edit(sketch)
Dim curText As TextBox
Set curText = sketch.TextBoxes.Item(10)
If curText.Text = "<AES_MD_NAME>" Then
On Error Resume Next
curText.FormattedText = Replace(curText.FormattedText, "17-677", "19-085")
Call tb.ExitEdit
End If
End Sub
Имея это в виду, код, который я пытался написать, должен был найти это свойство в текущем чертеже, проверить, содержит ли значение этого свойства 17-677, и заменить только часть 17-677 на 19-085. При этом я не смог правильно написать код.
Проблема с этим кодом в том, что он ищет имя свойства в блоке заголовка и пытается изменить его вместо вызова его значения и изменения значения. Я не знаю, как это сделать, поскольку дальнейшие попытки привели к синтаксическим ошибкам и тому подобному. Я также могу предоставить копию IDW, которая потребует изобретателя 2019. Я не уверен, как прикрепить ее здесь. Большое спасибо за ваше время.