Fórum Excel Bácico, Avançado e Vba

Este fórum é destina a usuário de Excel, que queiram compartilhar informações a básicas, avançadas e programação em VBA...
 
InícioInício  FAQFAQ  BuscarBuscar  MembrosMembros  GruposGrupos  Registrar-seRegistrar-se  Login  

Compartilhe | 
 

 Erro em tempo de execução 9

Ver o tópico anterior Ver o tópico seguinte Ir em baixo 
AutorMensagem
kleberton



Mensagens : 4
Data de inscrição : 17/08/2014

MensagemAssunto: Erro em tempo de execução 9   Dom Ago 17, 2014 10:50 am

Fala ae pessoal, será que alguém poderia me ajudar.

Estou tendo o seguinte erro: " Erro em tempo de execução '9': Subscrito fora do intervalo "

O código é o seguinte, irei sublinhar a linha que apresenta erro quando debugo.
Irei deixar um link para quem se interessar baixar a planilha e verificar se possível para me ajudar, é só juntar os espaços, pois o forum não me deixa postar link"

link: h t t p : / / w w w . 4 s h a r e d . c o m / f i l e / _ Y 1 Y R d x W c e / A g e n d a _ T e l e f n i c a . html

Grato desde já a quem puder me ajudar!









Private Sub ProcuraRegistros(ByVal TermoPesquisado As String)
Dim busca As Range
Dim Primeira_Ocorrencia, Resultados As String

Set busca = Sheets(2).Cells.Find(what:=TermoPesquisado, After:=Range("A1"), LookIn:=x1Formulas, LookAt:=x1Part, SearchOrder:=x1ByRows, SearchDirection:=x1Next, MatchCase:=False, SearchFormat:=False)

'SE a variável Busca não for vazia
If Not busca Is Nothing Then
Primeira_Ocorrencia = busca.Address
'Lista o primeiro Resultado na Variável
Resultados = busca.Row

'Esse loop pesquisa as próximas ocorrências para o termo pesquisado
Do
 Set busca = Sheets(2).Cells.FindNext(After = busca)
 
 'Condição para não listar o primeiro resultado, pois já foi listado acima
 If Not busca.Address Like Primeira_Ocorrencia Then
 Resultados = Resultados & ";" & busca.Row
End If
Loop Until busca.Address Like Primeira_Ocorrencia

MatrizResultados = Split(Resultados, ";")

'Atualiza o botão de rotação
broMoveRegistros.Max = UBound(MatrizResultados)

'Habilita o botão de rotação
broMoveRegistros.Enabled = True

'Atualiza o contador de registros
rotContRegistros.Caption = "1 de " & UBound(MatrizResultados) + 1

'Os campos recebem o conteúdo encontrado
cxtNome.Text = Sheets(2).Cells(MatrizResultados(0), 1).Value
cxtRua.Text = Sheets(2).Cells(MatrizResultados(0), 2).Value
cxtBairro.Text = Sheets(2).Cells(MatrizResultados(0), 3).Value
cxtEstado.Text = Sheets(2).Cells(MatrizResultados(0), 4).Value
cxtCidade.Text = Sheets(2).Cells(MatrizResultados(0), 5).Value
cxtCep.Text = Sheets(2).Cells(MatrizResultados(0), 6).Value
cxtResidencial.Text = Sheets(2).Cells(MatrizResultados(0), 7).Value
cxtCelular.Text = Sheets(2).Cells(MatrizResultados(0), Cool.Value
cxtComercial.Text = Sheets(2).Cells(MatrizResultados(0), 9).Value
cxtAnotações.Text = Sheets(2).Cells(MatrizResultados(0), 10).Value

'Se não for encontrado nenhum registro
Else

'Desabilita o botão de rotação
broMoveRegistros.Enabled = False

'Zera o contador de registros
rotContRegistro.Caption = ""

'Limpa os campos do formulário
cxtNome.Text = ""
cxtRua.Text = ""
cxtBairro.Text = ""
cxtEstado.Text = ""
cxtCidade.Text = ""
cxtCep.Text = ""
cxtResidencial.Text = ""
cxtCelular.Text = ""
cxtComercial.Text = ""
cxtAnotações.Text = ""
MsgBox "Nenhum resultado para ' " & TermoPesquisado & " ' foi encontrado."

End If

End Sub

Private Sub broMoveRegistros_Change()
Public MatrizResultado As Variant
Public Total_Ocorrencias As Long

Dim Linha As Long
Dim TotalOcorrencias As Long

TotalOcorrencias = broMoveRegistros.Max + 1
Linha = MatrizResultados(broMoveRegistros.Value)
rotContRegistro.Caption = broMoveRegistros.Value + 1 & " de " & TotalOcorrencias

cxtNome.Text = Sheets(2).Cells(Linha, 1).Value
cxtRua.Text = Sheets(2).Cells(Linha, 2).Value
cxtBairro.Text = Sheets(2).Cells(Linha, 3).Value
cxtEstado.Text = Sheets(2).Cells(Linha, 4).Value
cxtCidade.Text = Sheets(2).Cells(Linha, 5).Value
cxtCep.Text = Sheets(2).Cells(Linha, 6).Value
cxtResidencial.Text = Sheets(2).Cells(Linha, 7).Value
cxtCelular.Text = Sheets(2).Cells(Linha, Cool.Value
cxtComercial.Text = Sheets(2).Cells(Linha, 9).Value
cxtAnotações.Text = Sheets(2).Cells(Linha, 10).Value

End Sub
Voltar ao Topo Ir em baixo
Ver perfil do usuário
alexandrevba



Mensagens : 1820
Data de inscrição : 13/07/2011
Localização : Serra - ES

MensagemAssunto: Re: Erro em tempo de execução 9   Dom Ago 17, 2014 11:34 pm

Boa noite!!

Eu creio que meus limitados conhecimentos não seja suficiente para lhe ajudar, mas por curiosidade, tu pretende pesquisar e retornar dentro do Userform o que está na guia?

Att
Voltar ao Topo Ir em baixo
Ver perfil do usuário
 
Erro em tempo de execução 9
Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo 
Página 1 de 1
 Tópicos similares
-
» Criando componentes em tempo de execução no Delphi!
» Erro em tempo de execução "6" / Estouro
» Erro em tempo de execução "48"
» Erro em tempo de execução '438': O objeto não aceita esta propriedade ou método.
» [RESOLVIDO] "A execução foi interrompida devido a um erro em tempo de execução"

Permissão deste fórum:Você não pode responder aos tópicos neste fórum
Fórum Excel Bácico, Avançado e Vba :: Avançado/VBA :: Excel Avançado/VBA-
Ir para: