Member 11856456 Ответов: 1

Импорт файла excel с использованием для каждого оператора


Я пытаюсь импортировать файл excel, используя оператор for each на основе текста заголовка DataGridViewTextBoxColumn. Проблема в том, что когда я импортирую файл, он продолжает говорить, что у меня не может быть нулевых значений в столбце "ID". Интересно, что у меня нет этой проблемы, если я наберу код без for each state, выражая каждый отдельный элемент как свой собственный объект.

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

Вот мой код:

For Each item As DataGridViewTextBoxColumn In DataGridView1.Columns

 dtExcelData.Columns.Add(New DataColumn(item.HeaderText, GetType(String)))

 Next


если кто-нибудь может помочь в этом, я буду очень признателен.

Что я уже пробовал:

Я пробовал добавлять
If item.HeaderText = "ID" Then
Dim exceldat As New DataColumn("ID", GetType(Integer))
exceldat.AutoIncrement = True
exceldat.AutoIncrementSeed = DataGridView1.RowCount
exceldat.AutoIncrementStep = I
dtExcelData.Columns.Add(exceldat)
End If


под каждым утверждением, но это не помогло, и я продолжаю получать одну и ту же ошибку.

Richard Deeming

Есть ли у вас один или несколько пустых столбцов в конце сетки? Или пустые строки внизу?

Member 11856456

Как он настроен, весь столбец пуст, так как для листа excel нет столбца "ID". Итак, я предполагаю, что когда он вытягивает информацию из листа excel, он помещает нулевые или пустые значения. То, что я пытаюсь сделать, заключается в том, что при импорте листа excel он автоматически создает целое число = 1 на запись. Так что, если есть несколько записей, он даст номер для этой записи. Допустим, есть 5 записей, которые я импортирую в vb.net база данных, они будут иметь соответствующее число до 5. 1,2,3,4,5. изначально я добился этого, когда набрал каждый объект excel в этом формате:

dtExcelData.Столбцы.Add (New DataColumn ("Last_name", GetType (String)))

1 Ответов

Рейтинг:
1

Patrice T

Цитата:
если кто-нибудь может помочь в этом, я буду очень признателен.

Ошибка зависит от вашего листа excel, мы не можем запустить ваш код.
Используйте отладчик для проверки переменных во время выполнения кода, 1 столбец, вероятно, является неожиданным.

Когда вы не понимаете, что делает ваш код или почему он делает то, что делает, ответ таков: отладчик.
Используйте отладчик, чтобы увидеть, что делает ваш код. Просто установите точку останова и посмотрите, как работает ваш код, отладчик позволяет вам выполнять строки 1 на 1 и проверять переменные по мере их выполнения, это невероятный инструмент обучения.

Отладчик-Википедия, свободная энциклопедия[^]
Освоение отладки в Visual Studio 2010 - руководство для начинающих[^]
Базовая отладка с помощью Visual Studio 2010-YouTube[^]

Отладчик здесь для того, чтобы показать вам, что делает ваш код, и ваша задача-сравнить его с тем, что он должен делать.
В отладчике нет никакой магии, он не находит ошибок, он просто помогает вам. Когда код не делает того, что ожидается, вы близки к ошибке.