Управление окном Excel через WSH

Обсуждение вопросов клиентского программирования.

Модератор: Duncon

Ответить
alex191175
Сообщения: 7
Зарегистрирован: 11 янв 2005, 17:46

Помогите познающему WSH. Необходим скрипт на VBScript, который при запуске любой книги Excel (не создавая ее) будет влиять на нее, например получит содержимое ячеек, или имя книги, или установит новое содержимое ячеек...пытался сделать через это:
Dim objXL
set WshShell = WScript.CreateObject("WScript.Shell")
Set objXL = Wscript.CreateObject("Excel.Application")
KL = True
do while KL
if WshShell.AppActivate("Microsoft Excel") then
MsgBox objXL.WorkBooks.Name
KL = false
end if
loop
но это не работает :cry:
Genesis
Сообщения: 11
Зарегистрирован: 10 янв 2005, 04:06
Контактная информация:

Насколько я понял фраза "не создавая" означает что необходим доступ к уже имеющемуся файлу Excel....тогда могу предложить вот что:
Option explicit
Dim objXL
Dim our_file
dim CHISLO
dim OTVET
on error resume next

our_file = "c:\Temp\xxxx.xls" 'прописываем путь к этому файлу
Set objXL = WScript.CreateObject("Excel.Application")
set WSHShell = WScript.CreateObject("WScript.Shell")
'Делаем окно невидимым и создаем рабочую книгу
objXL.Visible = FALSE

objXL.Workbooks.Add our_file 'получаем наш файл
Set xlSheet = xlWorkbook.ActiveSheet
objXL.Cells(1, 1).Value = 100 'заносим в данную ячейку число например 100
OTVET=objXL.Cells(1, 1).Value ' читаем из этой же ячейки
reply = msgbox ("Ответ равен "& OTVET & vbcrlf, vbokOnly) ' выводим окошечко

Может и коряво но осуществляется запись\чтение в ячейки в фоновом невидимом режиме....остальное - от фантазии и поставленной задачи...желаю удачи...
alex191175
Сообщения: 7
Зарегистрирован: 11 янв 2005, 17:46

я имел в виду вот что:запущенный скрипт в бесконечном цикле ждет запуска каким нибудь пользователем какого нибудь файла Excel (любого) и как только происходит открытие файла, скрипт получает к нему доступ(запись, чтение)....имя файла может быть любым, главное иметь доступ к ОТКРЫТОМУ (ОТКРЫТЫМ) в данный момент книгам...
Genesis
Сообщения: 11
Зарегистрирован: 10 янв 2005, 04:06
Контактная информация:

Может я конечно говорю о давно известных вещах...http://www.networkdoc.ru/files/insop/wh ... ml...здесь описан пример действий скрипта при обнаружении открытого окна Word или чего угодно.. :)
alex191175
Сообщения: 7
Зарегистрирован: 11 янв 2005, 17:46

Спасибо за ссылку, но к сожалению там не нащел ничего подходящего, там конечно рассказывается про управление окнами, но примеры только про посыл клавиш активному окну, это все работает, но вот чтобы именно использовать функции самой программы (Excel)...??? Если открыт файл Excel окно активируется конечно, и можно будет посылать SendKeys, но как получить значение допустим ячейки А1? Просто везде пишется и говориться , что WSH довольно мощная штука, я в этом не сомневаюсь, но везде примеры что то типа "пошутить над знакомыми" , или типа того, мол как здорово имитировать посыл клавиш, и далее мол читайте на микрософте подробнее, может есть ссылочка на какой нибудь форум, или еще чего???
Genesis
Сообщения: 11
Зарегистрирован: 10 янв 2005, 04:06
Контактная информация:

Во-во...WSH пока славится тем что обьемная и конкретная информация по написанию для него скриптов или в платных книгах или ХЗ где....Малдеру в Секретных материалах легче инопланетян сыскать.. ;)
Я как раз пишу скрипт который на удаленном компьютере в локальной сети открывает заданный файл Excel, считывает с его ячеек в переменные какие-либо числовые значения а затем по ним создает таблицу в Word-е на домашнем ПК....в VBS я как потомственный моряк в середине пустыни....вот и представь как намучался... :) ...вроде и херня, а геморов то сколько..
alex191175
Сообщения: 7
Зарегистрирован: 11 янв 2005, 17:46

Точно! Да и книги я искал, в книжные ездил, дай думаю куплю умную книгу про WSH да и буду умным очень, ан нет...даже в крупных магазах не было, одну нашел про WMI и все такое, там есть раздел про WSH, но инфа та же самая , что и на сайтах , только по подробнее, но смысл тот же и примеры такие же, да и про VBS тоже мало всего, я ограничиваюсь только познаниями VB.......
crazy_lamer_
Сообщения: 6
Зарегистрирован: 18 янв 2005, 07:36

on-line справочник по WSH на русском)---> http://valeo-shkola.kiev.ua/JSBook/?obj ... .htm&dir=6
Genesis
Сообщения: 11
Зарегистрирован: 10 янв 2005, 04:06
Контактная информация:

crazy_lamer_,
Ути моя лапочка...где же ты раньше был, мой ласковый гений!! Спасибо за ссылку большое.. :D
Ответить