Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft Office Новый топик    Ответить
 Импортированные в Excel данные, не могу преобразовать в числа средствами VBA  [new]
a040tr
Member

Откуда:
Сообщений: 2
Помогите пожалуйста
Задача преобразовать в числа и не потерять ничего...
Все помечены в Excel треугольничками, пытаюсь применить подобный код

With ws.Range(ws.Cells(18, 2), ws.Cells(789, 9))
.NumberFormat = "0#,0######"
.Value = .Value
End With

Получается, что некоторые преобразуются в число, но явное нарушение порядка числа...
Большая часть не преобразуется...
По сравнению с функцией текст() все неправильно....
Хотелось бы исправить данные на месте расположения (без использования функции text()) и именно средствами VBA
Попытки преобразовать в текст: .Value = "'" & .Value, чтобы почистить строки приводят к ошибке Type mismatch, тоже не могу понять, вроде variant/string и тут тоже string

Спасибо если подскажете, пришлось осваивать, давно уже без программирования, пример данных во вложенном файле

К сообщению приложен файл (MSCR OL.xls - 85Kb) cкачать
6 фев 21, 00:34    [22276101]     Ответить | Цитировать Сообщить модератору
 Re: Импортированные в Excel данные, не могу преобразовать в числа средствами VBA  [new]
big-duke
Member

Откуда:
Сообщений: 6801
a040tr,

Программирование тут не нужно.
1) в любую пустую ячейку записать число 1
2) скопировать эту ячейку с единицей в буфер обмена
3) выделить диапазон, в котором нужно выполнить преобразование в число
4) правая кнопка - спец вставка - умножить
5) профит
6 фев 21, 22:30    [22276515]     Ответить | Цитировать Сообщить модератору
 Re: Импортированные в Excel данные, не могу преобразовать в числа средствами VBA  [new]
The_Prist
Member

Откуда: www.excel-vba.ru
Сообщений: 1990
a040tr
явное нарушение порядка числа
а в чем это выражается? Что хотите получить?
Попробуйте вместо
.Value = .Value

записать
.FormulaLocal = .FormulaLocal
7 фев 21, 11:34    [22276586]     Ответить | Цитировать Сообщить модератору
 Re: Импортированные в Excel данные, не могу преобразовать в числа средствами VBA  [new]
The_Prist
Member

Откуда: www.excel-vba.ru
Сообщений: 1990
big-duke
в любую пустую ячейку записать число 1
можно проще: скопировать пустую ячейку и при спец.вставке выбрать Сложить
7 фев 21, 11:35    [22276587]     Ответить | Цитировать Сообщить модератору
 Re: Импортированные в Excel данные, не могу преобразовать в числа средствами VBA  [new]
a040tr
Member

Откуда:
Сообщений: 2
Большое спасибо! Все получилось!


The_Prist
a040tr
явное нарушение порядка числа
а в чем это выражается? Что хотите получить?
Попробуйте вместо
.Value = .Value

записать
.FormulaLocal = .FormulaLocal
7 фев 21, 13:53    [22276632]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft Office Ответить