Ya tienes la conexión a la base de datos?
Suponiendo que sí, en la misma hoja donde tienes la información agrega un botón de comando y, en el código VB (en la misma hoja, no en módulos) la siguiente rutina:
Código vb:
Ver originalSub insertaDatos()
Dim con As New ADODB.Connection
Dim com As New ADODB.Command
Dim rs As ADODB.Recordset ' Este se usa solo para lectura
Dim nombre as String, apellidos as String, dni as String
Set con = New ADODB.Connection
con.Open "DSN=tu_conexion_a_SQL2008" ' Debe estar definida en fuentes de datos
If con.State = 1 Then
com.ActiveConnection = con
com.CommandType = adCmdText
Else
MsgBox "No se pudo conectar a base de datos"
End
End If
nombre = Cells(1, 1)
apellidos = Cells(1, 2)
dni = Cells(1, 3)
' Supongo que la consulta sería en el mismo formato que en MySQL
com.CommandText = "INSERT INTO TB_PRUEBA SET NOMBRE = '" & nombre & "', " _
& "APELLIDOS = '" & apellidos & "', DNI = '" & dni & "'"
' Ejecutas
com.Execute
' Cierras la conexión
con.Close
End Sub
Necesitas investigar cómo escapar los datos para evitar errores, por ejemplo, cuando se use un apellido como O'Brien, porque la comilla simple finalizaría la cadena.
También deberías validar que los campos no estén en blanco.