Lista De Alarmes

Bom dia a todos,

Gostaria de saber se existe uma maneira de listar todos os alarmes criados no sistema.
Tenho uma necessidade de criar uma lista dessa para numerar a quantidade de alarmes que temos e a partir disso criar uma lista de ações.

Bom dia Walace!

Você pode usar a instrução “for each… next” para percorrer todos os filhos do objeto Configuração de Alarmes. Veja uma aplicação exemplo no link abaixo.

Sub btn_Click()
    Dim objAlarmServer
    Dim numOfAlarms : numOfAlarms = 0
    
    Set objAlarmServer = Application.GetObject("ServidorAlarmes")
    
    ' Se seus alarmes estao todos concentrados no 'ServidorAlarmes'
    ' basta um .Count
    MsgBox objAlarmServer.Count
    
    ' Caso contrario, pode se usar uma recursiva
    Call CountAlarms( objAlarmServer.Parent, numOfAlarms ) 
    
    MsgBox numOfAlarms
End Sub

Sub CountAlarms( ByVal objAlarmServer, ByRef NumOfAlarms )
    Dim obj
    For Each obj In objAlarmServer  
        If TypeName( obj ) = "AlarmSource" Then
            NumOfAlarms = NumOfAlarms + 1
        Else
            CountAlarms obj, NumOfAlarms
        End If
    Next
End Sub

elipse