none
Erro de tempo em execução '91' A variável do objeto ou a variável do bloco with não foi definida? RRS feed

  • Pergunta

  • Está dando esse erro quando entra na linha do for each.

    Quando eu vou depurar o código, frm fica com valor nothing.

        Public Sub Ajudante6(ByVal NomeForm As String)
    
    Dim frm As UserForm
        
        For i = 1 To ThisWorkbook.VBProject.VBComponents.Count
            If ThisWorkbook.VBProject.VBComponents(i).Name = NomeForm Then
                Set frm = ThisWorkbook.VBProject.VBComponents(i).Designer
    '=======================================================
    'DESABILITAR CAIXAS DE TEXTO
    '=======================================================
            
       
        
            For Each Control In frm.Controls
            
                If TypeName(Control) = "TextBox" And Control.Name <> "txtPesquisa" Then
                
                    Control.Enabled = False
                    
                End If
                       
            Next Control
        
       
                Exit For
                End If
        Next i
        
          End Sub


    sábado, 24 de junho de 2017 16:16

Respostas

  •     Public Sub Ajudante6(ByRef NomeForm As Object)

    Dim frm As UserForm
        Dim i As Long
        ''For i = 1 To ThisWorkbook.VBProject.VBComponents.Count
            ''If ThisWorkbook.VBProject.VBComponents(i).Name = NomeForm Then
                Set frm = NomeForm
    '=======================================================
    'DESABILITAR CAIXAS DE TEXTO
    '=======================================================
            
       Dim ctrl As control
        
            For Each ctrl In frm.Controls
            
                If TypeName(ctrl) = "TextBox" And ctrl.Name <> "txtPesquisa" Then
                
                    ctrl.Enabled = False
                    
                End If
                       
            Next ctrl
        
       
               ' 'Exit For
               ' End If
      '  'Next i
        
          End Sub

    Anderson Diniz


    domingo, 25 de junho de 2017 13:04