Обновите заголовок на основе реального ввода в текстовое поле

У меня есть заголовок заголовка, который начинается как "Заполнитель". Тогда у меня есть три поля; Имя, Фамилия и Название. Я хочу обновить, а затем добавить эту подпись, когда пользователь вводит эти три поля.

Поэтому, если кто-то вводит имя "Стивен" в поле имени, заголовок должен обновляться с заполнителя до Стивена.

Private Sub First_Name_AfterUpdate(Cancel As Integer)
    Me.provider_label.Caption = Me.First_Name.Value
End Sub

Я думал, что этот код будет работать, но это не так. Почти кажется слишком простым. Я пишу это в VBA в Microsoft Access на форме.

2 ответа

Решение не VBA с использованием выражения в текстовом поле ControlSource:

= IIf([Last Name] & [First Name] & [Title] & "" = "", "Placeholder", [Last Name] & IIf(IsNull([Last Name]),"",", ") + [First Name] & " - " + [Title])

или же

= IIf([Last Name] & [First Name] & [Title] & "" = "", "Placeholder", Nz([Last Name], "No LN") & ", " & Nz([First Name], "No FN") & " - " & Nz([Title], "No Title))

Я только что проверил и не проблема. Ваше имя - это текстовое поле?

Private Sub ProviderUpdate()
    Me!provider_label.Caption = Me!first_name & " " & me!last_name & " " & me!Title
End Sub

Затем в каждом отдельном текстовом поле установите процедуру обработки события для вызова подпрограммы ProviderUpdate.

Другие вопросы по тегам