This is the way I might do it. I will use terms that you can look up on line to see various ways to do each thing.
1. In the module (class or general) where you want to do this dirty deed, create your function (if you want do this via Macro) or subroutine (if you can do this from a form.) Either way, it will be some type of procedural code. So let's call it your procedure.
2. The procedure must create an Excel Application object. (Look up Create Application Object)
3. Use the methods of the object to do an OpenWorkbook to the file you are going to import. (From Excel help or with the great Google brain, look up Excel OpenWorkbook method.)
4. Activate the desired worksheet. (Look up Excel, Activate Worksheet)
5. Using ActiveSheet (which is a shortcut usable once a worksheet has been activated), you can now do direct access to the cells of the sheet.
For example, ActiveSheet.Columns(3).Rows(2) would point to worksheet cell C2.
6. Open a recordset for the table you want to receive your data. Look up OpenRecordset as an Access database topic.
7. Assuming you are going to insert one record, do a recordset .AddNew function.
8. Now use the random access of the ActiveSheet object to fill in the fields of the Recordset object.
9. When done, do an .Update on the recordset. and then CLOSE the recordset.
10. Close the Excel workbook with the option to NOT save it. (Look up the Excel workbook .Close method and check into the options, one of which is to silently close the workbook without changes).
11. For every object you loaded using a SET objvar = name-of-object, remember to set that object variable to Nothing. (That's a keyword in Access meaning "empty object")
You are done.