Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.05.2010, 21:25   #1
Sunpark
 
Регистрация: 10.05.2010
Сообщений: 3
По умолчанию Как запускать макрос не из Екселя?

по заданию нужно чтобы выполнялся макрос без открытия Екселя, по двойному клику на каком-то файле, причем далее загадочного слова vbscript мои знания не продвинулись.
Помогите пожалуйста
Sunpark вне форума Ответить с цитированием
Старый 11.05.2010, 22:19   #2
ELE-COM
Пользователь
 
Регистрация: 08.05.2010
Сообщений: 48
По умолчанию

А "какой-то файл" Excel-овский? Для какого файла исполнять макрос? И какого приложения должен быть макрос?
ELE-COM вне форума Ответить с цитированием
Старый 11.05.2010, 23:22   #3
Sunpark
 
Регистрация: 10.05.2010
Сообщений: 3
По умолчанию

Преподаватель сказал, что файл *.vbs, макрос создает екселевский и вордовский файлы и работает тоже с ними (в ексель сначала вписывается таблица, в ворд выводятся данные из екселя), макрос при этом написан предварительно в екселе
Sunpark вне форума Ответить с цитированием
Старый 11.05.2010, 23:38   #4
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Вот простой образец - сохраните этот текст как имя.vbs
Код:
'http://www.microsoft.com/technet/scriptcenter/guide/default.mspx?mfr=true

               'Add many formulas to an excel worksheet with one command
'This will be demonstrated by making a multiplication table
'
'Francis de la Cerna
'
'
'A formula such as   
'
' ws.range("a1:a3").formula = "=b1"
'
' means that excel will put a formula "=b1" in a1 and copy that to a2 through a3
' it will NOT put "=b1" in all those cells
'
' The result will look like
'    A     B     C
' 1  =b1
' 2  =b2
' 3  =b3
'
'If you don't know what a $ means in an excel formula, go to Help and
'search for "absolute reference" or "cell reference" or "range reference."
'Look for results which explains the difference between absolute and relative
'references. 
'
'This script, will use a mix of both types of references. If it's not clear what
'is happening, try writing a formula in one cell, and then copy and paste it
'to multiple cells. That is basically how the formula method in range behaves.



set xl = createobject("excel.application")
set wb = xl.workbooks.add
set ws = wb.worksheets(1)
xl.visible = true


'row 1
ws.range("b1:j1").formula = "=column()"

'column 1
ws.range("a2:a10").formula = "=row()"

'column 2
ws.range("b2:b10").formula = "=$a2*b$1"

'column 3
ws.range("c2:c10").formula = "=$a2*c$1"


'this is tedious
'let's just add all columns at once

'column 4-10
ws.range("d2:j10").formula = "=$a2*d$1"
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 11.05.2010, 23:40   #5
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Примеры скриптов по теме:
http://www.vbsedit.com/scripts/office/default.asp

P.S. Кстати, я частенько таким образом выборочно импортирую текст в Эксель - открываю и обрабатываю файл скриптом, даже делаю простые подсчёты, а уж затем помещаю уже только результат в таблицу Экселя. Так оно проще получается, хотя этот код можно и из под Экселя запускать. Большой разницы нет, только в wsh все переменные variant - т.е. as ... писать не надо.
webmoney: E265281470651 Z422237915069 R418926282008

Последний раз редактировалось Hugo121; 11.05.2010 в 23:52.
Hugo121 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как запускать офисные приложения MS: word, excel, access? BaRSyk174 Общие вопросы Delphi 3 04.09.2009 21:32
как запускать программ. на аsm? Nani Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 8 12.06.2009 00:45
Как поместить программу в tray и запускать Johnt Общие вопросы Delphi 10 07.01.2009 14:35
Как конвертировать из екселя записи в текстовый файл? Askat Общие вопросы Delphi 6 02.07.2007 08:15
Как запускать службы через Delphi Kastor Безопасность, Шифрование 3 04.04.2007 20:26