|
Компьютерный форум OSzone.net » Сфера Microsoft » Microsoft Office (Word, Excel, Outlook и т.д.) » 2007 - excel 2007 через коммандную строку |
|
2007 - excel 2007 через коммандную строку
|
Пользователь Сообщения: 146 |
Профиль | Отправить PM | Цитировать
Добрый день!
У меня задачка какая. есть портал sharepoint на котором есть список. Есть файл excel (file.xlsx) который связан с этим списком и при открытие происходит синхронизация с этим списком. Как через коммандную строку строку открыть этот файл, сохранить и закрыть? В инете искал, попадаются только статьи как через коммандную строку открыть файл, а какие ключи для сохранения и закрытия так и не нашел. |
|
Отправлено: 12:22, 28-09-2011 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать oren_yastreb, два вопроса:
1) Excel какие-нибудь диалоговые окна при этом выводит? 2) Как Вы определяете, что синхронизация прошла? |
Отправлено: 15:02, 28-09-2011 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Пользователь Сообщения: 146
|
Профиль | Отправить PM | Цитировать не выводит никаких окон. при тестирование определял так. Открывал файл excel посмотрел последнюю запись. Затем в список на портале добавил новую запись. Затем открыл файл excel, в конце появилась новая запись.
Iska по поводу окон. Excel выводит окно при закрытие файла, с предложением Сохранить файл или нет |
Последний раз редактировалось oren_yastreb, 28-09-2011 в 15:33. Отправлено: 15:19, 28-09-2011 | #3 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать oren_yastreb, у меня, к сожалению нет ни Office 2007, ни SharePoint. Но попробуем:
Option Explicit With WScript.CreateObject("Excel.Application") .Visible = True .AskToUpdateLinks = False .DisplayAlerts = False .Interactive = False .ScreenUpdating = False With .Workbooks.Open(WScript.Arguments.Item(0)) .Save .Close True End With .ScreenUpdating = True .DisplayAlerts = True .Interactive = True .AskToUpdateLinks = True .Quit End With WScript.Quit 0 "E:\Песочница\0078\MyScript.vbs" "C:\Documents and Settings\User\Мои документы\Hello World.xls" |
Отправлено: 17:11, 28-09-2011 | #4 |
Пользователь Сообщения: 146
|
Профиль | Отправить PM | Цитировать попробовал. открывается и закрывается файл, но не обновляется.
наверно еще надо один параметр добавить для обновления. Что бы было активное обновления при открытие файла. Я добавил новый элемент в список. Попробовал из скрипта убрать строчки .Quit и .Close True. Файл открылся но не обновился, новый элемент не появился. Вручную попробовал нажать на кнопку "Обновить", синхронизация прошла , но другие параметры обновления не активны. Скрипт попробовал и на 2003 и на 2007 офисе. А так если обычным способом открыть файл, то обновление происходит. |
|
Отправлено: 07:15, 29-09-2011 | #5 |
Пользователь Сообщения: 146
|
Профиль | Отправить PM | Цитировать Iska но наводка не плохая. У меня получился вот такой скрипт. только не получается получается Сохранить и Закрыть его.
Поможете разобраться Set objShellApp = CreateObject("Shell.Application") Set objShell = CreateObject("WScript.shell") Set objFSO = CreateObject("Scripting.FileSystemObject") FolderPath ="E:\vbs" FileName = "graphikVKS.xls" FilePath = FolderPath & "\" & FileName Set File = objFSO.GetFile(FilePath) objShellApp.ShellExecute File.name, "",FolderPath,"open", 10 WScript.Sleep 2000 Set objExcel = GetObject(, "Excel.Application" |
Отправлено: 07:46, 29-09-2011 | #6 |
Пользователь Сообщения: 146
|
Профиль | Отправить PM | Цитировать Вообщем нашел решение.
1 Открыл Excel файл 2 открыл редактор VB 3 нажал правой кнопкой(в панеле объктов) на мою книгу и выбрал "просмотр кода" 4 В событие Open вставил такие строчки ActiveWorkbook.Save Application.Quit 5 В Безопасности Excel разрешил запуск макросов |
Отправлено: 11:00, 30-09-2011 | #7 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать oren_yastreb, почему я спрашивал про диалоговые окна при открытии — я пытался симулировать работу с запросами посредством Excel-2-Excel. У меня при ручном открытии постоянно возникало окно:
При нажатии «Включить обновление» — данные обновлялись. При программном открытии — окно не появлялось, данные не обновлялись. |
Последний раз редактировалось Iska, 06-12-2011 в 05:39. Отправлено: 14:53, 30-09-2011 | #8 |
Модератор Сообщения: 16844
|
Профиль | Сайт | Отправить PM | Цитировать Цитата oren_yastreb:
Перед этим создайте свой сертификат с помощью "Средства создания цифровых сертификатов для проектов VBA" (в средствах Office) |
|
------- Отправлено: 19:06, 30-09-2011 | #9 |
Пользователь Сообщения: 146
|
Профиль | Отправить PM | Цитировать Спасибо всем кто участвовал! То что хотел уже настроил. Правда времени убил много на скрипт а в результате решением было
две строчки в макросе ))) |
Отправлено: 08:44, 03-10-2011 | #10 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
2007 - Текст в Excel 2007 | jazzanova | Microsoft Office (Word, Excel, Outlook и т.д.) | 5 | 12-04-2011 22:25 | |
2007 - [архив] Microsoft Excel 2007 | graverman | Microsoft Office (Word, Excel, Outlook и т.д.) | 100 | 12-12-2009 10:18 | |
FreeBSD - Доступ по ФТП (через командрую строку -нормально, а через браузер, только домашний) | _soldat_ | Общий по FreeBSD | 4 | 29-09-2008 09:22 | |
Excel | преобразовать строку в столбец | BRAT2 | Хочу все знать | 2 | 19-12-2005 17:49 | |
макро удалит из Excel строку | Ginger | Программирование и базы данных | 5 | 06-10-2005 12:46 |
|