1

Тема: AHK: график смен

Добрый день! Подскажите, пож-та, имеется график смен - 11.12.2019 и 12.12.2019 работает первая смена, 13.12.2019 и 14.12.2019 работает вторая смена и тд. (2 через 2).

На данный момент это реализовано через GUi:


Gui,2: +ToolWindow +AlwaysOnTop
Gui,2: Font, s12
Gui,2: Add, Button,  gSmen1 , 1 смена
Gui,2: Add, Button,  gSmen2 , 2 смена

Gui,2: Show, , ****
return

Smen1:
return

Smen2:
return

А как сделать, чтобы автоматически определялось, заранее спасибо!

2

Re: AHK: график смен

Пока сделал только через excel, в котором прописал дату в "A" и № смены в "B'


FormatTime, TimeString,, dd.MM.yyyy

Xl := ComObjCreate("Excel.Application")
Xl.Visible := false
book := Xl.Workbooks.Open(A_Desktop "\1.xlsx")

Data_Row := xl.workSheets(1).cells.(xl.workSheets(1).Rows.Count, "A").Find(TimeString).Row 
MsgBox % Format( "{1:0.0f}", xl.workSheets(1).Cells.(Data_Row, "B").value)

book.Close(false)
xl.quit

return

3

Re: AHK: график смен

Наверное какая-то дата должна служить точкой отсчёта. К примеру, известно что 11.12.2019 начинается первый день у первой смены. Дальше вводим интересующую дату. Затем AutoHotkey считает, сколько дней прошло с точки отсчёта. После этого несложные арифметические действия (типа разделить на четыре и посмотреть остаток). И по результату этих действий программа говорит: "Это будет n-ый день работы m-ной смены".