Вы можете создать соединение ADO с электронной таблицей (см. Строки подключения для Excel 2007 ), а затем открыть набор записей ADO с этим соединением (см. StackOverflow: набор записей ADODB в VBA говорит, что поле Excel пусто, когда это не например).
Затем перемещайтесь по строкам набора записей и создайте инструкцию SQL INSERT, используя значения строки.
strInsert = "INSERT INTO MyTable (first_field, second_field) VALUES ('" & -
rs2.Field(0).Value & "', '" & rs2.Field(1).Value & "');"
Debug.Print strInsert
CurrentDb.Execute strInsert, dbFailonerror
Этот фрагмент кода предполагает, что first_field и second_field являются текстовыми типами данных. Если они числовые, теряйте одинарные кавычки.
Я думаю, это примерно так, как вы просили. Однако, прежде чем прибегать к коду, я бы проверил, правильно ли импортирует электронную таблицу в новую собственную таблицу Access. (Также проверьте, совместимы ли типы данных и ограничения для этой новой таблицы с данными из связанной таблицы SQL Server.) Если это работает, возможно, попробуйте импортировать электронную таблицу непосредственно в SQL Server из Management Studio, или какой-либо подходящий инструмент.