In the past I have been sending data from Excel to Access, but now I need to send to SQL Server, this is my code below using DAO, but I understand from other people I would be better using ADO to SQL Server, how would it be best to do this?

Sub AddPOToMDB()
Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim r As Long

Sheets("ToSend").Select
'Set db = DAO.DBEngine.OpenDatabase("D:\Work\eaga\DataWarehouse\JDHeatingOrdersDatabase.mdb")
Set db = DAO.DBEngine.OpenDatabase("\\birm-astonmulti\Departments\PurchaseOrderDatabase\JDHeatingOrdersDatabase.mdb")
Set rs = db.OpenRecordset("tblPOInput", dbOpenDynaset)
r = 2
Do While Len(Range("A" & r).Formula) > 0

    rs.AddNew
    rs!InputUser = Range("A" & r).Value
    rs!OrderID = Range("B" & r).Value
    rs!OrderDate = Range("C" & r).Value
    rs!Supplier = Range("E" & r).Value
    rs!OrderedBy = Range("F" & r).Value
    rs!ApprovedBy = Range("G" & r).Value
    rs!HRNumber = Range("H" & r).Value
    rs!EngineerID = Range("I" & r).Value
    rs!Engineer = Range("J" & r).Value
    rs!Address = Range("K" & r).Value
    rs!Area = Range("L" & r).Value
    rs!PostCode = Range("M" & r).Value
    rs!TotalValue = Range("N" & r).Value
    rs!Item1 = Range("O" & r).Value
    rs!Description1 = Range("P" & r).Value
    rs!Part1 = Range("Q" & r).Value
    rs!Price1 = Range("R" & r).Value
    rs!Qty1 = Range("S" & r).Value
    rs!InputFlag = Range("EK" & r).Value
    rs.Update

    r = r + 1
Loop
Set db = Nothing
Set rs = Nothing
Sheets("Cover").Select
End Sub