Можно ли записать данные в AccessDB из макроса Excel? - PullRequest
1 голос
/ 31 августа 2009

можно ли записать данные в AccessDB из макроса Excel, как?

У меня есть небольшой файл MBD, куда я хочу импортировать данные из таблицы Excel?

Ответы [ 2 ]

1 голос
/ 31 августа 2009
Sub DAOFromExcelToAccess()
' exports data from the active worksheet to a table in an Access database
' this procedure must be edited before use
Dim db As Database, rs As Recordset, r As Long
    Set db = OpenDatabase("C:\FolderName\DataBaseName.mdb") 
    ' open the database
    Set rs = db.OpenRecordset("TableName", dbOpenTable) 
    ' get all records in a table
    r = 3 ' the start row in the worksheet
    Do While Len(Range("A" & r).Formula) > 0 
    ' repeat until first empty cell in column A
        With rs
            .AddNew ' create a new record
            ' add values to each field in the record
            .Fields("FieldName1") = Range("A" & r).Value
            .Fields("FieldName2") = Range("B" & r).Value
            .Fields("FieldNameN") = Range("C" & r).Value
            ' add more fields if necessary...
            .Update ' stores the new record
        End With
        r = r + 1 ' next row
    Loop
    rs.Close
    Set rs = Nothing
    db.Close
    Set db = Nothing
End Sub
0 голосов
/ 31 августа 2009

Рассматривали ли вы наоборот? Достаточно просто прикрепить лист Excel в Access, а затем использовать запрос make table для добавления данных в новую или существующую таблицу, это позволяет избежать кодирования.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...