Ir ao conteúdo

Posts recomendados

Postado

Boa noite, pessoal.

 

Gostaria de mais uma ajuda.

 

Eu tenho um arquivo de reclamações de clientes e, em algumas vezes, preciso criar um formulário para envio de uma empresa terceirizada.

 

Pois bem, para agilizar o processo, no arquivo de envio eu criei um form para puxar os dados do outro arquivo mas não sei como referenciar esse arquivo no vba. Tudo que eu tento dá erro:

Private Sub pesquisar_btn_Click()

    Dim EmpFound As Range
    Application.ScreenUpdating = False

    Windows("Gestão de SAC - Categorizado.xlsb").ActivateSheets("COLAR DADOS").Activate 
    'este é o arquivo onde estão os dados que quero puxar'
    
    With Range("C3:C5001")
    
    Set EmpFound = .Find(Me.num_chamado_txt.Value)
        
    If EmpFound Is Nothing Then
    
        MsgBox "Número de Chamado não encontrado", vbCritical, "Gestão de Envios SAC"
        
        Me.num_chamado_txt.Value = ""
        
        Else
                
            With Range(EmpFound.Address)
        
            Me.produto_txt = .Offset(0, 2)
            Me.categoria_txt = .Offset(0, 5)
            Me.reclamacao_txt = .Offset(0, 14)
            Me.lote_txt = .Offset(0, 7)
            
            On Error Resume Next
        
            On Error GoTo 0
        
            End With
        
        End If
    Sheets("Pendências GUT").Select
    Application.ScreenUpdating = True
    End With

End Sub

O que eu poderia fazer nesse código para abrir esse arquivo?

Postado

Faça essas alterações para abrir o arquivo:

Dim Wb    As Workbook
   
Set Wb = Excel.Application.Workbooks.Open(. . . ) 'Abre Wb

.....e para fechar:


If Not Wb Is Nothing Then
Wb.Close SaveChanges:=False ' fecha Wb
Set Wb = Nothing
End If

 

  • Curtir 1
Postado

Fala, @diego_janjao

 

Tem que mencionar o caminho junto com o nome do arquivo. Como é o mesmo da pasta de trabalho do código, dá pra usar

ThisWorkbook.Path pra retornar o caminho. Fica então:
 

Set Wb = Excel.Application.Workbooks.Open(ThisWorkbook.Path & "\" & "Gestão de SAC - Categorizado.xlsb")
Wb.Sheets("COLAR DADOS").Activate

 

  • Curtir 1
Postado

@Edson Luiz Branco@Basole , muito obrigado a ambos!

 

Aproveitando, enquanto eu criava o formulário, as textbox eu criei em ordens diferentes, tem algum modo de especificar qual a ordem das textbox ao apertar TAB?

Exemplo, Número de Chamado está ativo, e ao apertar TAB vai para o textbox Reclamação.

Postado

Claro, amigo.

 

É só clicar com o botão direito na área do Userform e escolher "Ordem de Tabulação" e mover as posições para cima e para baixo.

Ou, individualmente selecionando cada controle e definindo em tempo de design a propriedade TabIndex (começando em 0). Para evitar que um controle receba foco ao teclar Tab, pode definir ainda a propriedade TabStop como False.

  • Obrigado 1

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!