Я хочу спросить, возможно ли прочитать данные в * xls файле, затем получить данные и обновить файл * .dbf на основе идентификатора штата с помощью vb. сетевой скрипт? если да, мне нужно сначала преобразовать xls в dbf, а затем выполнить обновление или просто прочитать xls и обновить файл dbf без преобразования?читать данные из файла xls, а затем обновлять файл dbf с помощью vb.net
ответ
Вы можете просто прочитать файл xls с помощью COM, а затем обновить базу данных, используя данные, которые вы читаете в Excel, не нужно ничего конвертировать.
Говоря, что проще было бы преобразовать данные excel в базу данных доступа и просто использовать запросы для обновления данных оттуда. Это зависит от того, насколько сложны ваши данные и как часто вам приходится выполнять эту задачу.
Кстати, VB.NET - это не язык сценариев, это предварительно скомпилированный язык. Я предполагаю, что, сказав «скрипт», вы думаете о vba? То, что вы пытаетесь сделать, может также быть сделано в VBA, хотя ...
UPDATE:
Вот некоторые подробности о том, как я думаю, вы должны продолжать это. Вы можете использовать все материалы, необходимые для каждого шага.
Считывание данных из Excel:
Если вы можете, вы должны действительно избежать себе весь груз работы и экспортировать данные в файл формата CSV, и читать его с помощью StreamReader
. Если вам действительно нужно прочитать его прямо из Excel, вам нужно перейти по пути автоматизации COM, и вы должны взглянуть на использование пространства имен Microsoft.Office.Interop.Excel
. Это очень похоже на автоматизацию Excel через vba, поэтому, если вы знакомы с этим, это должно быть относительно легко.
Запись данных в базе данных:
Эта часть довольно проста. Используйте пространство имен System.Data.OleDB
, чтобы создать соединение с вашей базой данных, а затем сгенерируйте OleDBCommand
с правильным запросом, чтобы вставить ваши данные и, если хотите, сделать это. Если у вас есть сложная база данных и вы хотите манипулировать множеством данных, вам действительно нужно взглянуть на адаптацию рамки LinqToSQL
для работы с доступом или использования IQToolkit
.
Надеюсь, это поможет.
UPDATE 2:
Просто вспомнил, что я написал метод для записи данных в Excel через пару недель назад. Это не то же самое, что чтение данных, но это должно быть очень похоже ... На самом деле чтение данных должно быть еще проще. Смотрите, если это поможет вам начать работу:
Вы должны импортировать Microsoft.Office.Interop.Excel
для этой работы
Private Function ExportToExcelFile(ByVal FileName As String) As Boolean
With New Excel.Application
With .Workbooks.Add()
For Each sheet As Worksheet In .Worksheets
If sheet.Index > 1 Then
Call sheet.Delete()
End If
Next
With CType(.Worksheets(1), Worksheet).Range("A1")
' Do stuff with the cells in you spreadsheet here
End With
Call .SaveAs(FileName)
End With
Call .Quit()
End With
End Function
Для написания материала в базе данных here is an example, которые я предоставил кому-то еще недавно.
oic..can u покажите мне пример обновления базы данных в dbf, используя данные в excel .... я искал в Интернете ... но я нашел только конвертер..pls, помогите мне. .. – xana
Извините, но для этого потребуется довольно много кода, и я не могу тратить время, чтобы написать все, что только для того, чтобы предоставить вам пример. Но я добавлю некоторые подробности о том, как я думаю, что вы должны продолжить. –
Большое спасибо .. я постараюсь сделать шаг за шагом .. – xana