2015-04-15 2 views
0

Я записываю макрос. Существует столбец, который я пытаюсь преобразовать в число, поэтому я могу использовать формулу для вычисления.Macro для Excel не правильно форматирует

Я использую VBA код следующим образом:

Columns("D:D").NumberFormat="0.00" 

и

Range("D:D").NumberFormat="0.00" 

Клетка сама показывает номер, но я до сих пор можно увидеть ! знак рядом с клеткой, чтобы спросить, если я хочу конвертировать из текста в число.

Я положил курсор на ячейку и сообщение The number in the cell is formatted as text or preceded by an apostrophe.

Я могу изменить ячейку, нажмите ! и изменить его с текстом на номер. Формула в ячейке E работает после того, как я это сделал. Я хочу знать, могу ли я написать строку в моем макросе, чтобы изменить этот столбец D на число.

+1

Избегайте установки '.NumberFormat' полных ссылок на столбцы. Соответственно будет изменен '.UsedRange', и вы останетесь с огромным листом с большим размером файла. Ctrl + End становится бесполезным. – Jeeped

+1

@pnuts, я пропустил это. Тег 'macros' удален. –

ответ

0

Существует несколько способов сделать массовое преобразование столбца текстовых чисел в числовые числа. Самый быстрый, по моему опыту, это нажать на него с помощью функции TextToColumns:

Range("D:D").TextToColumns Destination:=Range("D1"), DataType:=xlFixedWidth, _ 
    FieldInfo:=Array(0, 1), TrailingMinusNumbers:=True 
+0

спасибо, что помогли мне. ваше заявление работает. –

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