Excel округляет | |
---|---|
S-type Автор Сообщений: 2969 Дата регистрации: 24.04.2004 |
Есть программа на C#. С помощью OleDbConnection() данные считываются из Excel-евского файла в DataSet.
Затем из dtData извлекаются данные:
В Excel-евом файле в ячейке установлено значение с четырьмя знаками после запятой. А в формате ячейки стоит два знака после запятой. Например, физически в ячейке 1.9998, а отображается 2.00. В summa попадает "2.00". Если зайти в файл, и указать в формате ячейки "четыре знака после запятой", то в summa попадает "1.9998". Файлы генерирует другая система, и нет возможности на неё повлиять. Надо сделать так, что бы программой скачивалось реальное значение, а не округлённое. Как можно сделать, что бы каждый раз не заходить в файл и не менять вручную формат ячейки? [i]Исправлено 2 раз(а). Последнее : S-type, 23.04.18 15:30 |
Re: Excel округляет | |
---|---|
Гулин Федор Сообщений: 4633 Откуда: Минск Дата регистрации: 24.10.2002 |
макрос посмотреть что делает - когда ставит 4 знака
и прописать этот же код в исходник |
Re: Excel округляет | |
---|---|
pasha_usue Сообщений: 3647 Откуда: Е-бург Дата регистрации: 06.10.2006 |
Установка IMEX=1 для драйвера. С одной стороны, она позволяет считать значения разного типа из ячеек экселя (intermixed). С другой стороны, считывается не "значение" (value) ячейки, а текстовое "представление" (text) ячейки.
Либо отключать IMEX, либо использовать более другой способ чтения. Microsoft.Office.Interop.Excel? |
Re: Excel округляет | |
---|---|
S-type Автор Сообщений: 2969 Дата регистрации: 24.04.2004 |
Коллеги, спасибо за помощь.
|
© 2000-2024 Fox Club  |