Форум программистов, компьютерный форум, киберфорум
Наши страницы
MS Access
Войти
Регистрация
Восстановить пароль
 
Folkan13
0 / 0 / 0
Регистрация: 19.12.2017
Сообщений: 9
#1

Импорт таблиц из Excel в Access средствами VBA

20.05.2018, 15:43. Просмотров 159. Ответов 2
Метки нет (Все метки)

Здравствуйте еще раз, продолжаю разбираться с MS Access и VBA. И появился еще один вопрос. Я организовал выгрузку всей базы в Excel файл по нажатию кнопки, Backup в своем роде. Но тут появился такой вопрос, можно ли по нажатию другой кнопки данные из этого Backup.xlsx вернуть в соответсвующие таблицы Access. Подскажите пример если есть такая возможность. Если нужно пример переноса опишу ниже:
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
Private Sub Кнопка59_Click()
Dim rst As DAO.Recordset
Dim rst1 As DAO.Recordset
Dim rst2 As DAO.Recordset
Dim rst3 As DAO.Recordset
Dim rst4 As DAO.Recordset
Dim rst5 As DAO.Recordset
Dim rst6 As DAO.Recordset
            
Set rst = CurrentDb.OpenRecordset("Пациент", dbOpenTable)
Set rst1 = CurrentDb.OpenRecordset("Услуга", dbOpenTable)
Set rst2 = CurrentDb.OpenRecordset("Авторизация", dbOpenTable)
Set rst3 = CurrentDb.OpenRecordset("Партнеры", dbOpenTable)
Set rst4 = CurrentDb.OpenRecordset("Процедура", dbOpenTable)
Set rst5 = CurrentDb.OpenRecordset("Сотрудники", dbOpenTable)
Set rst6 = CurrentDb.OpenRecordset("Предварительная запись", dbOpenTable)
 
Set xlApp = CreateObject("Excel.Application")
xlApp.Workbooks.Open ("C:\ПАК\Backup\Backup.xlsx")
'xlApp.Workbooks.Open (App.Path & "\ПАК\Backup\Backup.xlsx")'
With xlApp.Workbooks("Backup.xlsx").Sheets(1)
.Range("A1").CopyFromRecordset rst
End With
    With xlApp.Workbooks("Backup.xlsx").Sheets(2)
   .Range("A1").CopyFromRecordset rst1
    End With
        With xlApp.Workbooks("Backup.xlsx").Sheets(3)
        .Range("A1").CopyFromRecordset rst2
        End With
            With xlApp.Workbooks("Backup.xlsx").Sheets(4)
            .Range("A1").CopyFromRecordset rst3
            End With
                With xlApp.Workbooks("Backup.xlsx").Sheets(5)
                .Range("A1").CopyFromRecordset rst4
                End With
                    With xlApp.Workbooks("Backup.xlsx").Sheets(6)
                    .Range("A1").CopyFromRecordset rst5
                    End With
                        With xlApp.Workbooks("Backup.xlsx").Sheets(7)
                        .Range("A1").CopyFromRecordset rst6
                        End With
        xlApp.Visible = True
        Set xlApp = Nothing
        Set rst = Nothing
        Set rst1 = Nothing
        Set rst2 = Nothing
        Set rst3 = Nothing
        Set rst4 = Nothing
        Set rst5 = Nothing
        Set rst6 = Nothing
End Sub
P.s. Так же пытался добиться относительного пути к файлу(Строка в комментариях) ничего не вышло
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.05.2018, 15:43
Ответы с готовыми решениями:

Импорт листа из экселя в отчет access средствами vba
Всем привет. Подскажите как написать программу, которая при нажатии на кнопку в...

Импорт таблиц из access в excel
Помогите пожалуйста с макросом, нужно перенести таблицу из access в...

Импорт таблиц Excel в одну таблицу Access
подскажите, пожалста, как импортить данные из разных книг excel в одну (!)...

Отсортировать Excel от я до а по столбу из Access средствами VBA перед импортом
Доброго времени суток. Возникла проблемка. Необходимо сделать сортировку в...

Возможен ли импорт записей из Access (поля) в Excel (в ячейку) без VBA ?
если есть - то как это можно сделать? Везде - где не натыкаюсь - везде...

2
Eugene-LS
Эксперт MS Access
3185 / 1830 / 335
Регистрация: 05.10.2016
Сообщений: 5,062
21.05.2018, 20:32 #2
Цитата Сообщение от Folkan13 Посмотреть сообщение
Но тут появился такой вопрос, можно ли по нажатию другой кнопки данные из этого Backup.xlsx вернуть в соответсвующие таблицы Access. Подскажите пример если есть такая возможность.
Так не делается.
Форматы данных MSA отличаются от MS Excel.
Хотя... да, возможно (хоть и не просто) ...

PS
Проще автоматом архивировать саму БД, по моему скромному мнению.
И... можно сразу в архив ...
0
Capi
1687 / 888 / 169
Регистрация: 12.06.2016
Сообщений: 1,935
21.05.2018, 21:19 #3
Цитата Сообщение от Folkan13
можно ли по нажатию другой кнопки данные из этого Backup.xlsx вернуть в соответствующие таблицы Access.
Иметь заготовки таблиц с нужными структурами.
По нажатию кнопки связывать эти таблицы с соответствующими страницами Backup.xlsx.
Если надо, переносить данные из связанных таблиц в основные.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.05.2018, 21:19

Сверка имен PDF файлов с данными из Excel таблицы средствами Access VBA
Добрый день Уважаемые Форумчане, Помогите пожалуста в следующей задаче:...

VBA импорт таблиц
как произвести импорт таблицы *.xls в Access?

Импорт текстовых файлов средствами VBA. Ошибка около конструкции IN
Здравствуйте, уважаемые форумчане! Возможно я ошибся разделом. Если это так,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru