Einstellbereich richtig in der DoCmd.TransferArbeitsblatt (VBA-Access in Excel)?

For Each Page In Worksheets
    PageName = Split(Page.Name, " ")
    If UBound(PageName) > 0 Then
        Worksheets(Page.Name).Activate
        lRow = ActiveSheet.Cells(Rows.Count, "A").End(xlUp).Row
        LCol = ActiveSheet.Cells(1, Columns.Count).End(xlToLeft).Column
        Fullrange = Worksheets(Page.Name).Range(Worksheets(Page.Name).Cells(1, 1), _
            Worksheets(Page.Name).Cells(lRow, LCol))
        accappl.DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel12Xml, _
            Page.Name, strpathxls, True, Fullrange
    End If
Next

Ich geschrieben habe diesen code in VBA-Excel für die Sicherung von Daten in access aus excel. Der code ist nicht wie die Art und Weise, das ich geschrieben habe das Angebot in meine for each-Schleifen. Ich habe auch versucht die 2. for each-Schleife, aber das sind nur die gesicherten Haupt-Seite immer wieder( mit dem richtigen Tabellennamen obwohl).

Ich denke die 1. Möglichkeit ist in der Nähe, aber ich verstehe nicht, was ist falsch mit FullRange-line-die Art-Bereich.

EDIT: Die Fehlermeldung Objekt variable oder with-block variable nicht festgelegt auf die FullRange-line -

Update 6-18, Es scheint, dass die fullrange sollte in der form string. Ich habe ein wenig bearbeitet, aber die Fehler bekomme ich jetzt auf die transferspreadsheet-Zeile "Microsoft database engine (Datenbankmodul konnte das Objekt nicht finden "1301 Array" $A$1:J$12'. Stellen Sie sicher, dass das Objekt existiert und Sie buchstabieren Ihren Namen richtig.

Ich nahm fullrange-und put-in-Seite.name und er gab mir den gleichen Fehler.

For Each Page In Worksheets
    PageName = Split(Page.Name, " ")
    If UBound(PageName) > 0 Then
        ' Worksheets(Page.Name).Activate - this line is most likely not needed
        lRow = Page.Range("A" & Rows.Count).End(xlUp).Row
        LCol = Page.Cells(2, Columns.Count).End(xlToLeft).Column
        fullRange = Page.Name & Page.Range(Page.Cells(1, 1), _
            Page.Cells(lRow, LCol)).Address
        accappl.DoCmd.TransferSpreadsheet acImport, _
            acSpreadsheetTypeExcel12Xml, Page.Name, strpathxls, True, Page.Name
    End If
Next  
InformationsquelleAutor user2457541 | 2013-06-18
Schreibe einen Kommentar