Notifications
Clear all

Erro 91

7 Posts
2 Usuários
0 Reactions
1,480 Visualizações
(@paulo_001)
Posts: 149
Estimable Member
Topic starter
 

Olá;
Comecei hoje pela manhã montar uma planilha para controle de materias de escritório, porém queria fazer algo mais elaborado ( mesmo não tendo conhecimento pra isso). Comecei pelo formulário em VBA onde pretendo fazer todos os lançamentos e saída dos materiais.
Achei uma planilha de cadastros onde estou fazendo algumas modificações mas chegou um ponto onde não consigo avançar, o código está resultando em um erro : "Erro de tempo em execução '91' A variavel do objeto ou a variavel do bloco with não foi definida".

Sub AtualizaComboBoxCodigo()

TotalRegistros = DADOS.UsedRange.Rows.Count

If TotalRegistros > 1 Then
    With ComboBoxCodigo
            .Enabled = True
            .RowSource = "DADOS!A2:A" & TotalRegistros
    End With
Else
    With ComboBoxCodigo
            .Enabled = False
    End With
End If

End Sub

Até o momento o problema está nessa linha em particular:

TotalRegistros = DADOS.UsedRange.Rows.Count

Alguém saberia o que pode estar acontecendo?

 
Postado : 10/10/2014 7:35 am
(@paulo_001)
Posts: 149
Estimable Member
Topic starter
 

Segue anexo:

 
Postado : 10/10/2014 8:07 am
(@paulo_001)
Posts: 149
Estimable Member
Topic starter
 

Help AlexandreVBA

 
Postado : 10/10/2014 1:04 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde!!

Quando usar

Option Explicit

, as variáveis devem ser obrigatoriamente declaradas!
Neste caso o VB, quer saber o que é

TotalRegistros

e o que é

DadosLinha

Tente declarar as variáveis tipo....

Dim TotalRegistros2  As ..tipo...

Att

 
Postado : 10/10/2014 1:47 pm
(@paulo_001)
Posts: 149
Estimable Member
Topic starter
 

Boa tarde Alexandre,
bigado pela ajuda Alexandre

eu declarei no módulo1

Public CadastroCodigo As Integer
Public DADOS As Worksheet
Public TotalRegistros As Integer
Public EnderecoImagem As String
Public CaixaDialogo As FileDialog
 
Postado : 10/10/2014 1:53 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde!!

Eu lhe recomendo rever suas rotinas, só para teste eu alterei os códigos dentro da Com para...

Sub AtualizaComboBoxCodigo()
    With Worksheets("DADOS")
        .Range("A2:A50") = Me.ComboBoxDescricao.Value
    End With
End Sub
Sub AtualizaComboBoxDescrição()
    With Worksheets("DADOS")
        .Range("B1:B50") = Me.ComboBoxDescricao.Value
    End With
End Sub

Seu Userfom inicializou.

Att

 
Postado : 10/10/2014 2:42 pm
(@paulo_001)
Posts: 149
Estimable Member
Topic starter
 

Thanks Alexandre!

 
Postado : 13/10/2014 11:35 am