Изменение textbox.name в форме по коду - PullRequest
0 голосов
/ 13 июня 2019

У меня есть форма в проекте Excel VBA, в которой есть много текстовых полей с именами, которые мне нужно изменить. Например, имена в проектах: Fees01TBX; Fees02TBX; Fees03TBX и так далее. Есть 40 текстовых полей, подобных этим, и мне нужно изменить имена в последовательности, которой я могу управлять лучше. Например, мне нужно иметь их с такими именами: Expenses01; Расходы02, Расходы03 и т. Д.

Я попытался изменить его, используя некоторый код, например (только для одного текстового поля):

Sub ChgName()    

    MyForm.Fees01TBX.Name = "Expenses01"
    'Doing this for each one would not be a problem, I can array the sequence.
End Sub

Я думаю, можно изменить название текстового поля в форме по коду, но как?

1 Ответ

1 голос
/ 13 июня 2019

Убедитесь, что вы отметили Доверительный доступ к объектной модели проекта VBA в настройках безопасности:

Sub Rename()
    With ThisWorkbook.VBProject.VBComponents("MyForm")
        .Designer.Controls("Fees01TBX").Name = "Expenses01"
    End With
End Sub

Но если в Fees01TBX был код, его тоже нужно изменить, , но для 40 текстовых ящиков вы могли бы сделать это вручную

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...