2013-11-09 3 views
1

У меня есть пользовательская форма для отображения таблицы Excel с названием «результаты» с использованием таблицы 11.0 OWC. Этапы можно найти по этой ссылке: https://stackoverflow.com/questions/17406319/display-a-part-of-an-excel-sheet-on-a-userform-using-vba/17407415#17407415Как форматировать дату и время в VBA?

Теперь у меня возникла проблема, заключающаяся в том, что дата, время (начало и конец) преобразуются в числовые. Поэтому есть способ заблокировать формат с самого листа или код VBA, который может работать одинаково.

Это то, как изображение выглядит

enter image description here

+0

где указаны дата и время? Можете ли вы опубликовать код vba – Chelseawillrecover

ответ

1

Вам нужно отформатировать соответствующие столбцы с соответствующим форматом. Например

Private Sub CommandButton1_Click() 
    Me.Spreadsheet1.Cells.Range("A1:B3").Value = _ 
    ThisWorkbook.Worksheets("Sheet1").Range("A1:B3").Value 

    Spreadsheet1.Columns("B:B").NumberFormat = "m/d/yyyy" 
End Sub 

enter image description here

+0

Привет, Siddharth Rout Я пробовал свой метод, но встречался с ошибкой времени выполнения «9»: подстрочный индекс. Мои записи в столбце B могут быть целых 30 строк. Пожалуйста, порекомендуйте. Спасибо. –

+0

Неважно, сколько строк содержит данные. Вышеприведенный код предназначен для всего столбца. Какое имя вашего управления электронной таблицей? –

0

Пример 1:

Range("").NumberFormat = "dd-mm-yyyy" 

или "дд/мм/гггг" или любой другой комбинации.

Пример 2:

Range("").Value = Format(Range("").Value, "dd-mm-yyyy") 

или "дд/мм/гггг" или любой другой комбинации.

Смежные вопросы