Microsoft Excel

Herbers Excel/VBA-Archiv

Berechnungen aus Excel in Access übernehmen

Betrifft: Berechnungen aus Excel in Access übernehmen von: maristein
Geschrieben am: 12.08.2004 13:04:30

Ich habe folgendes Problem:
Ich habe in Excel wenig Ahnung (schlimm genug).

Ich öffne aus einem Access-Formular (selektierter Datensatz) heraus ein Excel-Arbeitsblatt.
Einige Datenfelder werden aus Access in das Excel-Arbeitsblatt übertragen.
In Excel werden Berechnungen durchgeführt.
Ich möchte zwei Ergebnisse der Excelberechnung (z.B D14 und D25) mittels VBA in zwei Access-Datenfeld übernehmen und speichern.
Wer kann mir helfen?

  


Betrifft: AW: Berechnungen aus Excel in Access übernehmen von: Nike
Geschrieben am: 12.08.2004 13:09:58

Hi,
check mal hier:
http://www.erlandsendata.no/english/index.php?t=envbadac

Bye

Nike

P.S. Hier noch ein kleiner Wink mit dem Zaunpfahl...
Form


  


Betrifft: AW: Berechnungen aus Excel in Access übernehmen von: maristein
Geschrieben am: 12.08.2004 15:31:30

Moin Mike

Vielen Dank für den Tipp und den "Wink mit dem Zaunpfahl".
Den Code werde ich morgen früh ausprobieren - hoffentlich klappt es!
Ich werde den Knigge in Zukunft einhalten - es war das erste Mal, dass ich in einem Forum eine Frage gestellt habe.
Anfänger sind lernfähig!

Schönen Gruß aus einem völlig überhitzten Büro

marijan


  


Betrifft: AW: Berechnungen aus Excel in Access übernehmen von: maristein
Geschrieben am: 13.08.2004 10:19:56

Guten Morgen
Nachdem der gestrige (schwüle) Tag überstanden ist, habe ich folgenden Code ausprobiert.
Die Pfadangaben habe ich natürlich geändert, ebenso die "field" und "Range" Angaben.

Sub ADOFromExcelToAccess()
' exports data from the active worksheet to a table in an Access database
' this procedure must be edited before use
Dim cn As ADODB.Connection, rs As ADODB.Recordset, r As Long
    ' connect to the Access database
    Set cn = New ADODB.Connection
    cn.Open "Provider=Microsoft.Jet.OLEDB.4.0; " & _
        "Data Source=C:\DB\Test.mdb;"
    ' open a recordset
    Set rs = New ADODB.Recordset
    rs.Open "TableName", cn, adOpenKeyset, adLockOptimistic, adCmdTable  
    ' 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("Feld1") = Range("A" & r).Value
            .Fields("Feld2") = Range("B" & r).Value
            .Fields("Feld3") = 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
    cn.Close
    Set cn = Nothing
End Sub


Bei der Zeile:
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0; " & _
"Data Source=C:\FolderName\DataBaseName.mdb;"
bricht das Programm ab.

Die Access-Datenbank ist bereits geöffnet - Excel wird aus Access heraus gestartet.
Die Access-Datenbank soll nach Ausführen des Codes nicht geschlossen werden.
Jetzt bin ich aber mächtig überfordert!
Hat jemand vielleicht eine Tipp, warum dieser Code bei mir nicht funktioniert, bzw. welche Zeile geändert werden müssen?

Gruß

marijan


 

Beiträge aus den Excel-Beispielen zum Thema "Berechnungen aus Excel in Access übernehmen"