Итак, я создал файл Excel (файл 1) с макросом. Цель этого файла Excel - экспортировать входные данные Excel непосредственно в нашу базу данных Access.
Когда наши инженеры открывают файл, он открывается как файл только для чтения, поскольку он защищен паролем. Как только файл открыт, наши инженеры должны дать некоторую информацию по некоторым предметам. Когда все заполнено, они просто нажимают кнопку, чтобы сохранить ее в нашей базе данных Access.
При тестировании кода (НЕ только для чтения) он работал идеально. Мой вход был сохранен в базе данных. Как только файл открывается в режиме «Только чтение», он экспортирует последние сохраненные данные из этого файла Excel, полностью игнорируя новый ввод.
Пример: РЕЖИМ НЕ ЧИТАЙТЕ ТОЛЬКО После того, как инженер открывает файл, он видит пустая вкладка, так как им придется получать свои данные из нашей базы данных доступа. Инженер заполняет их ввод, нажимает сохранить, данные экспортируются в нашу базу данных. РЕЖИМ ТОЛЬКО ДЛЯ ЧТЕНИЯ Как только инженер откроет файл, он увидит пустую вкладку, поскольку ему придется получать свои данные из нашей базы данных доступа. Инженер заполняет их ввод, нажимает сохранить, данные из последнего сохраненного файла Excel (таким образом, пустой) экспортируется в базу данных
Если я сохраню файл с вводом от лица А в нем, ввод от лица А экспортируется, в то время как новый ввод от лица B. игнорируется.
Что я делаю не так? Это код, который я использую для экспорта из Excel для доступа:
dbWb = Application.ActiveWorkbook.FullName
dbWS = Application.ActiveSheet.Name
ssql = "INSERT INTO AssistAccruals (F1,F2,F3,F4,F5,F6,F7,F8,F9,F10,F11,F12,F13,F14,F15,F16,F17,F18,F19)"
ssql = ssql & "SELECT * FROM [Excel 8.0;HDR=NO;DATABASE=" & dbWb & "]." & "[" & ActiveSheet.Name & "$A8:S" & Last_row & "]"
cnDB.Execute ssql