Ir para conteúdo
Fórum Script Brasil

Fabiano Souza

Membros
  • Total de itens

    1
  • Registro em

  • Última visita

Tudo que Fabiano Souza postou

  1. Boa noite, pessoal. Sou novato em VBA e estou tentando criar um formulário para lançamento de algumas informações. Esse formulário coleta o nome e o departamento do funcionário baseado no numero de matricula (txtCIF) inserido utilizando Vlookup. Existem outras txtBox (Data e Observação) que são gravadas em uma planilha. Tive um problema com o código pois ao gravar, recebo a mensagem de erro de tempo de execução "13" - Tipos incompatíveis. Ao depurar o erro, me cai na linha codigo = txtCIF. Envio o código abaixo, poderiam me auxiliar? "Vlookup" Private Sub txtCIF_AfterUpdate() Dim intervalo As Range Dim texto As String Dim codigo As Integer Dim mensagem codigo = txtCIF Sheets("banco").Select Set intervalo = Range("c2:g250") On Error GoTo Erro pesquisa = Application.WorksheetFunction.VLookup(codigo, intervalo, 5, False) txtNome = pesquisa pesquisa1 = Application.WorksheetFunction.VLookup(codigo, intervalo, 2, False) txtDepartamento = pesquisa1 Set intervalo = Range("c2:d250") On Error GoTo Erro Exit Sub Erro: texto = "Digite CIF válida" mensagem = MsgBox(texto, vbOKOnly + vbInformation) End Sub "Gravação das informações" Private Sub cmdGravar_Click() 'Ativar a primeira planilha ThisWorkbook.Worksheets("Dados").Activate 'Selecionar a célula A3 Range("A2").Select 'Procurar a primeira célula vazia Do If Not (IsEmpty(ActiveCell)) Then ActiveCell.Offset(1, 0).Select End If Loop Until IsEmpty(ActiveCell) = True 'Verificar se foi digitado um nome na primeira caixa de texto If txtCIF.Value = "" Then MsgBox "Digite a CIF do Monitor" txtCIF.SetFocus Exit Sub End If 'Carregar os dados digitados nas caixas de texto para a planilha ActiveCell.Value = txtCIF.Value ActiveCell.Offset(0, 1).Value = txtData.Value ActiveCell.Offset(0, 2).Value = txtNome.Value ActiveCell.Offset(0, 3).Value = txtDepartamento.Value ActiveCell.Offset(0, 4).Value = cboMotivo.Value ActiveCell.Offset(0, 5).Value = txtObservação.Value 'Limpar as caixas de texto txtCIF.Value = Empty txtData.Value = Empty txtNome.Value = Empty txtDepartamento.Value = Empty txtObservação = Empty 'Limpar as caixas de combinação cboMotivo.Value = Empty 'Colocar o foco na primeira caixa de texto txtCIF.SetFocus End Sub
×
×
  • Criar Novo...