katia cruz
Membro Júnior-
Posts
2 -
Cadastrado em
-
Última visita
Reputação
0-
Boa tarde, Alguem poderia me ajudar? Tenho uma planilha com as colunas: Etapa1, Ano1,Etapa2, Ano2,Etapa3, Ano3,Etapa4, Ano4,Etapa5, Ano5. As Etapas são valores fixos, ex. Etapa1 só recebe o valor 1, mas os anos recebem conforme o usuario cadastra. Gostaria que quando o usuario, em um formulario, por exemplo, escolhesse a etapa 1, e depois tal ano, procurasse na planilha que dentro da etapa 1 E na coluna Ano1 o valor pesquisado pelo usuario retornando quantidade de valores encontrados em um label . Como faço esse loop de pesquisa? Sei que tenho que usar um If then, mas nao estou conseguindo organizar
-
como alterar dados da planilha com formulario vba
katia cruz postou um tópico em Microsoft Office e similares
BOA TARDE, Tenho um formulario de cadastro onde consigo, pesquisar, salvar e imprimir os dados, mas quando pesquisa um registro para alterar o código esta salvando em cima do ultimo registro, ou seja, não esta selecionando a celula do registro que a pesquisa localizou para alteração. Se alguem puder me ajudar fico grata. Sgue os codigos abaixo: -------------- Botão de Pesquisar por nome --------------- Private Sub btn_Procurar_Click() If Me.txt_Procurar.Text = "" Then MsgBox "Digite um valor para a pesquisa" Else Call ProcuraPersonalizada(Me.txt_Procurar.Text) Label_Registros_Contador.Visible = True ' SpinButton1.Visible = True End If txt_Procurar.Text = "" End Sub Private Sub ProcuraPersonalizada(ByVal TermoPesquisado As String) Dim Busca As Range Dim Primeira_Ocorrencia As String Dim Resultados As String 'Executa a busca POR NOME (COLUNA Set Busca = Plan1.Range("B:B").Find(What:=TermoPesquisado, LookIn:=xlFormulas, _ LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _ MatchCase:=False, SearchFormat:=False) 'Caso tenha encontrado alguma ocorrência... If Not Busca Is Nothing Then Primeira_Ocorrencia = Busca.Address Resultados = Busca.Row 'Lista o primeiro resultado na variavel 'Neste loop, pesquisa todas as próximas ocorrências para 'o termo pesquisado Do Set Busca = Plan1.Cells.FindNext(After:=Busca) 'Condicional 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 dados iniciais no formulário SpinButton1.Max = UBound(MatrizResultados) 'Valor maximo do seletor de registros SpinButton1.Visible = True ' DEIXA O SELETOR VISIVEL 'habilita o seletor de registro SpinButton1.Enabled = True 'indicador do seletor de registros Label_Registros_Contador.Caption = "1 de " & UBound(MatrizResultados) + 1 'Box com o conteudo encontrado BOXNOME.Text = Plan1.Cells(MatrizResultados(0), 2).Value BOXDTNASC.Text = Plan1.Cells(MatrizResultados(0), 3).Value BOXCIDNAS.Text = Plan1.Cells(MatrizResultados(0), 4).Value BOXUFNASC.Value = Plan1.Cells(MatrizResultados(0), 5).Value BOXPAI.Text = Plan1.Cells(MatrizResultados(0), 6).Value BOXMAE.Text = Plan1.Cells(MatrizResultados(0), 7).Value BOXIGREJA.Text = Plan1.Cells(MatrizResultados(0), 8).Value BOXCIDIGREJA.Text = Plan1.Cells(MatrizResultados(0), 9).Value BOXUFIGREJA.Value = Plan1.Cells(MatrizResultados(0), 10).Value BOXDTBATISMO.Text = Plan1.Cells(MatrizResultados(0), 11).Value BOXBPADRINHO.Text = Plan1.Cells(MatrizResultados(0), 12).Value BOXBMADRINHA.Text = Plan1.Cells(MatrizResultados(0), 13).Value BOXENDERECO.Text = Plan1.Cells(MatrizResultados(0), 14).Value BOXN.Text = Plan1.Cells(MatrizResultados(0), 15).Value BOXBAIRRO.Text = Plan1.Cells(MatrizResultados(0), 16).Value BOXCIDEND.Text = Plan1.Cells(MatrizResultados(0), 17).Value BOXTEL1.Text = Plan1.Cells(MatrizResultados(0), 18).Value BOXTEL2.Text = Plan1.Cells(MatrizResultados(0), 19).Value BOXTRANSF.Value = Plan1.Cells(MatrizResultados(0), 20).Value BOXDESIST.Value = Plan1.Cells(MatrizResultados(0), 21).Value BOXDTCOMUNHAO.Text = Plan1.Cells(MatrizResultados(0), 22).Value BOXOBS.Text = Plan1.Cells(MatrizResultados(0), 23).Value BOXMATRICULA.Text = Plan1.Cells(MatrizResultados(0), 24).Value ANO1.Text = Plan1.Cells(MatrizResultados(0), 25).Value ETAPA1.Value = Plan1.Cells(MatrizResultados(0), 26).Value FALTA1.Text = Plan1.Cells(MatrizResultados(0), 27).Value OBS1.Text = Plan1.Cells(MatrizResultados(0), 28).Value CAT1.Text = Plan1.Cells(MatrizResultados(0), 29).Value ANO2.Text = Plan1.Cells(MatrizResultados(0), 30).Value ETAPA2.Value = Plan1.Cells(MatrizResultados(0), 31).Value FALTA2.Text = Plan1.Cells(MatrizResultados(0), 32).Value OBS2.Text = Plan1.Cells(MatrizResultados(0), 33).Value CAT2.Text = Plan1.Cells(MatrizResultados(0), 34).Value ANO3.Text = Plan1.Cells(MatrizResultados(0), 35).Value ETAPA3.Value = Plan1.Cells(MatrizResultados(0), 36).Value FALTA3.Text = Plan1.Cells(MatrizResultados(0), 37).Value OBS3.Text = Plan1.Cells(MatrizResultados(0), 38).Value CAT3.Text = Plan1.Cells(MatrizResultados(0), 39).Value ANO4.Text = Plan1.Cells(MatrizResultados(0), 40).Value ETAPA4.Value = Plan1.Cells(MatrizResultados(0), 41).Value FALTA4.Text = Plan1.Cells(MatrizResultados(0), 42).Value OBS4.Text = Plan1.Cells(MatrizResultados(0), 43).Value CAT4.Text = Plan1.Cells(MatrizResultados(0), 44).Value ANO5.Text = Plan1.Cells(MatrizResultados(0), 45).Value ETAPA5.Value = Plan1.Cells(MatrizResultados(0), 46).Value FALTA5.Text = Plan1.Cells(MatrizResultados(0), 47).Value OBS5.Text = Plan1.Cells(MatrizResultados(0), 48).Value CAT5.Text = Plan1.Cells(MatrizResultados(0), 49).Value ANO6.Text = Plan1.Cells(MatrizResultados(0), 50).Value ETAPA6.Value = Plan1.Cells(MatrizResultados(0), 51).Value FALTA6.Text = Plan1.Cells(MatrizResultados(0), 52).Value OBS6.Text = Plan1.Cells(MatrizResultados(0), 53).Value CAT6.Text = Plan1.Cells(MatrizResultados(0), 54).Value ANO7.Text = Plan1.Cells(MatrizResultados(0), 55).Value ETAPA7.Value = Plan1.Cells(MatrizResultados(0), 56).Value FALTA7.Text = Plan1.Cells(MatrizResultados(0), 57).Value OBS7.Text = Plan1.Cells(MatrizResultados(0), 58).Value CAT7.Text = Plan1.Cells(MatrizResultados(0), 59).Value BOXPADRINHO.Text = Plan1.Cells(MatrizResultados(0), 60).Value BOXMADRINHA.Text = Plan1.Cells(MatrizResultados(0), 61).Value BOXDTCRISMA.Text = Plan1.Cells(MatrizResultados(0), 62).Value Else 'Caso nada tenha sido encontrado, exibe mensagem informativa SpinButton1.Enabled = False 'desabilita o seletor de registros Label_Registros_Contador.Caption = "" 'zera os resultados encontrados LIMPARCAMPOS 'limpa os campos do formulário MsgBox "Nenhum resultado para '" & TermoPesquisado & "' foi encontrado." SpinButton1.Visible = False End If End Sub ------------ Botão ALTERAR ------------- CONVERTERCARACTERES ' CONVERTE PARA MAIUSCULA ActiveCell.Offset(0, 1).Value = BOXNOME.Text ActiveCell.Offset(0, 2).Value = BOXDTNASC.Text ActiveCell.Offset(0, 3).Value = BOXCIDNAS ActiveCell.Offset(0, 4).Value = BOXUFNASC ActiveCell.Offset(0, 5).Value = BOXPAI ActiveCell.Offset(0, 6).Value = BOXMAE ActiveCell.Offset(0, 7).Value = BOXIGREJA ActiveCell.Offset(0, 8).Value = BOXCIDIGREJA ActiveCell.Offset(0, 9).Value = BOXUFIGREJA ActiveCell.Offset(0, 10).Value = BOXDTBATISMO ActiveCell.Offset(0, 11).Value = BOXBPADRINHO ActiveCell.Offset(0, 12).Value = BOXBMADRINHA ActiveCell.Offset(0, 13).Value = BOXENDERECO ActiveCell.Offset(0, 14).Value = BOXN ActiveCell.Offset(0, 15).Value = BOXBAIRRO ActiveCell.Offset(0, 16).Value = BOXCIDEND ActiveCell.Offset(0, 17).Value = BOXTEL1 ActiveCell.Offset(0, 18).Value = BOXTEL2 ActiveCell.Offset(0, 19).Value = BOXTRANSF ActiveCell.Offset(0, 20).Value = BOXDESIST ActiveCell.Offset(0, 21).Value = BOXDTCOMUNHAO ActiveCell.Offset(0, 22).Value = BOXOBS ActiveCell.Offset(0, 23).Value = BOXMATRICULA ActiveCell.Offset(0, 24).Value = ANO1 ActiveCell.Offset(0, 25).Value = ETAPA1 ActiveCell.Offset(0, 26).Value = FALTA1 ActiveCell.Offset(0, 27).Value = OBS1 ActiveCell.Offset(0, 28).Value = CAT1 ActiveCell.Offset(0, 29).Value = ANO2 ActiveCell.Offset(0, 30).Value = ETAPA2 ActiveCell.Offset(0, 31).Value = FALTA2 ActiveCell.Offset(0, 32).Value = OBS2 ActiveCell.Offset(0, 33).Value = CAT2 ActiveCell.Offset(0, 34).Value = ANO3 ActiveCell.Offset(0, 35).Value = ETAPA3 ActiveCell.Offset(0, 36).Value = FALTA3 ActiveCell.Offset(0, 37).Value = OBS3 ActiveCell.Offset(0, 38).Value = CAT3 ActiveCell.Offset(0, 39).Value = ANO4 ActiveCell.Offset(0, 40).Value = ETAPA4 ActiveCell.Offset(0, 41).Value = FALTA4 ActiveCell.Offset(0, 42).Value = OBS4 ActiveCell.Offset(0, 43).Value = CAT4 ActiveCell.Offset(0, 44).Value = ANO5 ActiveCell.Offset(0, 45).Value = ETAPA5 ActiveCell.Offset(0, 46).Value = FALTA5 ActiveCell.Offset(0, 47).Value = OBS5 ActiveCell.Offset(0, 48).Value = CAT5 ActiveCell.Offset(0, 49).Value = ANO6 ActiveCell.Offset(0, 50).Value = ETAPA6 ActiveCell.Offset(0, 51).Value = FALTA6 ActiveCell.Offset(0, 52).Value = OBS6 ActiveCell.Offset(0, 53).Value = CAT6 ActiveCell.Offset(0, 54).Value = ANO7 ActiveCell.Offset(0, 55).Value = ETAPA7 ActiveCell.Offset(0, 56).Value = FALTA7 ActiveCell.Offset(0, 57).Value = OBS7 ActiveCell.Offset(0, 58).Value = CAT7 ActiveCell.Offset(0, 59).Value = BOXPADRINHO ActiveCell.Offset(0, 60).Value = BOXMADRINHA ActiveCell.Offset(0, 61).Value = BOXDTCRISMA LIMPARCAMPOS 'limpa os campos ActiveWorkbook.Save ' salvo a planilha MsgBox "Atualização realizada com sucesso!", vbInformation, "Confirmação" End Sub
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