powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Сохранить Excel через VBA.
12 сообщений из 12, страница 1 из 1
Сохранить Excel через VBA.
    #39832116
sv1mmen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день форумчане. Стоит задача с помощью VBA открыть сохранить и закрыть файл xlsx.
В VBA не силён как и в программировании. Нашёл строчки которые открывают и закрывают файл. Но а как сохранить пока не могу.

Прошу помочь дописать эту недостающую строчку которая сохранит xlsx.

Public Sub XMLSOpen()
Dim oXL As Object
Set oXL = CreateObject("Excel.Application")
With oXL
.Workbooks.Open CurrentProject.Path & "\L3 MBH-BS порегионально_new.xlsx"
.Visible = True
End With


oXL.Workbooks.Close

Set oXL = Nothing


End Sub
...
Рейтинг: 0 / 0
Сохранить Excel через VBA.
    #39832119
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Открывая книгу, Вы не сохранили ссылку на неё. Это затрудняет сохранение заданной книги (хотя и не делает его невозможным - придётся итерировать всю коллекцию oXL.Workbooks и проверять имена книг).

Лучше делайте так:

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
Set oXL = CreateObject("Excel.Application")
Set oWbk = oXL.Workbooks.Open CurrentProject.Path & "\L3 MBH-BS порегионально_new.xlsx"
' ...
oWbk.Save
oWbk.Close
Set oWbk = Nothing
Set oXL = Nothing
...
Рейтинг: 0 / 0
Сохранить Excel через VBA.
    #39832126
sv1mmenс помощью VBA открыть сохранить и закрыть файл xlsx. Может расскажете, в чем смысл этого действа? Что-то не договариваете?
...
Рейтинг: 0 / 0
Сохранить Excel через VBA.
    #39832132
sv1mmen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina,

Set oWbk = oXL.Workbooks.Open CurrentProject.Path & "\L3 MBH-BS ïîðåãèîíàëüíî_new.xlsx"

жалуется на синтаксическую ошибку
...
Рейтинг: 0 / 0
Сохранить Excel через VBA.
    #39832133
sv1mmen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Кривцов Анатолий,

Смысл действия следующий. Скачиваю таблицу Excel с сайта. Далее нужно добавить данные из Excel в Acces. Но ручное добавление не происходит без пересохранения таблицы. Т.е. открываем таблицу, нажимаем Сохранить и далее она без проблем подтягивается в Acces.

Теперь мне нужно автоматизировать это действие в автоматическом режиме, чтобы с помощью VBA это происходило.
...
Рейтинг: 0 / 0
Сохранить Excel через VBA.
    #39832147
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sv1mmenжалуется на синтаксическую ошибкуНу возьмите параметр в скобки...
Код: vbnet
1.
Set oWbk = oXL.Workbooks.Open(CurrentProject.Path & "\L3 MBH-BS порегионально_new.xlsx")
...
Рейтинг: 0 / 0
Сохранить Excel через VBA.
    #39832151
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sv1mmenмне нужно автоматизировать это действие в автоматическом режиме, чтобы с помощью VBA это происходило.А для этого не требуется открывать файл. Получайте данные прямо из него запросом, типа
Код: sql
1.
2.
SELECT *
FROM [Лист1$A1:B5] IN 'C:\Temp\f1.xls'[Excel 12.0; HDR=No; IMEX=1];


Или, если структура позволяет, сразу INSERT .. SELECT в нужную таблицу.
...
Рейтинг: 0 / 0
Сохранить Excel через VBA.
    #39832165
sv1mmenСкачиваю таблицу Excel с сайта. Далее нужно добавить данные из Excel в Acces. Но ручное добавление не происходит без пересохранения таблицы.
Т.е. открываем таблицу, нажимаем Сохранить и далее она без проблем подтягивается в Acces. Очень странная ситуация. Т.е. файл дефектный, а открыв и сохранив вы его лечите?
Когда открываете файл ручками, никаких сообщений нет?
Если не "Сохранить", а "Сохранить как...", то какой формат предлагает?
Вы с сайта выгружаете готовый файл или выполняете экспорт данных?
...
Рейтинг: 0 / 0
Сохранить Excel через VBA.
    #39832196
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sv1mmen...Скачиваю таблицу Excel с сайта....зачем, что за таблица, какие данные-от этого во многом зависит решение. Посмотрите-может что сгодится
...
Рейтинг: 0 / 0
Сохранить Excel через VBA.
    #39832480
sv1mmen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
[quot Akina]
SELECT *
FROM [Лист1$A1:B5] IN 'C:\Temp\f1.xls'[Excel 12.0; HDR=No; IMEX=1];

Куда это вставлять?
...
Рейтинг: 0 / 0
Сохранить Excel через VBA.
    #39832485
sv1mmen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Кривцов Анатолий Очень странная ситуация. Т.е. файл дефектный, а открыв и сохранив вы его лечите?
Да именно так.
Кривцов АнатолийКогда открываете файл ручками, никаких сообщений нет?
Вообще никаких нет.
Кривцов АнатолийЕсли не "Сохранить", а "Сохранить как...", то какой формат предлагает?
Предлогает Книгу Excel
Кривцов АнатолийВы с сайта выгружаете готовый файл или выполняете экспорт данных?
С сайта выгружаю
...
Рейтинг: 0 / 0
Сохранить Excel через VBA.
    #39832509
sv1mmen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AkinaОткрывая книгу, Вы не сохранили ссылку на неё. Это затрудняет сохранение заданной книги (хотя и не делает его невозможным - придётся итерировать всю коллекцию oXL.Workbooks и проверять имена книг).

Лучше делайте так:

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
Set oXL = CreateObject("Excel.Application")
Set oWbk = oXL.Workbooks.Open CurrentProject.Path & "\L3 MBH-BS порегионально_new.xlsx"
' ...
oWbk.Save
oWbk.Close
Set oWbk = Nothing
Set oXL = Nothing



Спасибо большое, это и помогло! Всё работает!!!
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Сохранить Excel через VBA.
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]