2010-10-02 6 views
1

Когда я использую WinSQL для запуска SQL-запроса, результат равен 20100803000001812. Однако, когда я использую SQL в качестве макроса, результат равен 2.01008E + 16. Что делать в макросе, чтобы сохранить результат как 20100803000001812?Текстовый формат в Excel с использованием VBA

Спасибо,

Боб

+2

Это большое целое число или текст (выглядит как YYYYMMDDHHMMSSMMM)? – eumiro

+0

Это текст ... – Bob

ответ

0

Согласно this articleActiveCell.NumberFormat = "@" должен сделать трюк.

+0

Я hv вставил его в макрос и, тем не менее, он не работает. Он по-прежнему отображается как 2.01008E + 16. – Bob

+0

Как было предложено Tahbaza 4 октября 2010 года, апостроф, если вы просто хотите, чтобы столбец отображался как текст, что-то вроде: - выберите Cno, Itno, CONCAT ('' '', Ref) как Ref из теста. – Bob

0

ActiveCell.NumberFormat = "0" работает для меня (не то, что я ожидал, но так далее)

Вы можете бросить в Cells.Columns.AutoFit, чтобы изменить размер столбцов по мере необходимости.

+0

Нет, он по-прежнему отображается как 2.01008E + 16. – Bob

+0

@Bob - Куда вы вставляете этот код? Что делать, если вы попытаетесь установить формат номера вручную? – variant

+0

Кто-то предложил добавить CONCAT в мой оператор select, и он работает (например, выберите Cno, Itno, CONCAT ('' '', Ref) как Ref из теста) – Bob

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