, Excel. Excel , . VBScript . Excel . , , .
'/////////////////////////////////////////////////Event Constant Definitions/////////////////////////////////////////////////////
EVENT_CELL_CHANGE = 1 '//////////////////////////////////////////////////////////////////////
EVENT_SELECTED_CELL_CHANGE = 2 '/////////////////////////////////////////////////////
EVENT_SELECTED_SHEET_CHANGE = 3 '///////////////////////////////////////////////////
EVENT_SELECTED_WORKBOOK_CHANGE = 4 '///////////////////////////////////////
'/////////////////////////////////////////////////Event Constant Definitions/////////////////////////////////////////////////////
'_______________________________________________________________________
'/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
'////////////////////////////////////////////////////Global Program/////////////////////////////////////////////////////////////////
'/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
set O = getObject( , "Excel.Application")
Call WaitUntil_Event(EVENT_CELL_CHANGE, O.Selection, RtnVar, "BLANK")
msgbox RtnVar.address
'/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
'////////////////////////////////////////////End of Global Program//////////////////////////////////////////////////////////////
'/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
'_______________________________________________________________________
'/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
'///////////////////////////////////////////Start of Main Sub Program/////////////////////////////////////////////////////////
'/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
'///////////////////////////////////////////This program was written by///////////////////////////////////////////////////////
'///////////////////////////////////////////Ben Ahrens (April 5th, 2019///////////////////////////////////////////////////////
'/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
'/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
'/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Sub WaitUntil_Event(EventType, CheckVal, ByRef ReturnVariable, RunVBScript_FileName)
On Error Resume Next
LoopedCycleTime = 50
WaitUntil_SelectionChange = False
'msgbox EVENT_CELL_CHANGE
select case EventType
Case EVENT_CELL_CHANGE
Set CheckVal = O.Selection
Do
Set CheckVal = O.Selection
Val= CheckVal.Value
Do
WScript.Sleep LoopedCycleTime
Loop Until O.Selection.Address <> CheckVal.Address
Loop While CheckVal.Value = Val
Set RtnVar = CheckVal
Case EVENT_SELECTED_CELL_CHANGE
Do
WScript.Sleep LoopedCycleTime
Loop Until O.Selection.Address <> CheckVal.Address
Case EVENT_SELECTED_SHEET_CHANGE
Do
WScript.Sleep LoopedCycleTime
Loop Until O.Selection.Worksheet.Name <> CheckVal.Worksheet.Name
Case EVENT_SELECTED_WORKBOOK_CHANGE
Do
WScript.Sleep LoopedCycleTime
Loop Until O.Selection.Worksheet.Parent.Name <> CheckVal.Worksheet.Parent.Name
End Select
'WaitUntil_Event = True
'Include RunVBScript_FileName
End Sub
'/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
'///////////////////////////////////////////////End of Main Sub Program//////////////////////////////////////////////////////
'/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////