1 changed files with 79 additions and 0 deletions
@ -0,0 +1,79 @@ |
|||||||
|
' Создан: Пт 13 сен 2013 16:04:16 |
||||||
|
' Изменён: Сб 14 сен 2013 12:13:05 |
||||||
|
|
||||||
|
' Скрипт отображения меню столовой. |
||||||
|
' (c) 2013, Maxim Lihachev, <envrm@yandex.ru> |
||||||
|
' |
||||||
|
' Использование: cscript //nologo dinner.vbs [today] |
||||||
|
' |
||||||
|
' Меню содержится в doc-файле в таблице формата |
||||||
|
' |
||||||
|
' Понедельник Четверг |
||||||
|
' ----------- --------- |
||||||
|
' Первое Первое |
||||||
|
' Второе Второе |
||||||
|
' Третье1 Третье1 |
||||||
|
' Третье2 Третье2 |
||||||
|
' |
||||||
|
' Вторник Пятница |
||||||
|
' ----------- --------- |
||||||
|
' -/- -/- |
||||||
|
' |
||||||
|
' Среда |
||||||
|
' ----------- |
||||||
|
' -/- |
||||||
|
|
||||||
|
' День недели |
||||||
|
today = weekday(date) |
||||||
|
' today = 1 |
||||||
|
|
||||||
|
' Открытие файла с меню |
||||||
|
file = "\\file-srv\homedir$\" & CreateObject("Wscript.Network").UserName & "\doc\menu.doc" |
||||||
|
Set word = CreateObject("Word.Application") |
||||||
|
Set objectdocument = word.Documents.Open (file) |
||||||
|
word.Visible = False |
||||||
|
|
||||||
|
' Получение меню из таблицы |
||||||
|
menu = objectdocument.Tables(1) |
||||||
|
|
||||||
|
monday = Split(menu.Rows(1).Cells(1).Range.Text,chr(13)) |
||||||
|
tuesday = Split(menu.Rows(2).Cells(1).Range.Text,chr(13)) |
||||||
|
wednesday = Split(menu.Rows(3).Cells(1).Range.Text,chr(13)) |
||||||
|
thursday = Split(menu.Rows(1).Cells(3).Range.Text,chr(13)) |
||||||
|
friday = Split(menu.Rows(2).Cells(3).Range.Text,chr(13)) |
||||||
|
|
||||||
|
' Форматированный вывод |
||||||
|
Set objCmdLib = CreateObject("Microsoft.CmdLib") |
||||||
|
Set objCmdLib.ScriptingHost = WScript.Application |
||||||
|
|
||||||
|
' Ширина полей |
||||||
|
arrMaxLength = Array(25, 25, 25, 25, 25) |
||||||
|
|
||||||
|
' Меню на неделю |
||||||
|
If WScript.Arguments.Count < 1 or today > 5 Then |
||||||
|
arrBlnHide = Array(False, False, False, False, False) |
||||||
|
ElseIf WScript.Arguments.Item(0) = "today" Then |
||||||
|
' Меню на текущий день |
||||||
|
arrBlnHide = Array(True, True, True, True, True) |
||||||
|
arrBlnHide(today - 1) = False |
||||||
|
End If |
||||||
|
|
||||||
|
' Заголовок таблицы с днями недели и датами |
||||||
|
arrHeader = Array(monday(0), tuesday(0), wednesday(0), thursday(0), friday(0)) |
||||||
|
|
||||||
|
' Таблица меню |
||||||
|
Dim arrResultsArray(3) |
||||||
|
|
||||||
|
For n=1 To 4 |
||||||
|
arrResultsArray(n-1) = Array(monday(n), tuesday(n), wednesday(n), thursday(n), friday(n)) |
||||||
|
Next |
||||||
|
|
||||||
|
' Вывод таблицы данных |
||||||
|
WScript.Echo vbcr |
||||||
|
objCmdLib.ShowResults arrHeader, arrResultsArray, arrMaxLength, "Table", True, arrBlnHide |
||||||
|
WScript.Echo vbcr |
||||||
|
|
||||||
|
' Закрытие файла |
||||||
|
objectdocument.Saved = True |
||||||
|
word.Quit |
||||||
|
|
Loading…
Reference in new issue