1) Crea una nuova macro selezionando la funzione TrasferisciFoglioCalcolo
2) Imposta i campi in basso in questo modo:
Tipo Trasferimento: Importa
Tipo Foglio di Calcolo: Microsoft Excel 8-10 (a meno che tu non abbia una versione meno recente di Office 2003)
Nome Tabella: il nome che vuoi dare alla tabella che conterrà i dati in access
Nome File: il percorso completo in cui si trova il tuo file di excel (per semplicità io utilizzerò C:\Documenti\excel-2007-08-21.xls come esempio)
Nomi Campo: SI (così avrai gli stessi nomi di colonna in access e in excel)
Intervallo: lascia vuoto a meno che tu non debba importare solo un certo intervallo di celle di excel.

3) Salva la macro
4) Cliccaci sopra col destro e fai salva con nome
5) Imposta un nome alla macro (nel primo riquadro) e imposta "modulo" nella tendina in basso
6) Clicca su Ok e poi su converti
7) Otterrai una cosa simile a questa nei moduli:

Option Compare Database

'------------------------------------------------------------
' Macro1
'
'------------------------------------------------------------
Function Macro1()
On Error GoTo Macro1_Err

DoCmd.TransferSpreadsheet acImport, 8, "nome_tabella", "C:\Documenti\excel-2007-08-21.xls", True, ""


Macro1_Exit:
Exit Function

Macro1_Err:
MsgBox Error$
Resume Macro1_Exit

End Function

8) Ora dovrai fare alcune piccole modifiche per utilizzare questa macro in una maschera di importazione, più o meno così:


Option Compare Database

'------------------------------------------------------------
' Importazione File di Excel
'
'------------------------------------------------------------
Public Function Import_Excel (Percorso As String)
On Error GoTo Import_Excel_Err

DoCmd.TransferSpreadsheet acImport, 8, "nome_tabella", Percorso, True, ""


Import_Excel_Exit:
Exit Function

Import_Excel_Err:
MsgBox Error$
Resume Import_Excel_Exit

End Function


Da qui in poi sei in grado di farti la maschera da solo?
Per il pagamento ci mettiamo d'accordo poi vero?