Boa tarde
Sempre que abro o formulário dá-me o seguinte erro:
Run time errror '94'
Invalid use of Null
Ao fazer o debug assinala-me o AfterUpdate
Private Sub CarregaDistrito()
Dim Ocollection As New Collection
Dim Varvalue As Variant
Dim i As Long, UltLinha As Long
UltLinha = Sheets("Freguesias").Range("C65536").End(xlUp).Row
On Error Resume Next
For Each Varvalue In Sheets("Freguesias").Range("C2:C" & UltLinha)
Ocollection.Add (Varvalue), (Varvalue)
Next
For i = 1 To Ocollection.Count
cbx_Grupo.AddItem Ocollection.Item(i)
Next
End Sub
Private Sub CarregaConcelho(ByVal Distrito As String)
Dim Ocoll As New Collection, uLin As Integer, X As Integer
Dim VVar As Variant
Me.cbx_eqto.Clear
uLin = Sheets("Freguesias").Range("B65536").End(xlUp).Row
On Error Resume Next
For Each VVar In Sheets("Freguesias").Range("C2:C" & uLin)
If VVar = Distrito Then
Ocoll.Add (VVar.Offset(0, -1)), (VVar.Offset(0, -1))
End If
Next
For X = 1 To Ocoll.Count
cbx_eqto.AddItem Ocoll.Item(X)
Next
End Sub
Private Sub CarregaFreguesia(ByVal Concelho As String)
Dim LinFre As Integer, colunaSeccao As Integer, colunaProduto As Integer
LinFre = 2
colunaSeccao = 1
colunaProduto = 2
cbx_Protecao.Clear
With Sheets("Freguesias")
Do While Not IsEmpty(.Cells(LinFre, colunaSeccao))
If .Cells(LinFre, colunaProduto).Value = Concelho Then
cbx_Protecao.AddItem .Cells(LinFre, colunaSeccao).Value
End If
LinFre = LinFre + 1
Loop
End With
End Sub
Private Sub cbx_Grupo_AfterUpdate()
Call CarregaConcelho(Me.cbx_Grupo.List(Me.cbx_Grupo.ListIndex))
End Sub
Private Sub cbx_eqto_AfterUpdate()
Call CarregaFreguesia(Me.cbx_eqto.List(Me.cbx_eqto.ListIndex))
End Sub
Se puderem ajudar, agradecia
Postado : 13/02/2015 12:07 pm