OLEEVENT関数(イベント処理の定義):UWSC,

// イベント処理の定義
OLEEVENT( オブジェクト, インタフェース名, イベント名, Procedure名 )
引数
  オブジェクト: COMオブジェクト
  インタフェース名: ディスパッチ インタフェース名
  イベント名: イベント名
  Procedure名: UWSC側の呼び出される Procedure名

 ※ Procedure内にてイベントの引数は配列変数 EVENT_PRM[ ] に格納されている (配列はゼロから)

【例:サンプル】
// Excelのイベント処理
// クローズ処理の禁止、変更されたセル内容の表示
excel = CreateOleObj(“Excel.Application”)
Excel.Workbooks.Add
excel.visible = true
// Application Events: WorkbookBeforeClose (Close前)
OleEvent(excel, “AppEvents”, “WorkbookBeforeClose”, “BeforeClose”)
// Sheet Events: Change(Cell内容変更)
OleEvent(excel.ActiveSheet, “DocEvents”, “Change”, “Change”)
Sleep(1000)

// Book: BeforeClose
Procedure BeforeClose()
 print “Closeは禁止”
 EVENT_PRM[1] = True    // 第2引数をTrueに変更:Closeしない
Fend

// Cell: Change
Procedure Change()
 rng = EVENT_PRM[0]
 print rng.Value
Fend

このエントリーをはてなブックマークに追加

コメントを残す