К списку форумов К списку тем
Регистрация    Правила    Главная форума    Поиск   
Имя: Пароль:
Рекомендовать в новости

Формат чисел в экселе для ADO

0 - 25.04.2017 - 07:40
Здравствуйте.
Подскажите, как правильно задавать формат числа для Win 7.
Перед заполнением экселевского файла с помощью ADO, необходимо проставить форматы колонок - строка, дата и число. Со строкой и датой проблем нет. С числом проблемы были простые - в Win XP разделитель точка, в Win7 - запятая.

До недавнего времени формат я задавал таким способом

Если ФорматЧисел="" Тогда
Попытка
ФорматЧисел="# ##0.00р.";
ЛистЭксель.Cells(1,К).NumberFormat=ФорматЧисел;
Исключение
Разделитель=",";
ФорматЧисел="# ##0,00р.";
ЛистЭксель.Cells(1,К).NumberFormat=ФорматЧисел;
КонецПопытки;
Иначе
ЛистЭксель.Cells(1,К).NumberFormat=ФорматЧисел;
КонецЕсли;

Почему именно денежный формат? Не знаю, но опытным путём я обнаружил, что именно такой формат (# ##0.00р.) в последствии нормально определяется экселем, и он не рублёвый, а нормальный числовой с разделителями. Символы "р." прописаны в региональных настройках.
Но потом произошло обновление Win7 и р. заменилось на значёк рубля. И вышеописанная конструкция перестала работать.
Это неудобно, т.к. после создания файла, эксель определяет числа как строки и форматировать их занимает много времени.
Что можно прописать в формат числа ФорматЧисел="# ##0,00р.", что-бы числа остались числами для Win7?



Гость
1 - 25.04.2017 - 10:39
Открой для себя свойство .value
http://www.askit.ru/custom/vba_offic...nge_object.htm
Гость
2 - 25.04.2017 - 10:59
ваще то в любой венде точка/запятая - определяется региональными настройками

в последних офисах можно тоже определять, что используется -точка/запятая с игнорированием установок венды
3 - 25.04.2017 - 11:08
Как ни странно - помогло.
ЛистЭксель.Cells(1,К).Value=1.23;
Без разделителей триад и .00
Посмотрим, как будут этим пользоваться.
Я пробовал раньше так сделать - не получалось, наверное что-то ещё было.
Гость
4 - 25.04.2017 - 12:00
3-который не честный > Твои трудности рукотворны: не надо вбивать, как это должно выглядеть. Надо вбивать значение. Потом можно и формат (что актуально для даты).
Для текста все равно: что значение, что представление.


К списку вопросов






Copyright ©, Все права защищены