Отображение значения даты в текстовом поле в номере варианта, кодировка vba excel

#excel #vba

#excel #vba

Вопрос:

Пожалуйста, предоставьте какое-нибудь решение и направьте меня. я написал пользовательскую форму в коде VBA Excel. проблема в том, что после того, как я ввожу формат даты, такой как 12/08/2020, в листы, я нажал кнопку редактирования, чтобы отредактировать данные, но в текстовом поле отображается значение даты 44054 (дата на листе — 12/08/2020).

Как я могу заставить текстовое поле отображать значение в 12/08/2020?

Спасибо.

Комментарии:

1. Вероятно, вам нужно изменить свой код VBA.

Ответ №1:

Используйте CDate() функцию.

Пример: у меня есть значение ‘44055’ в ячейке A1

 Public Sub tmp()
    a = ThisWorkbook.ActiveSheet.Range("A1").Value
    b = CDate(a)
    MsgBox ("value a: " amp; a amp; vbCrLf amp; "value b: " amp; b)
End Sub
  

Возвращает окно сообщения с:

значение a: 44055

значение b:12/08/2020

Комментарии:

1. Но мне нужно показать в текстовом поле значение 12/08/2020. я пробовал этот код Me.TextBox12.Value = Format (Me.TextBox12.Value, «ДД / ММ / ГГГГ»), но значение текстового поля по-прежнему отображается как 44054. У вас есть другое решение для вас?