- 10 Jan 2019 às 13:15
#39998
Prezados,
Estou finalizando uma planilha que tem a finalidade de gerir a documentação de empresas e funcionários de empresas terceirizadas.
A mesma funciona da seguinte maneira:
1ª Aba - Cadastro de Empresas: O usuário irá inserir os dados da empresa, como razão social, endereço, CNPJ, número de contrato, entre outros.
2ª Aba - Cadastro de Funcionários: O usuário irá realizar o cadastro dos funcionários desta empresa. Para isso, o formulário (VBA) solicita a inclusão da empresa (a programação é para a ComboBox realize a busca em função da relação de empresas contratadas, através do dispositivo “RowSource”).
O problema encontrado está justamente na 2ª Aba. Para que o usuário possa vincular o funcionário a ser cadastrado com empresa previamente cadastrada, é necessário que ele informe tanto a razão social quanto o CNPJ.
Necessito que, quando ele escolher a razão social da empresa, a ComboBox do CNPJ seja automaticamente preenchida.
Alguém poderia me ajudar?
Abaixo, estou deixando o código do formulário:
Código do Formulário:
(Em texto)
Private Sub cmdSAIR2_Click()
Unload UserForm2
End Sub
Private Sub cmdSALVAR2_Click()
'Selecionar a planilha oculto 1
Sheets(“CF”).Select
'Selecionar a célula A3
Range(“E11”).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
'Carregar os dados da TextBox
ActiveCell.Offset(0, 0).Value = TextBox1.Value 'DATA
ActiveCell.Offset(0, 3).Value = TextBox2.Value 'NOME FUNCIONÁRIO
ActiveCell.Offset(0, 4).Value = TextBox14.Value 'FUNÇÃO
ActiveCell.Offset(0, 5).Value = CDate(TextBox15.Value) 'DATA DE VALIDADE DA CNH
ActiveCell.Offset(0, 7).Value = TextBox13.Value 'VALIDADE (CNH)
ActiveCell.Offset(0, 13).Value = CDate(TextBox3.Value) 'ASO (VALIDADE)
ActiveCell.Offset(0, 21).Value = CDate(TextBox6.Value) 'ORDEM DE SERVIÇO (VALIDADE)
ActiveCell.Offset(0, 22).Value = TextBox7.Value 'DOCUMENTO (1)
ActiveCell.Offset(0, 24).Value = CDate(TextBox8.Value) 'VALIDADE (1)
ActiveCell.Offset(0, 25).Value = TextBox9.Value 'DOCUMENTO (2)
ActiveCell.Offset(0, 27).Value = CDate(TextBox10.Value) 'VALIDADE (2)
ActiveCell.Offset(0, 28).Value = TextBox11.Value 'DOCUMENTO (3)
ActiveCell.Offset(0, 30).Value = CDate(TextBox12.Value) 'VALIDADE (3)
'Limpar as caixas de texto
TextBox1.Value = Empty
TextBox2.Value = Empty
TextBox3.Value = Empty
TextBox6.Value = Empty
TextBox7.Value = Empty
TextBox8.Value = Empty
TextBox9.Value = Empty
TextBox10.Value = Empty
TextBox11.Value = Empty
TextBox12.Value = Empty
TextBox13.Value = Empty
TextBox14.Value = Empty
TextBox15.Value = Empty
'Carregar os dados da ComboBox
ActiveCell.Offset(0, 1).Value = ComboBox1.Value 'EMPRESA (CARREGAR DADOS)
ActiveCell.Offset(0, 2).Value = ComboBox2.Value 'CNPJ (CARREGAR DADOS)
ActiveCell.Offset(0, 6).Value = ComboBox12.Value 'CATEGORIA (CNH)
ActiveCell.Offset(0, 8).Value = ComboBox13.Value 'CONTRATANTE
ActiveCell.Offset(0, 9).Value = ComboBox14.Value 'TIPO
ActiveCell.Offset(0, 10).Value = ComboBox15.Value 'AUTORIZAÇÃO
ActiveCell.Offset(0, 11).Value = ComboBox16.Value 'SETOR
ActiveCell.Offset(0, 12).Value = ComboBox3.Value 'ASO (DISPOSIÇÃO)
ActiveCell.Offset(0, 14).Value = ComboBox4.Value 'FICHA REGISTRO (DISPOSIÇÃO)
ActiveCell.Offset(0, 16).Value = ComboBox5.Value 'CARTEIRA TRABALHO (DISPOSIÇÃO)
ActiveCell.Offset(0, 17).Value = ComboBox6.Value 'CARTEIRA TRABALHO (SITUAÇÃO)
ActiveCell.Offset(0, 18).Value = ComboBox7.Value 'FICHA ENTREGA - EPI (DISPOSIÇÃO)
ActiveCell.Offset(0, 20).Value = ComboBox8.Value 'ORDEM DE SERVIÇO (DISPOSIÇÃO)
ActiveCell.Offset(0, 23).Value = ComboBox9.Value 'DISPOSIÇÃO (1)
ActiveCell.Offset(0, 26).Value = ComboBox10.Value 'DISPOSIÇÃO (2)
ActiveCell.Offset(0, 29).Value = ComboBox11.Value 'DISPOSIÇÃO (3)
ActiveCell.Offset(0, 15).Value = ComboBox17.Value 'FICHA REGISTRO (VALIDADE)
ActiveCell.Offset(0, 19).Value = ComboBox18.Value 'FICHA ENTREGA - EPI (VALIDADE)
'Limpar as ComboBox
ComboBox1.Value = Empty
ComboBox2.Value = Empty
ComboBox3.Value = Empty
ComboBox4.Value = Empty
ComboBox5.Value = Empty
ComboBox6.Value = Empty
ComboBox7.Value = Empty
ComboBox8.Value = Empty
ComboBox9.Value = Empty
ComboBox10.Value = Empty
ComboBox11.Value = Empty
ComboBox12.Value = Empty
ComboBox13.Value = Empty
ComboBox14.Value = Empty
ComboBox15.Value = Empty
ComboBox16.Value = Empty
ComboBox17.Value = Empty
ComboBox18.Value = Empty
'Colocar o foco na primeira caixa de texto
TextBox1.SetFocus
Plan2.Activate
Unload UserForm2
End Sub
Private Sub UserForm_Initialize()
Me.ComboBox1.RowSource = “Empresas”
Me.ComboBox2.RowSource = “CNPJ”
Me.ComboBox13.RowSource = “CE!F11:F2000”
With ComboBox3
.AddItem “Possui”
.AddItem “Não Possui”
.AddItem “Não Aplicável”
End With
With ComboBox4
.AddItem “Possui”
.AddItem “Não Possui”
.AddItem “Não Aplicável”
End With
With ComboBox5
.AddItem “Possui”
.AddItem “Não Possui”
.AddItem “Não Aplicável”
End With
With ComboBox6
.AddItem “Adequado”
.AddItem “Não Adequado”
.AddItem “Não Aplicável”
End With
With ComboBox7
.AddItem “Possui”
.AddItem “Não Possui”
.AddItem “Não Aplicável”
End With
With ComboBox8
.AddItem “Possui”
.AddItem “Não Possui”
.AddItem “Não Aplicável”
End With
With ComboBox9
.AddItem “Possui”
.AddItem “Não Possui”
.AddItem “Não Aplicável”
End With
With ComboBox10
.AddItem “Possui”
.AddItem “Não Possui”
.AddItem “Não Aplicável”
End With
With ComboBox11
.AddItem “Possui”
.AddItem “Não Possui”
.AddItem “Não Aplicável”
End With
With ComboBox12
.AddItem “A”
.AddItem “B”
.AddItem “C”
.AddItem “D”
.AddItem “E”
.AddItem “A/B”
End With
With ComboBox14
.AddItem “Terceirização da Prestação de Serviços”
.AddItem “Quarteirização da Prestação de Serviços”
End With
With ComboBox15
.AddItem “Autorizado”
.AddItem “Não Autorizado”
End With
With ComboBox16
.AddItem “Almoxarifado”
.AddItem “Alta Direção”
.AddItem “Centro de Controle de Arrecadação (CCA)”
.AddItem “Centro de Controle Operacional (CCO)”
.AddItem “Compras / Suprimentos”
.AddItem “Comunicação”
.AddItem “Controladoria”
.AddItem “Engenharia”
.AddItem “Facilities”
.AddItem “Frotas”
.AddItem “Jurídico”
.AddItem “Manutenção Eletroeletrônica”
.AddItem “Meio Ambiente”
.AddItem “Operação”
.AddItem “Ouvidoria”
.AddItem “Receitas Acessórias”
.AddItem “Recursos Humanos”
.AddItem “Regulatório”
.AddItem “Saúde e Segurança do Trabalho”
.AddItem “Segurança Viária”
.AddItem “Sistema de Gestão Integrado”
.AddItem “Tecnologia da Informação”
.AddItem “Tesouraria”
End With
With ComboBox17
.AddItem “Adequado”
.AddItem “Não Adequado”
.AddItem “Não Aplicável”
End With
With ComboBox18
.AddItem “Adequado”
.AddItem “Não Adequado”
.AddItem “Não Aplicável”
End With
End Sub
Estou finalizando uma planilha que tem a finalidade de gerir a documentação de empresas e funcionários de empresas terceirizadas.
A mesma funciona da seguinte maneira:
1ª Aba - Cadastro de Empresas: O usuário irá inserir os dados da empresa, como razão social, endereço, CNPJ, número de contrato, entre outros.
2ª Aba - Cadastro de Funcionários: O usuário irá realizar o cadastro dos funcionários desta empresa. Para isso, o formulário (VBA) solicita a inclusão da empresa (a programação é para a ComboBox realize a busca em função da relação de empresas contratadas, através do dispositivo “RowSource”).
O problema encontrado está justamente na 2ª Aba. Para que o usuário possa vincular o funcionário a ser cadastrado com empresa previamente cadastrada, é necessário que ele informe tanto a razão social quanto o CNPJ.
Necessito que, quando ele escolher a razão social da empresa, a ComboBox do CNPJ seja automaticamente preenchida.
Alguém poderia me ajudar?
Abaixo, estou deixando o código do formulário:
Código do Formulário:
(Em texto)
Private Sub cmdSAIR2_Click()
Unload UserForm2
End Sub
Private Sub cmdSALVAR2_Click()
'Selecionar a planilha oculto 1
Sheets(“CF”).Select
'Selecionar a célula A3
Range(“E11”).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
'Carregar os dados da TextBox
ActiveCell.Offset(0, 0).Value = TextBox1.Value 'DATA
ActiveCell.Offset(0, 3).Value = TextBox2.Value 'NOME FUNCIONÁRIO
ActiveCell.Offset(0, 4).Value = TextBox14.Value 'FUNÇÃO
ActiveCell.Offset(0, 5).Value = CDate(TextBox15.Value) 'DATA DE VALIDADE DA CNH
ActiveCell.Offset(0, 7).Value = TextBox13.Value 'VALIDADE (CNH)
ActiveCell.Offset(0, 13).Value = CDate(TextBox3.Value) 'ASO (VALIDADE)
ActiveCell.Offset(0, 21).Value = CDate(TextBox6.Value) 'ORDEM DE SERVIÇO (VALIDADE)
ActiveCell.Offset(0, 22).Value = TextBox7.Value 'DOCUMENTO (1)
ActiveCell.Offset(0, 24).Value = CDate(TextBox8.Value) 'VALIDADE (1)
ActiveCell.Offset(0, 25).Value = TextBox9.Value 'DOCUMENTO (2)
ActiveCell.Offset(0, 27).Value = CDate(TextBox10.Value) 'VALIDADE (2)
ActiveCell.Offset(0, 28).Value = TextBox11.Value 'DOCUMENTO (3)
ActiveCell.Offset(0, 30).Value = CDate(TextBox12.Value) 'VALIDADE (3)
'Limpar as caixas de texto
TextBox1.Value = Empty
TextBox2.Value = Empty
TextBox3.Value = Empty
TextBox6.Value = Empty
TextBox7.Value = Empty
TextBox8.Value = Empty
TextBox9.Value = Empty
TextBox10.Value = Empty
TextBox11.Value = Empty
TextBox12.Value = Empty
TextBox13.Value = Empty
TextBox14.Value = Empty
TextBox15.Value = Empty
'Carregar os dados da ComboBox
ActiveCell.Offset(0, 1).Value = ComboBox1.Value 'EMPRESA (CARREGAR DADOS)
ActiveCell.Offset(0, 2).Value = ComboBox2.Value 'CNPJ (CARREGAR DADOS)
ActiveCell.Offset(0, 6).Value = ComboBox12.Value 'CATEGORIA (CNH)
ActiveCell.Offset(0, 8).Value = ComboBox13.Value 'CONTRATANTE
ActiveCell.Offset(0, 9).Value = ComboBox14.Value 'TIPO
ActiveCell.Offset(0, 10).Value = ComboBox15.Value 'AUTORIZAÇÃO
ActiveCell.Offset(0, 11).Value = ComboBox16.Value 'SETOR
ActiveCell.Offset(0, 12).Value = ComboBox3.Value 'ASO (DISPOSIÇÃO)
ActiveCell.Offset(0, 14).Value = ComboBox4.Value 'FICHA REGISTRO (DISPOSIÇÃO)
ActiveCell.Offset(0, 16).Value = ComboBox5.Value 'CARTEIRA TRABALHO (DISPOSIÇÃO)
ActiveCell.Offset(0, 17).Value = ComboBox6.Value 'CARTEIRA TRABALHO (SITUAÇÃO)
ActiveCell.Offset(0, 18).Value = ComboBox7.Value 'FICHA ENTREGA - EPI (DISPOSIÇÃO)
ActiveCell.Offset(0, 20).Value = ComboBox8.Value 'ORDEM DE SERVIÇO (DISPOSIÇÃO)
ActiveCell.Offset(0, 23).Value = ComboBox9.Value 'DISPOSIÇÃO (1)
ActiveCell.Offset(0, 26).Value = ComboBox10.Value 'DISPOSIÇÃO (2)
ActiveCell.Offset(0, 29).Value = ComboBox11.Value 'DISPOSIÇÃO (3)
ActiveCell.Offset(0, 15).Value = ComboBox17.Value 'FICHA REGISTRO (VALIDADE)
ActiveCell.Offset(0, 19).Value = ComboBox18.Value 'FICHA ENTREGA - EPI (VALIDADE)
'Limpar as ComboBox
ComboBox1.Value = Empty
ComboBox2.Value = Empty
ComboBox3.Value = Empty
ComboBox4.Value = Empty
ComboBox5.Value = Empty
ComboBox6.Value = Empty
ComboBox7.Value = Empty
ComboBox8.Value = Empty
ComboBox9.Value = Empty
ComboBox10.Value = Empty
ComboBox11.Value = Empty
ComboBox12.Value = Empty
ComboBox13.Value = Empty
ComboBox14.Value = Empty
ComboBox15.Value = Empty
ComboBox16.Value = Empty
ComboBox17.Value = Empty
ComboBox18.Value = Empty
'Colocar o foco na primeira caixa de texto
TextBox1.SetFocus
Plan2.Activate
Unload UserForm2
End Sub
Private Sub UserForm_Initialize()
Me.ComboBox1.RowSource = “Empresas”
Me.ComboBox2.RowSource = “CNPJ”
Me.ComboBox13.RowSource = “CE!F11:F2000”
With ComboBox3
.AddItem “Possui”
.AddItem “Não Possui”
.AddItem “Não Aplicável”
End With
With ComboBox4
.AddItem “Possui”
.AddItem “Não Possui”
.AddItem “Não Aplicável”
End With
With ComboBox5
.AddItem “Possui”
.AddItem “Não Possui”
.AddItem “Não Aplicável”
End With
With ComboBox6
.AddItem “Adequado”
.AddItem “Não Adequado”
.AddItem “Não Aplicável”
End With
With ComboBox7
.AddItem “Possui”
.AddItem “Não Possui”
.AddItem “Não Aplicável”
End With
With ComboBox8
.AddItem “Possui”
.AddItem “Não Possui”
.AddItem “Não Aplicável”
End With
With ComboBox9
.AddItem “Possui”
.AddItem “Não Possui”
.AddItem “Não Aplicável”
End With
With ComboBox10
.AddItem “Possui”
.AddItem “Não Possui”
.AddItem “Não Aplicável”
End With
With ComboBox11
.AddItem “Possui”
.AddItem “Não Possui”
.AddItem “Não Aplicável”
End With
With ComboBox12
.AddItem “A”
.AddItem “B”
.AddItem “C”
.AddItem “D”
.AddItem “E”
.AddItem “A/B”
End With
With ComboBox14
.AddItem “Terceirização da Prestação de Serviços”
.AddItem “Quarteirização da Prestação de Serviços”
End With
With ComboBox15
.AddItem “Autorizado”
.AddItem “Não Autorizado”
End With
With ComboBox16
.AddItem “Almoxarifado”
.AddItem “Alta Direção”
.AddItem “Centro de Controle de Arrecadação (CCA)”
.AddItem “Centro de Controle Operacional (CCO)”
.AddItem “Compras / Suprimentos”
.AddItem “Comunicação”
.AddItem “Controladoria”
.AddItem “Engenharia”
.AddItem “Facilities”
.AddItem “Frotas”
.AddItem “Jurídico”
.AddItem “Manutenção Eletroeletrônica”
.AddItem “Meio Ambiente”
.AddItem “Operação”
.AddItem “Ouvidoria”
.AddItem “Receitas Acessórias”
.AddItem “Recursos Humanos”
.AddItem “Regulatório”
.AddItem “Saúde e Segurança do Trabalho”
.AddItem “Segurança Viária”
.AddItem “Sistema de Gestão Integrado”
.AddItem “Tecnologia da Informação”
.AddItem “Tesouraria”
End With
With ComboBox17
.AddItem “Adequado”
.AddItem “Não Adequado”
.AddItem “Não Aplicável”
End With
With ComboBox18
.AddItem “Adequado”
.AddItem “Não Adequado”
.AddItem “Não Aplicável”
End With
End Sub