Jump to content
Fórum Script Brasil
  • 0

Subscrito fora do intervalo - With e .find


Question

Boa tarde pessoal.

Estou precisando de ajuda para finalizar uma instrução que utiliza o with e find. O código está dando o erro "Erro em tempo de execução '9':
 Subscrito fora do intervalo) e eu não estou conseguindo corrigir"

O código é para contar quantas vezes o número "Pr" aparece em um banco de dados, como o banco de dados e muito grande, mais de 25M itens, pensei em localizar primeiro o número e depois contar quantas vezes ele repete.

OBS. os nº Pr no banco de dados estão em ordem crescente.

Segue código:

 

 Cont_Pr = 0
    l = 2
    L2 = 2
    
          Do Until Sheets("Auxiliar").Cells(l, 3).Value = ""
                                         
           Valx = Sheets("Auxiliar").Cells(l, 3).Value
                
            If Sheets("Auxiliar").Cells(l, 4).Value = 0 Or Sheets("Auxiliar").Cells(l, 4).Value = Empty Then
                
               Sheets("MovSigim").Select
                             
                With Sheets("MovSigim").Range("A:A")

                   Set EncontrarPRM = .Find(what:=Valx, Lookat:=x1whole)    <<<<  O erro acontece aqui.
                        
                     If Not EncontrarPRM Is Nothing Then
                        
                            Application.GoTo EncontrarPRM, True 'vai até o set encontrarPRM
                    
                        For i = 1 To 50
                                  
                             'ActiveSheet("MovSigm").Select
                             
                             If ActiveCell(L2, 1) = Valx Then
                                           
                                Cont_Pr = Cont_Pr + 1
                            
                             End If
                                        
                            L2 = L2 + 1
                            Sheets("Auxiliar").Cells(l, 4).Value = Cont_Pr
                    
                        Next
                    End If
               End With
                                                           
        
               End If
            
                 Valx = Clear
                 L2 = 2
                 Cont_Pr = 0
                 l = l + 1
       Loop

 

Obrigado pessoal!!

🤜🤛

 

 

 

Link to post
Share on other sites

1 answer to this question

Recommended Posts

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      149288
    • Total Posts
      645685
×
×
  • Create New...