Импорт файла 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)))