Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/20: Рейтинг темы: голосов - 20, средняя оценка - 4.80
evgenybe

Проблема считывания числового поля из Excel

02.04.2009, 14:26. Показов 3663. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
У пользователя есть лист Excel (2003). В нем около 4000 строк и порялка 200 колонок.
В некоторых ячейках, в которых находятся числа в правом верхнем углу появляются зеленые маленькие треугольнички, а рядом примечание, что неверный формат числа.
Когда я пытаюсь считать информацию в DataTable, то в полях, соответствующих таким ячейкам вместо данных System.DbNull
Когда вручную исправляю такие проблемные ячейки (или группы ячеек при помощи макро) в числовом формате - проблема исчезает, но для пользователя это неприемлемо (поиск вручную занимает много времени, и не всегда пользователь может все проблемы найти).

Нельзя ли проблему решить программно в VB?
Спасибо заранее.
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
02.04.2009, 14:26
Ответы с готовыми решениями:

Запрос, сравнение поля код и числового поля из разных справочников
Всем доброго времени суток. Возникла проблема, при создании запроса. Есть 2 справочника : в 1-ом хранится информация об автомобилях (код,...

Проблема считывания текста с клавиатуры
- Возникла проблема при написании одного, из классов целой программы. Часть должна сперва считывать текст, а затем его выводить на экран....

Проблема считывания чисел из файла
Есть программа и она должа считывать числа с файла и проводить математическое действие, но не суть. Компилируя Код Блокс заметил что...

5
0 / 0 / 1
Регистрация: 15.12.2007
Сообщений: 381
02.04.2009, 15:44
DataTable?

А код не покажите?
0
evgenybe
02.04.2009, 20:00
VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
Dim CNN As New OleDb.OleDbConnection
Dim dt As New System.Data.DataTable
Dim da As OleDbDataAdapter
Dim sSQL As String = "select * FROM [" & sListName & "$A5:HR4000]"
CNN.ConnectionString = strCNN
'CNN.Open()
da = New OleDbDataAdapter(sSQL, CNN)
Try
System.Windows.Forms.Application.DoEvents()
System.Windows.Forms.Application.DoEvents()
da.Fill(dt)
...
0 / 0 / 1
Регистрация: 15.12.2007
Сообщений: 381
09.04.2009, 16:51
Вообщето это VB.NET но не суть.



Попробовал - у меня корректно считываются, но тип колонки - string



А какое форматирование ячейки и значение в ячейке с ошибкой? А то не могу воспроизвести.
0
evgenybe
12.04.2009, 16:34
У меня тип колонки - text.
Число в нем, например 1111
0 / 0 / 1
Регистрация: 15.12.2007
Сообщений: 381
13.04.2009, 14:54
Попробовал. Используя Ваш код - все считывается корректно.

Excel 2002 (10.2710.2625)

Connection string взял с http://connectionstrings.com/excel



Если все-же есть проблема, то можно подключить Microsoft Excel XX Object Library ActiveX и с помощью него либо считать данные либо пофиксить ошибки формата.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
13.04.2009, 14:54
Помогаю со студенческими работами здесь

Проблема считывания состояния клавиши на клавиатуре
Есть код игры ( теннис ) на С++ , но по какой то причине функция GetKeyState() никак не хочет возвращать нормальные значения , а вместо...

Проблема считывания файла в массив, а затем в StringGrid
Проблема считывания файла в массив,а затем в StringGrid.Кто нибудь помогите. Вот код ...

Проблема ввода строк и считывания из них переменных
Переделывал этот код на с# и столкнулся с проблемой ввода строк и считывания из них переменных. На скриншоте видно в какой форме...

Выборка числового поля
Доброе утро, нужно провести выборку из таблицы, числовое поле если значение 0, нужно заменить пустотой. Поле не обязательно к заполнению....

Проверка числового поля
Вопрос лёгкий. Но кое что хочу всё таки разжевать=) Задача такая - создать поле чтобы в него можно было записать только числовые...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Программный отбор элементов справочника Номенклатура по группе 1С
Maks 22.03.2026
Установка программного отбора элементов справочника "Номенклатура" из модуля формы документа. В качестве фильтра для отбора справочника служит группа номенклатуры. Отбор под наименованию группы (на. . .
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс. Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
Программный отбор элементов справочника Сотрудники по перечислениям 1С
Maks 21.03.2026
Установка программного отбора элементов справочника "Сотрудники" из модуля формы документа. В качестве фильтра для отбора служит предопределенное значение перечислений. Процедура. . .
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru