Обновите заголовок на основе реального ввода в текстовое поле
У меня есть заголовок заголовка, который начинается как "Заполнитель". Тогда у меня есть три поля; Имя, Фамилия и Название. Я хочу обновить, а затем добавить эту подпись, когда пользователь вводит эти три поля.
Поэтому, если кто-то вводит имя "Стивен" в поле имени, заголовок должен обновляться с заполнителя до Стивена.
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.