Muito bom, tentei de diversas formas, queria poder fazer isso direto no Excel. Então, fiz uma planilha igual a sua para testar, porém não sei onde estou errando. Na minha planilha eu usar, quando digito algo em A, B apareça a hora e travada. Por favor se puder me ajudar.
Pra quem quer só o mês exemplo: "Dez" Planilha1.Cells(i, 2).Value = Date Planilha1.Cells(i, 2).Value = Format(Planilha1.Cells(i, 2).Value, "mmm") Ou só o dia em número Planilha1.Cells(i, 1).Value = Date Planilha1.Cells(i, 1).Value = Format(Planilha1.Cells(i, 1).Value, "dd") Aprendi muito com essa aula, PARABENS, excelente trabalho!
Ótimo aula, vou usar o código e fazer alguns alteração para fazer um banco de hora automatizado, no lugar dos número 1,2,3 etc vou usar uma tag Rfid e um leitor
Olá, nesse caso eu tentei usar o RFID e não funcionou. Também identifiquei que usando o ENTER após digitar o código, também não funciona. Só está funcionando usando o TAB ou as teclas seta esquerda ou direita. Sabem o motivo, poderiam me ajudar? Obrigado
Excelente aula! vai me ajudar muito. Gostaria de saber como que eu faço pra por a DATA e também a HORA automaticamente cada uma em sua respectiva coluna. No seu vídeo explica como colocar um ou outro mas não os 2 juntos
Boa tarde, pode alterar a coluna que deseja colocar a hora, no lugar do três colocar o número da coluna que deseja inserir a hora. Planilha1.Cells(i, Coluna da hora).Value = vba.Time Planilha1.Cells(i, Coluna da hora).Value = vba.Format(Planilha1.Cells(i, Coluna da hora).Value, "hh:mm:ss")
Excelente Vídeo Professor. Muito bem explicado e detalhado sua Aula, me ajudou muito na minha planilha de Lançamentos Contábeis. Aproveitando, queria saber se é possível também digitar (Na minha Planilha2 na Coluna C digitar o Código da Conta e aparecer na Coluna D a Descrição desta Conta buscando está descrição na Planilha1?). As Planilhas estão na mesma Pasta de Trabalho.
Boa noite! Bacana os códigos. Queria saber se é possível buscar na coluna da Planilha1 (Plano de Contas Ex:(Caixa)) ao digitar em uma célula na coluna da Planilha2 (Lacto Contábil) e trazer está Descrição. Como se estivesse usando a Função Procv mas, em VBA?
Olá, beleza? voce conseguiu fazer igual a do exemplo? poderia me ajudar por favor? eu não sei onde estou errando se tiver o modelo do codigo e for permitido ficaria muito agradecido
Muito bom, é que precisava. tenho uma duvida, se puder me ajudar agradeço: como faço para somar frase exemplo ( Sim ) e (Não), tipo contabilizar quantas vezes foi utilizado. Conforme vou preenchendo a coluna com (Sim), que possa ir contabilizando.
Bom dia, obrigado, vou estudar essa necessidade se é possível no VBA, mas se deseja fazer a contagem via fórmula no Excel, pode utilizar a função conte-se.
@@CanalSGP Bom dia, obrigado pelo retorno. A função Conte-se ela funciona somente contar os caracteres? Exemplo (sim= 3 ). Minha planilha é um controle rural, onde eu necessito contar quantos animais apresentou o (Sim), e quantidade de quantos apresentou o (Não).10 animais (sim) e 5 animais (Não). Pra depois eu dividir a quantidade de (sim) pela quantidade que passou que será a soma dos dois, 10/15.
Amigo do canal preciso muito da sua ajuda. Eu tenho uma planilha de ações onde na coluna C eu digito o nome da ação e na coluna B já aparece automaticamente a data. Fiz conforme seu vídeo, alterando para minhas condições e funcionou perfeitamente. Só que preciso fazer exatamente o mesmo nesta planilha também na coluna F e G, ou seja, quando digito o código da ação na coluna G deve preencher a data automaticamente na coluna F. Vc poderia me ajudar como devo fazer para que na mesma planilha eu consiga fazer o que lhe expliquei? Agradeço se puder me ajudar.
@@CanalSGP Boa tarde amigo. Eu tentei fazer e não consegui, pois dá erro. Acredito que é porque eu não tenho muito conhecimento em VBA. Seria possível eu lhe enviar a planilha para vc dar uma olhada? Acho que deve ser algo bem simples para arrumar. Se puder me ajudar agradeço muito, pois só falta isso para terminar minha planilha.
Muito bom mesmo. Meu caro, dá para aplicar este código em textbox de userfom? Se eu preencher qqr elemento do userfom, ou abri-lo, determinado textbox é preenchido com a data/hora.
Boa tarde. Uma dúvida, se eu fazer esses ajustes na planilha, nas novas que eu abrir, esses ajuste vai manter ou somente nessa planilha que fiz os ajustes ?
Excelente video, obrigado!!! Aproveitando surgiu uma questão, se eu quisesse que, como exemplo que duas coluna tivessem suas informação automatizada, (Coluna A informação "manual imputada" - Coluna B Data "automatizada" e Coluna C Hora "automatizada", deste modo seria possível tudo ao mesmo tempo. Como proceder se sim.
Boa tarde, pode definir a coluna que deseja alterando o número dentro do parênteses: Planilha1.Cells(i, 2).Value = VBA.Date Planilha1.Cells(i, 3).Value = vba.Time
Muito bacana o video, o código funcionou perfeitamente! Porem tenho uma dúvida: A situação acima obriga você a escrever e apertar ENTER ou TAB. Na minha situação especifica, a minha coluna "Numero" são dados salvos, que engloba: "Cliente Ativo" / "Cliente Inativo". Se esse cliente inativar ou reativar, teria a data da atualização dessa situação. Dito isso, quando eu seleciono o botão ao lado da celula para escolher entre ativo ou inativo, a data não atualiza, acredito eu que porque o excel fica na mesma celula talvez? Caso eu escreva novamente e aperte para ir para baixo ou para o lado ele vai, porem selecionando os dados não. Poderia me ajudar a solucionar essa questão?
Ótima aula oq eu quero e parecido mas invez de colocar data e hora preciso que coloque o mesmo número que eu digitar são três tipo de sequência e cada sequência tem que ir para determinada coluna teria como fazer isso?
Bom dia, obrigado, pode tentar alterar a linha de código a seguir. Planilha1.Cells(i, 4).Value = VBA.Time Para Planilha1.Cells(i, 4).Value = Planilha1.Cells(i, 2).Value
Boa tarde. Excelente vídeo, sigo em Portugal seu canal, com excelentes aulas de excel..................no entanto segui todas instruções só não está funcionando quando é apagado o valor da célula A5 não apaga a célula C5, mas se apagar valor de A6 ele apaga C5, ou seja pelo que entendo anda uma linha abaixo na coluna A em relação à C. Pode me ajudar a detetar o erro? Obrigado.
@@CanalSGP Obrigado pela rápida resposta, os códigos estão corretamente inseridos (excel em PT-PT) Folha1, e o código está a funcionar, no entanto como referi apaga valores sempre uma linha abaixo A5 não apaga nada, A6 apaga C5; A7 apaga C6, e assim consecutivamente.
Muiiiiiito bom amigo! Ajudou muito, to panhando aqui em uma fórmula parecido com essa. Queria; ( digitando na coluna A aparecesse a data na coluna C e que essa data não mudasse fosse fixa. E se eu não digitar nada na coluna A não aparecesse nada tb na coluna C) Estou tentando com =hoje() mas, a data muda🤦🏻♂️
Boa noite, somente via código para fazer isso, mas precisaria colocar condições if para definir quando alterar, mas é procedimento semelhante ao da vídeo aula, experimente fazer exemplo igual do vídeo, depois que funcionar tenta adaptar para sua planilha.
para data fixa, vc pode criar a seguinte function: Function DateTime() DateTime = Now End Function Aí, acredito que seja só vc chamar a função dentro do código
professor, vc é top, so descobri que era possivel fazer isso com seus videos, ja to seguindo! Seria possivel bloquear as celulas pra nao ser possivel apagar após a entrada dos dados?
Boa tarde, pode colocar no código para retirar a senha e colocar depois de alterar. Segue link de vídeo sobre senha com vba. ruclips.net/video/63Ocl6v6b6o/видео.html
Fala, meu querido, tudo bem? Há alguma maneira de fazer com que esta macro reconheça os valores que foram colados? Fiz a macro, e ao colar os dados, não foram adicionadas a data/hora, apenas quando digitei o valor.
Boa tarde, pode tentar mudar de evento na planilha, verifique para colocar o código no evento change da planilha, que vai ser acionado sempre que selecionar.
Bom dia professor! Primeiramente parabéns pela aula. Sabe me dizer como chego no desenvolvedor para aplicar essa fórmula no WPS OFFICE (excel do Linux)?
Boa noite, tem algum vídeo com CORREÇÃO de horas? Um exmplo, tem uma coluna com várias horas erradas do que foi passado pela empresa, para eu não corrigir um por um, tem algum vídeo explicando como corrigir tudo automaticamente?
Muito bom. Você sabe como utilizo esse evento Change para dispara uma Macro em uma Planilha no On Drive com varias pessoas acesando a planilha. Exemplo: Quando o Evento Change ativar gostia que executasse a macro para todos usuarios que estivesse online na planilha, tem como fazer isso?
@@CanalSGP então eu utilizo o Excel desktop mesmo porém com atualização automática nas planilhas, quando algum outro usuário adubar um produto já aparece para todos, porém queria fazer um sistema onde caso alguém já esteva com o userform aberto o sistema avisa q já está aberto e se gostaria de derrubar a outra pessoa do userform dela
Olá, boa tarde professor! Como fazer para aparecer as datas se, por exemplo, copiarmos e colarmos números em massa ao invés de digitar um por um, e da mesma forma como excluir e fazer desaparecer as datas em massa também?
Olá, boa tarde. Será que você poderia me ajudar? Eu estou tentando copiar o valor da coluna P, linha aleatória (ex. P5), mas, desde que a "O5" esteja vazia. Caso seja ""; "". Se "O5 = ""; copia a "P5" e cola na "O10" por exemplo.
Muito bom mesmo agora eu estava querendo saber como deixar dentro do txtbox o formato de horas para eu digitar a hora e depois eu somar essas horas de maneira automático vc tem algum vídeo mostrando?
Boa tarde meu querido! Otimo video. Mas queria saber, como posso fazer pra duplicar esse codigo? Por exemplo ali tu digita na coluna A para sair na coluna C. Mas eu queria que alem de sair o horario dessa, tambem quando eu digitasse na coluna D saisse o horario na coluna E tambem... Seria possivel?
Boa noite, obrigado, precisa replicar os ifs. On Error Resume Next If Planilha1.Cells(i, 4).Value "" Then If Planilha1.Cells(i, 5).Value = "" Then If C 3 Then If i > 5 Then 'COLOCAR HORA Planilha1.Cells(i, 5).Value = VBA.Time Planilha1.Cells(i, 5).Value = VBA.Format(Planilha1.Cells(i, 5).Value, "hh:mm:ss") 'COLOCAR DATA Planilha1.Cells(i, 5).Value = VBA.Date End If End If End If End If
Boa noite, Tentei aplicar mas esta constando o seguinte erro (Erro de compilação: Somente comentários podem aparecer após End Sub, End Function, ou End Property) Sinalizando a parte Private Sub Worksheet_Change(ByVal Target As Range), Como seria possivel corrigir o erro? Desde já agradeço.
Uso uma planilha de controle de entrada de veículos e nessa planilha eu quero automatizar hora e data ao digitar a placa do veículo, tem algum vídeo que pode me ajudar nesse sentido?
Olá. Uma dúvida. Já criei a planilha e gostaria de aplicar no meu trabalho, porém as formulas utilizadas não funcionam no SharePoint. Existe uma forma de usar esse arquivo de forma compartilhada sem perder essas alterações?
Olá bom dia amigo , eu segui os passos aqui mas não consegui automatiza minha planilha para por a hora em uma linha e a data em outra, seria possível fazer as duas automatizada de forma que se eu digitar em uma coluna C a coluna B recebe a hora e a coluna A recebe a data?
Bom dia, parabéns pelo Canal. Me inscrevi e vou adquirir suas planilhas. Deixe eu lhe perguntar. Caso que faça este comando no Excel, ao migrar para o Google Sheet, pois preciso compartilhar esta planilha com minha equipe... sabe se eu perco a função?
Boa noite, perde a função, porque os códigos VBA não são suportados pelo Google Planilhas. Mas tem macros em script no Google Planilhas, segue link de vídeo aula com o mesmo procedimento com javascript: ruclips.net/video/SX3q_waJYD4/видео.html
Boa noite! Muito obrigado pelo vídeo nota 10! Pode me ajudar toda vez que eu abro a planilha preciso digitar o código eu gostaria de abrir a planilha e começar a digitar e aparecer a data automaticamente tipo um controle de entrada e saída quero registrar a saída com data para depois somar a quantidade de saída. Obrigado mais uma vez pelo apoio
Bom dia, obrigado, não entendi exatamente sua dúvida, mas se o seu código está sendo apagado, é porque não salvou a planilha habilitada para macro. Depois de colocar seu código na planilha, vai arquivo, Salva como e na janela de salvar, em tipo, altere para segunda opção, pasta de trabalho habilitada para macro.
Excelente vídeo... Seria possível fazer esse procedimento? Toda vez que eu atualizasse o valor na célula A1, o valor antigo fosse "empurrado pra celular A2", e assim consequentemente? Exemplo: Hoje A1 = 10... Amanhã vou atualizar... A1= 32... A2=10 Depois de amanhã vou atualizar novamente... A1 = 23... A2 = 32 ....
Boa tarde, acredito ser possível, mas até o momento não tenho procedimento neste sentido, vou estudar se é possível fazer algo. Se obtiver sucesso posto no canal.
Adorei este código limpo, só uma uma dúvida: eu sei que quando eu apago por carácter na coluna A, eu apago na C, mas quando eu apago direto na A não funciona na C diretamente.
Boa tarde. Uma duvida... quero que saia tanto a data como hora na mesma célula. Coloquei desta forma aqui, mas a data e o mês estão saindo invertidos. Pode me ajudar? Planilha1.Cells(i, 4).Value = Date & Space(3) & Time
@@CanalSGP Em qual parte eu coloco esta informação? Me ajudaria muito se resolvesse este problema. Muito obrigado! Private Sub Worksheet_Change(ByVal Target As Range) Application.EnableEvents = False Application.ScreenUpdating = False Dim i As Integer Dim C As String C = ActiveCell.Column If C = 1 Then i = ActiveCell.Row - 1 Else i = ActiveCell.Row End If On Error Resume Next If Planilha1.Cells(i, 1).Value "" Then If Planilha1.Cells(i, 3).Value = "" Then If C 3 Then If i 4 Then Planilha1.Cells(i, 3).Value = Date & Space(3) & Time End If End If End If End If If C = 1 Then If Planilha1.Cells(i, 1).Value = "" Then Planilha1.Cells(i, 3).Value = "" End If End If Application.EnableEvents = True Application.ScreenUpdating = True End Sub
Private Sub Worksheet_Change(ByVal Target As Range) Application.EnableEvents = False Application.ScreenUpdating = False Dim i As Integer Dim C As String C = ActiveCell.Column If C = 1 Then i = ActiveCell.Row - 1 Else i = ActiveCell.Row End If On Error Resume Next If Planilha1.Cells(i, 1).Value "" Then If Planilha1.Cells(i, 3).Value = "" Then If C 3 Then If i 4 Then Dim Data as Date Data = vba.Date Planilha1.Cells(i, 3).Value = Data & Space(3) & Time End If End If End If End If If C = 1 Then If Planilha1.Cells(i, 1).Value = "" Then Planilha1.Cells(i, 3).Value = "" End If End If Application.EnableEvents = True Application.ScreenUpdating = True End Sub
Muito bom, Top Fiz e deu muito certo. Só uma dúvida: Como faço para usar esse mesmo código duas vezes na mesma planilha? Ex. Você usou a coluna "A" e a coluna "C". Como usar também nas Colunas, ex., "E" e "G"? Já usei, e deu muito certo, nas colunas "B" e "G"; gostaria de usar, também, nas colunas "J" e "M". Como proceder? Desde de já agradeço.
Olá! boa tarde, professor ! Acompanho o seu canal já há algum tempo, gosto muito dos seus vídeos. Trabalho com controle de estacionamento. E com suas dicas automatizei minha planilha de trabalho, ficou muito boa. Gostaria de mais uma ajuda sua, se possível. Na coluna "K", da minha planilha, é digitado a placa do veículo e são preenchidas automaticamente as colunas "L", "M" e "N". As colunas "L" e "M" são reservadas para a identificação do motorista. Na coluna "N" é o horário de entrada do veículo. Na coluna "O", que não é automatizada, é o horário de saída. A cada novo dia de trabalho, através de um botão de comando, é adicionada uma nova planilha. Na primeira linha desta, nas colunas "K", "L", "M", "N" e "O", é colocado a data e o dia da semana (sendo que as colunas "K", "L" e "N" ficam vazias, na coluna "M" é a data e na "O" é o dia da semana). Ela, a primeira linha, tem apenas o contorno sem divisões entre as colunas, parecendo mescladas ainda que não sejam.nas linhas subsequentes é o registro dos veículos como descrito acima. O meu pedido de ajuda é o seguinte: às vezes determinados veículos entram e não saem no mesmo dia, ficando em aberto a saída (coluna "O") e três dias depois, mais ou menos, quando ele sai, digita-se a placa na coluna "K" e na coluna "N"é preenchido automaticamente o horário de entrada, mas ele não está entrando e sim saindo. O que eu gostaria de fazer? Gostaria, que ao digitar uma placa (na célula K20, por exemplo), o Excel verificasse se no último registro desta placa, está o horário de entrada (coluna "N") e o de saída (coluna "O"). Se verdadeiro, então, na célula "N20" coloque o horário de entrada do dia em que está sendo digitado, como já faz. Se falso, ou seja, se a saída (coluna "O") estiver em aberto, então, verifique qual é a data desse último registro copie e cole na célula "N20" em vez de colocar o horário de entrada. Digamos que o último registro esteja na linha "10", então, na célula "O10", que deveria ser colocado o horário de saída, mas que está em aberto porque o veículo pernoitou, coloque-se a data do dia do novo registro. Que essa Makro seja ativada condicionada a digitação da placa do veículo na coluna "K".
Boa tarde, obrigado, infelizmente até o momento não tenho procedimento neste sentido, vou estudar se é possível fazer algo, mas é bem complexo o que deseja.
Boa tarde, a minha nao esta funcionando, não aparece nenhuma mensagem de erro mas também nao acontece nada quando eu digito, assisti o video algumas vezes não consegui identificar onde errei, a planilha não esta bloqueada, funciona normal, é como se o código não rodasse (esta em Worksheet e como change)
seria possível colocar variáveis para usuário que tenha um pouco de conhecimento só alterar as colunas?, tipo para usar o mesmo código para outras planilhas
Boa tarde Na parte: If A = 2 Then i = ActiveCell.Row - 1 Else i = ActiveCell.Row End If a data está aparecendo na linha anterior por causa do -1 \uso uma lista de escolha e gostaria de quando escolhe um item da lista a data aparecesse na mesma linha e não na linha anterior. Poderia me ajudar com exemplo??? Obrigado
CAra eu estou tendo um problemão, talvez vc possa me ajudar. As minhas informações vem de um bloco de notas e por isso o código vba não funciona, como vc fazer?
Bom dia, talvez trabalhar com um loop para colocar a data posteriormente. Sobre loop tenho outra aula, mas vai precisar adaptar para sua necessidade, segue link.ruclips.net/video/CaBMdrIWFp4/видео.html
Muito boa a explicação, porém eu gostaria de saber mais uma coisa, tem como eu limitar essa funcionalidade até um certo número de linha. Exemplo: A funcionalidade se aplica da linha 5 até a linha 10 da coluna C
Olá! Consegui adicionar, mas o calendário me mostra tudo a zero e não mostra o dia. Se clico passa corretamente na tabela, mas não consigo ver o número nos dois cliques.
Bom dia, a macro precisa de uma célula para disparar, porque se colocar por exemplo no evento change da planilha, toda vez que selecionar a planilha a macro vai ser disparada.
Por favor me ajude! Tenho um ficheiro excel com data e horas. O que eu quero fazer é automatizar de tal maneira que sempre que eu coloque como hora de entrada ou saida, meia noite em diante, a data some automaticamente um dia, como se de um relogio se tratasse. Nao estou conseguindo fazer isso.
Tem como colocar a data em uma determinada coluna quando copio os dados de uma planilha com varias coluna e colo em outra planilha , quero que na planilha de destino em determinada coluna preencha com a data atual da forma que está este vba não consigo com que a data funcione em todas as linhas que foram coladas somente na primeira linha traz a data atual.
Muito legal! Vou testar! Como devo fazer para colocar critérios de resposta na coluna 1. Exemplo: se for status "finalizado", registrar a hora ou a data?
Bom dia, obrigado, experimente colocar uma condição a mais antes de registrar a data. If Planilha1.Cells(i, 1).Value = "finalizado" Then Planilha1.Cells(i, 3).Value = VBA.Date End If
Olá. Gostaria muito de fazer essa planilha mais no OpenOffice da empresa mais esse código vba não funciona. Já tentei de tudo. Pode né ajudar por favor. Tipo mudar esse código de vba abaixo pra OpenOffice. Private Sub Worksheet_Change(ByVal Alvo As Range) Dim limite_maximo As Integer limite_maximo = 1000 ' altere aqui para limitar a última linha If Alvo.Cells.Count > 1 Or IsEmpty(Alvo) Then Exit Sub ' faz nada se mais de uma célula modificada ou se deu delete If Alvo.Column = 1 And Alvo.Row
Preciso de ajuda não consigo resolver isso a dias Trabalho viajando e sempre fazemos uma manutenção Tenho uma coluna com a Data e hora Fiz uma coluna ao lado pra marcar que toda vez que eu colocar o horário atual automaticamente nessa coluna apareça uma pausa que é equivalente a 20 minutos, sendo que vou fazer a soma de todas as paradas pra descontar no fim de viagem Como eu consigo a resolver isso? Isso é possível Deixa seu WhatsApp pra mim tentar resolver… so falta isso pra concluir a minha planilha
Bom dia, talvez fazer uma célula menos a outra de forma normal no Excel. Sobre somar horas, se for via código vai ser um pouco complexo, mas somando diretamente na planilha é soma normal.
Fiz tudo como no vídeo mas com referencias coluna 8 para as datas na coluna 7 a partir da linha 5 e não funcionau e pediu depuração na linha: 'If .Planilhal.Cells(i, 8).Value "" Then
@@CanalSGP Consegui resolver a questão da validação de dados, porém quando eu protejo a planilha para que outra pessoa não selecione as células onde irá aparecer a DATA e Hora, ela simplesmente deixa de funcionar... Funciona somente com a célula desbloqueada kkkk Tem como resolver esse problema?
O produto de uma célula é um número variável. Como copiar esse número que é variável para diferentes células, toda vez que eu quiser inserir ele em nova célula já será um número que variou
Precisava colocar em outra celula na mesma linha para aparecer na celula ao lado - No exemplo ai é da coluna a para c. queria que fosse da a para c e da f para g por exemplo.. Nao estou conseguindo Obrigado
Eu queria que inserisse automaticamente a data e hora na célula ao lado, quando o a condição da célula anterior *[=SE(ÉERROS(D2);"";"DESMONTADO")]* fosse igual a falso *("Desmontado")* Já tentei de várias formas e não consigo.
Tenho um desafio. Eu tenho uma planilha que tem a hora de entrada e de saida de pessoas (por ex)quando ela chega eu consigo o preenchimento automatico, porem pra sair não. isso no Excel on line.
No meu caso não funcionou de jeito nenhum, só que no caso quero digitar na coluna 4 e a data aparecer na coluna 1 fiz todo. Passo a passo invertendo os números das colunas, no final de tudo simplesmente não acontece nada. Habilitei tudo mas não funciona. HELLP
Muito boa explicação !! Tenho uma dúvida, que não achei em nenhum lugar a resposta. Eu consigo fazer mais de uma VBA na mesma a aba da planilha ? No meu caso essa macro, utilizei para me informar o horário inicial de um processo(assim que digito algo na coluna 1, automaticamente me vem a hora na coluna 3. Exemplo inicio as 17h), preciso agora que ela me de o hora final final desse processo (assim que eu digitar algo na coluna 4, vem o horário automático na coluna 5), exemplo 19h. Depois eu faço uma subtração para saber o tempo entre inicio e fim. Me ajudaria muito essa informação, obrigada
Boa Tarde Parabens, seria possivel a cada alteração na coluna A a fata ser acrescida nas colunas D E F G.... e assim sucessivamente montando um historico?
Boa tarde, é possível, mas precisar ser ajustado com loop de localização de célula vazia. Do If Not (IsEmpty(ActiveCell)) Then ActiveCell.Offset(0, 1).Select End If Loop Until IsEmpty(ActiveCell) = True
Olá pessoal, sei que já tem algum tempo. Por favor se alguém puder me ajudar. Fiz uma planilha do exemplo do Professor, mas não consigo identificar o erro. Por favor se alguém puder me ajudar, muito grato
Boa tarde! eu corrigir mas nenhum efeito: coluna h p/data automática e coluna h p/preencher. Segue dados: Private Sub Worksheet_Change(ByVal Target As Range) Application.EnableEvents = False Application.ScreenUpdating = False Dim i As Integer Dim C As String C = ActiveCell.Column If C = 8 Then i = Active.cell.Row - 1 Else i = Active.cell.Row End If On Error Resume Next If Plan1.Cells(i, 8).Value "" Then If Plan1.Cells(i, 7).Value "" Then If C 7 Then If i 5 Then 'OUT2020.Cells(i, 7).Value = Time 'OUT2020.Cells(i, 7).Value = Format(OUT2020.Cells(i, 3).Value, "hh:mm:ss") Plan1.Cells(i, 7).Value = Date End If End If End If End If If C = 8 Then If Plan1.Cells(i, 8).Value = "" Then Plan1.Cells(i, 7).Value = "" End If End If Application.EnableEvents = True Application.ScreenUpdating = True End Sub
nao entendo nada de logica de programação, se eu quiser q em uma célula aparecesse a data e a outra a ora como eu faria? Private Sub CommandButton1_Click() Application.EnableEvents = True Application.ScreenUpdating = True End Sub Private Sub Worksheet_Change(ByVal Target As Range) Application.EnableEvents = False Application.ScreenUpdating = False Dim i As Integer Dim c As String c = ActiveCell.Column If c = 1 Then c = ActiveCell.Column If c = 1 Then i = ActiveCell.Row - 1 Else i = ActiveCell.Row End If On Error Resume Next If Planilha1.Cells(i, 1).Value "" Then If Planilha1.Cells(i, 3).Value = "" Then If c 3 Then If i 5 Then 'Planilha1.Cells(i, 3).Value = Time 'Planilha1.Cells(i, 3).Value = Format(Planilha1.Cells(i, 3).Value, "hh,mm,ss") Planilha1.Cells(i, 3).Value = Date End If End If End If End If End If If c = 1 Then If Planilha1.Cells(i, 1).Value = "" Then Planilha1.Cells(i, 3).Value = "" End If End If Application.EnableEvents = True Application.ScreenUpdating = True End Sub
@@CanalSGP eu to precisando de outo bem parecido tem como eu fazer tipo quando clicar no botão tanto o botão o mesmo botão baixa-se junto com uma determinada quantidade de linhas? clicando no botão e não na célula
@@CanalSGP Exemplo: se eu selecionar os números 1,2,3,4 e copia e colar, só a primeira celula selecionada irá trazer a data, o restante não. Ex2. Se eu pegar nomes de outra planilha né colar, só vai aparecer a data do primeiro nome
Formulário de Cadastro de Clientes completo em apenas uma aula:ruclips.net/video/FDwGgMQo3JM/видео.html
Muito bom, tentei de diversas formas, queria poder fazer isso direto no Excel.
Então, fiz uma planilha igual a sua para testar, porém não sei onde estou errando.
Na minha planilha eu usar, quando digito algo em A, B apareça a hora e travada. Por favor se puder me ajudar.
Pra quem quer só o mês exemplo: "Dez"
Planilha1.Cells(i, 2).Value = Date
Planilha1.Cells(i, 2).Value = Format(Planilha1.Cells(i, 2).Value, "mmm")
Ou só o dia em número
Planilha1.Cells(i, 1).Value = Date
Planilha1.Cells(i, 1).Value = Format(Planilha1.Cells(i, 1).Value, "dd")
Aprendi muito com essa aula, PARABENS, excelente trabalho!
Bom dia, obrigado.
Ótimo aula, vou usar o código e fazer alguns alteração para fazer um banco de hora automatizado, no lugar dos número 1,2,3 etc vou usar uma tag Rfid e um leitor
Boa tarde, obrigado, sucesso em seus estudos.
Olá, nesse caso eu tentei usar o RFID e não funcionou. Também identifiquei que usando o ENTER após digitar o código, também não funciona. Só está funcionando usando o TAB ou as teclas seta esquerda ou direita. Sabem o motivo, poderiam me ajudar? Obrigado
Mandou super bem amigo, muito obrigado por compartilhar!!
Boa tarde, obrigado.
Excelente aula! vai me ajudar muito.
Gostaria de saber como que eu faço pra por a DATA e também a HORA automaticamente cada uma em sua respectiva coluna. No seu vídeo explica como colocar um ou outro mas não os 2 juntos
Boa tarde, pode alterar a coluna que deseja colocar a hora, no lugar do três colocar o número da coluna que deseja inserir a hora.
Planilha1.Cells(i, Coluna da hora).Value = vba.Time
Planilha1.Cells(i, Coluna da hora).Value = vba.Format(Planilha1.Cells(i, Coluna da hora).Value, "hh:mm:ss")
Excelente Vídeo Professor. Muito bem explicado e detalhado sua Aula, me ajudou muito na minha planilha de Lançamentos Contábeis. Aproveitando, queria saber se é possível também digitar (Na minha Planilha2 na Coluna C digitar o Código da Conta e aparecer na Coluna D a Descrição desta Conta buscando está descrição na Planilha1?). As Planilhas estão na mesma Pasta de Trabalho.
Boa noite, é possível, mas não fiz vídeo neste sentido ainda, vou verificar para fazer algo relacionado.
Obrigado ppo compartilha conhecimento
estava a procura sobre datas automatica e achei ufa
Bom dia, de nada.
Boa noite! Bacana os códigos. Queria saber se é possível buscar na coluna da Planilha1 (Plano de Contas Ex:(Caixa)) ao digitar em uma célula na coluna da Planilha2 (Lacto Contábil) e trazer está Descrição. Como se estivesse usando a Função Procv mas, em VBA?
Bom dia, obrigado, não fiz algo assim ainda, mas acredito que seja possível.
Melhor explicação simples e passo-a-passo...
Obrigado
Valeu!
Obrigado
Excelente. Funciona perfeitamente! Obrigado!
Obrigado.
Olá, beleza? voce conseguiu fazer igual a do exemplo? poderia me ajudar por favor? eu não sei onde estou errando se tiver o modelo do codigo e for permitido ficaria muito agradecido
Muito bom, é que precisava. tenho uma duvida, se puder me ajudar agradeço: como faço para somar frase exemplo ( Sim ) e (Não), tipo contabilizar quantas vezes foi utilizado. Conforme vou preenchendo a coluna com (Sim), que possa ir contabilizando.
Bom dia, obrigado, vou estudar essa necessidade se é possível no VBA, mas se deseja fazer a contagem via fórmula no Excel, pode utilizar a função conte-se.
@@CanalSGP Bom dia, obrigado pelo retorno. A função Conte-se ela funciona somente contar os caracteres? Exemplo (sim= 3 ). Minha planilha é um controle rural, onde eu necessito contar quantos animais apresentou o (Sim), e quantidade de quantos apresentou o (Não).10 animais (sim) e 5 animais (Não). Pra depois eu dividir a quantidade de (sim) pela quantidade que passou que será a soma dos dois, 10/15.
Amigo do canal preciso muito da sua ajuda. Eu tenho uma planilha de ações onde na coluna C eu digito o nome da ação e na coluna B já aparece automaticamente a data. Fiz conforme seu vídeo, alterando para minhas condições e funcionou perfeitamente. Só que preciso fazer exatamente o mesmo nesta planilha também na coluna F e G, ou seja, quando digito o código da ação na coluna G deve preencher a data automaticamente na coluna F. Vc poderia me ajudar como devo fazer para que na mesma planilha eu consiga fazer o que lhe expliquei? Agradeço se puder me ajudar.
Bom dia, vai precisar replicar o if da variável coluna e todos os códigos dentro deste if, fazendo alteração para referenciar as novas colunas.
@@CanalSGP Boa tarde amigo. Eu tentei fazer e não consegui, pois dá erro. Acredito que é porque eu não tenho muito conhecimento em VBA. Seria possível eu lhe enviar a planilha para vc dar uma olhada? Acho que deve ser algo bem simples para arrumar. Se puder me ajudar agradeço muito, pois só falta isso para terminar minha planilha.
olá, poderia me ajudar? eu estou tentando fazer igual o modelo e num sei onde erro, vou continuar tentaando aqui
Muito bom mesmo. Meu caro, dá para aplicar este código em textbox de userfom? Se eu preencher qqr elemento do userfom, ou abri-lo, determinado textbox é preenchido com a data/hora.
Boa tarde. Uma dúvida, se eu fazer esses ajustes na planilha, nas novas que eu abrir, esses ajuste vai manter ou somente nessa planilha que fiz os ajustes ?
Bom dia, macro vai rodar somente na guia que fez a macro.
Excelente video, obrigado!!! Aproveitando surgiu uma questão, se eu quisesse que, como exemplo que duas coluna tivessem suas informação automatizada, (Coluna A informação "manual imputada" - Coluna B Data "automatizada" e Coluna C Hora "automatizada", deste modo seria possível tudo ao mesmo tempo. Como proceder se sim.
Boa tarde, pode definir a coluna que deseja alterando o número dentro do parênteses:
Planilha1.Cells(i, 2).Value = VBA.Date
Planilha1.Cells(i, 3).Value = vba.Time
@@CanalSGP muito obrigado pelo feedback, vou testar aqui... e continue com este trabalho maravilhoso.
@@giancarlocalherani5854 Obrigado.
Muito bacana o video, o código funcionou perfeitamente! Porem tenho uma dúvida: A situação acima obriga você a escrever e apertar ENTER ou TAB. Na minha situação especifica, a minha coluna "Numero" são dados salvos, que engloba: "Cliente Ativo" / "Cliente Inativo". Se esse cliente inativar ou reativar, teria a data da atualização dessa situação. Dito isso, quando eu seleciono o botão ao lado da celula para escolher entre ativo ou inativo, a data não atualiza, acredito eu que porque o excel fica na mesma celula talvez? Caso eu escreva novamente e aperte para ir para baixo ou para o lado ele vai, porem selecionando os dados não. Poderia me ajudar a solucionar essa questão?
Bo tarde, pode testar outros eventos para o código também, talvez no evento selectionchange, que vai acionar o código sempre que selecionar.
olá vc conseguiu executar igual o exemplo? to tentando mas não sei onde estou errando...
Ótima aula oq eu quero e parecido mas invez de colocar data e hora preciso que coloque o mesmo número que eu digitar são três tipo de sequência e cada sequência tem que ir para determinada coluna teria como fazer isso?
Bom dia, obrigado, pode tentar alterar a linha de código a seguir.
Planilha1.Cells(i, 4).Value = VBA.Time
Para
Planilha1.Cells(i, 4).Value = Planilha1.Cells(i, 2).Value
Boa tarde. Excelente vídeo, sigo em Portugal seu canal, com excelentes aulas de excel..................no entanto segui todas instruções só não está funcionando quando é apagado o valor da célula A5 não apaga a célula C5, mas se apagar valor de A6 ele apaga C5, ou seja pelo que entendo anda uma linha abaixo na coluna A em relação à C. Pode me ajudar a detetar o erro? Obrigado.
Boa tarde, obrigado, confirme se os código foram inseridos no evento correto da guia da planilha.
@@CanalSGP Obrigado pela rápida resposta, os códigos estão corretamente inseridos (excel em PT-PT) Folha1, e o código está a funcionar, no entanto como referi apaga valores sempre uma linha abaixo A5 não apaga nada, A6 apaga C5; A7 apaga C6, e assim consecutivamente.
Bom dia, solicite a planilha de exemplo nos contatos do site do canal, link na descrição do vídeo.
Muiiiiiito bom amigo!
Ajudou muito, to panhando aqui em uma fórmula parecido com essa.
Queria;
( digitando na coluna A aparecesse a data na coluna C e que essa data não mudasse fosse fixa. E se eu não digitar nada na coluna A não aparecesse nada tb na coluna C)
Estou tentando com =hoje() mas, a data muda🤦🏻♂️
Boa noite, somente via código para fazer isso, mas precisaria colocar condições if para definir quando alterar, mas é procedimento semelhante ao da vídeo aula, experimente fazer exemplo igual do vídeo, depois que funcionar tenta adaptar para sua planilha.
para data fixa, vc pode criar a seguinte function:
Function DateTime()
DateTime = Now
End Function
Aí, acredito que seja só vc chamar a função dentro do código
amigo, beleza? e vc conseguiu? não consigo aplicar as mesmas nem nessa do exemplo, do jeito que vc falou...
professor, vc é top, so descobri que era possivel fazer isso com seus videos, ja to seguindo!
Seria possivel bloquear as celulas pra nao ser possivel apagar após a entrada dos dados?
Boa tarde, pode colocar no código para retirar a senha e colocar depois de alterar. Segue link de vídeo sobre senha com vba. ruclips.net/video/63Ocl6v6b6o/видео.html
Fala, meu querido, tudo bem?
Há alguma maneira de fazer com que esta macro reconheça os valores que foram colados?
Fiz a macro, e ao colar os dados, não foram adicionadas a data/hora, apenas quando digitei o valor.
Bom dia, não tentei ainda para inserir data ao colar, mas vou estudar o tema.
Olá caro professor tem uma função de só em clicar na célula sem digitar ela fazer e a função? Ou só escrevendo nela ?
Boa tarde, pode tentar mudar de evento na planilha, verifique para colocar o código no evento change da planilha, que vai ser acionado sempre que selecionar.
Bom dia professor! Primeiramente parabéns pela aula.
Sabe me dizer como chego no desenvolvedor para aplicar essa fórmula no WPS OFFICE (excel do Linux)?
Bom dia, obrigado, no linux não sei dizer, não usei ainda.
Boa noite, tem algum vídeo com CORREÇÃO de horas?
Um exmplo, tem uma coluna com várias horas erradas do que foi passado pela empresa, para eu não corrigir um por um, tem algum vídeo explicando como corrigir tudo automaticamente?
Boa noite, infelizmente neste sentido não tenho vídeo.
Muito bom. Você sabe como utilizo esse evento Change para dispara uma Macro em uma Planilha no On Drive com varias pessoas acesando a planilha. Exemplo: Quando o Evento Change ativar gostia que executasse a macro para todos usuarios que estivesse online na planilha, tem como fazer isso?
Bom dia, obrigado, no ano drive não tentei fazer, mas acredito que no Excel online não tem suporte para o vba
@@CanalSGP então eu utilizo o Excel desktop mesmo porém com atualização automática nas planilhas, quando algum outro usuário adubar um produto já aparece para todos, porém queria fazer um sistema onde caso alguém já esteva com o userform aberto o sistema avisa q já está aberto e se gostaria de derrubar a outra pessoa do userform dela
Boa tarde, o que pode fazer é bloquear abrir a planilha se for no modo somente leitura, com um if no evento open da planilha.
Show de bola. Poderia fazer com zoom na tela. Pois não dar pra ver os comandos
Boa tarde, vídeos mais atualizados tem zoom melhor.
Bom dia! Você tem alguma demonstração desse tipo?
Boa tarde, não entendi exatamente sua dúvida.
Olá, boa tarde professor! Como fazer para aparecer as datas se, por exemplo, copiarmos e colarmos números em massa ao invés de digitar um por um, e da mesma forma como excluir e fazer desaparecer as datas em massa também?
É possível também, a exclusão pelo botão Delete individualmente e em massa?
Boa tarde, não tentei fazer procedimento para copiar e colar ainda, mas acredito que vai ser um pouco complexo.
Olá, boa tarde.
Será que você poderia me ajudar?
Eu estou tentando copiar o valor da coluna P, linha aleatória (ex. P5), mas, desde que a "O5" esteja vazia. Caso seja ""; "".
Se "O5 = ""; copia a "P5" e cola na "O10" por exemplo.
Boa tarde, pode tentar com um if, para verificar as condições, mas não tenho exemplo semelhante em vídeo ainda.
@@CanalSGP Bom dia.
Já tentei com "If", mas não funcionou. Devo ter cometido algum erro. Tentei várias vezes.
Bom dia, segue link de vídeo explicativo sobre utilização de if. ruclips.net/video/O4K9UED1_L8/видео.html
Muito bom mesmo agora eu estava querendo saber como deixar dentro do txtbox o formato de horas para eu digitar a hora e depois eu somar essas horas de maneira automático vc tem algum vídeo mostrando?
Boa tarde, segue exemplo de soma de horas, quem sabe ajude:
ruclips.net/video/dr4Oeyk64nA/видео.html
Boa noite ei consigo aplicar essa mesma condição usando o access como banco de dados?
Boa noite, direto no Access não tentei ainda.
Boa tarde meu querido! Otimo video.
Mas queria saber, como posso fazer pra duplicar esse codigo? Por exemplo ali tu digita na coluna A para sair na coluna C.
Mas eu queria que alem de sair o horario dessa, tambem quando eu digitasse na coluna D saisse o horario na coluna E tambem... Seria possivel?
Boa noite, obrigado, precisa replicar os ifs.
On Error Resume Next
If Planilha1.Cells(i, 4).Value "" Then
If Planilha1.Cells(i, 5).Value = "" Then
If C 3 Then
If i > 5 Then
'COLOCAR HORA
Planilha1.Cells(i, 5).Value = VBA.Time
Planilha1.Cells(i, 5).Value = VBA.Format(Planilha1.Cells(i, 5).Value, "hh:mm:ss")
'COLOCAR DATA
Planilha1.Cells(i, 5).Value = VBA.Date
End If
End If
End If
End If
@@CanalSGP muito obrigado pelo retorno! Funcionou perfeitamente!!!
Abraço! +1 inscrito
Que bom.
Valeu a aula. 👏👏👏
Obrigado.
Boa noite, Tentei aplicar mas esta constando o seguinte erro (Erro de compilação: Somente comentários podem aparecer após End Sub, End Function, ou End Property) Sinalizando a parte Private Sub Worksheet_Change(ByVal Target As Range), Como seria possivel corrigir o erro? Desde já agradeço.
Boa tarde, pode ser erro de digitação do código, pode estar faltando fechar um end sub, end if ou talvez end with.
Uso uma planilha de controle de entrada de veículos e nessa planilha eu quero automatizar hora e data ao digitar a placa do veículo, tem algum vídeo que pode me ajudar nesse sentido?
Bom dia, exatamente nesta necessidade não tenho exemplo.
Olá.
Uma dúvida.
Já criei a planilha e gostaria de aplicar no meu trabalho, porém as formulas utilizadas não funcionam no SharePoint. Existe uma forma de usar esse arquivo de forma compartilhada sem perder essas alterações?
Boa tarde, que eu saiba não tem como, o vba funciona apenas no Excel desktop.
Olá bom dia amigo , eu segui os passos aqui mas não consegui automatiza minha planilha para por a hora em uma linha e a data em outra, seria possível fazer as duas automatizada de forma que se eu digitar em uma coluna C a coluna B recebe a hora e a coluna A recebe a data?
Bom dia, é possível, mas vai precisar adequar a lógica, melhor fazer um exemplo igual ao da aula primeiro, depois tenta adaptar.
Bom dia, parabéns pelo Canal. Me inscrevi e vou adquirir suas planilhas. Deixe eu lhe perguntar. Caso que faça este comando no Excel, ao migrar para o Google Sheet, pois preciso compartilhar esta planilha com minha equipe... sabe se eu perco a função?
Boa noite, perde a função, porque os códigos VBA não são suportados pelo Google Planilhas. Mas tem macros em script no Google Planilhas, segue link de vídeo aula com o mesmo procedimento com javascript: ruclips.net/video/SX3q_waJYD4/видео.html
Consigo colocar data automaticamente na cédula, quando a minha planilha receber(transferência) automaticamente de dados de outra planilha ?
Boa noite, este procedimento funciona apenas para a digitação, copiar e colar não funciona.
Boa noite!
Muito obrigado pelo vídeo nota 10!
Pode me ajudar toda vez que eu abro a planilha preciso digitar o código eu gostaria de abrir a planilha e começar a digitar e aparecer a data automaticamente tipo um controle de entrada e saída quero registrar a saída com data para depois somar a quantidade de saída.
Obrigado mais uma vez pelo apoio
Bom dia, obrigado, não entendi exatamente sua dúvida, mas se o seu código está sendo apagado, é porque não salvou a planilha habilitada para macro. Depois de colocar seu código na planilha, vai arquivo, Salva como e na janela de salvar, em tipo, altere para segunda opção, pasta de trabalho habilitada para macro.
Olá! Será que consigo fazer isso no Calc do LibreOffice? Eu não sei se o Calc aceita VBA.
Bom dia, infelizmente não tenho conhecimento sobre LibreOffice.
Excelente vídeo...
Seria possível fazer esse procedimento?
Toda vez que eu atualizasse o valor na célula A1, o valor antigo fosse "empurrado pra celular A2", e assim consequentemente?
Exemplo:
Hoje
A1 = 10...
Amanhã vou atualizar...
A1= 32... A2=10
Depois de amanhã vou atualizar novamente...
A1 = 23... A2 = 32
....
Boa tarde, acredito ser possível, mas até o momento não tenho procedimento neste sentido, vou estudar se é possível fazer algo. Se obtiver sucesso posto no canal.
Adorei este código limpo, só uma uma dúvida: eu sei que quando eu apago por carácter na coluna A, eu apago na C, mas quando eu apago direto na A não funciona na C diretamente.
Bom dia, vou verificar essa necessidade.
professor, If i > 5 Then
esse item se refere ao cabeçalho ?
Bom dia, se refere se a linha em questão for maior que a linha 5 da planilha.
Boa tarde.
Uma duvida... quero que saia tanto a data como hora na mesma célula.
Coloquei desta forma aqui, mas a data e o mês estão saindo invertidos. Pode me ajudar?
Planilha1.Cells(i, 4).Value = Date & Space(3) & Time
Boa tarde, precisa definir que se trata de data, por exemplo:
Dim Data As Date
Data = vba.Date
Planilha1.Cells(i, 4).Value = Data & Space(3) & Time
@@CanalSGP Em qual parte eu coloco esta informação? Me ajudaria muito se resolvesse este problema.
Muito obrigado!
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
Application.ScreenUpdating = False
Dim i As Integer
Dim C As String
C = ActiveCell.Column
If C = 1 Then
i = ActiveCell.Row - 1
Else
i = ActiveCell.Row
End If
On Error Resume Next
If Planilha1.Cells(i, 1).Value "" Then
If Planilha1.Cells(i, 3).Value = "" Then
If C 3 Then
If i 4 Then
Planilha1.Cells(i, 3).Value = Date & Space(3) & Time
End If
End If
End If
End If
If C = 1 Then
If Planilha1.Cells(i, 1).Value = "" Then
Planilha1.Cells(i, 3).Value = ""
End If
End If
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
Application.ScreenUpdating = False
Dim i As Integer
Dim C As String
C = ActiveCell.Column
If C = 1 Then
i = ActiveCell.Row - 1
Else
i = ActiveCell.Row
End If
On Error Resume Next
If Planilha1.Cells(i, 1).Value "" Then
If Planilha1.Cells(i, 3).Value = "" Then
If C 3 Then
If i 4 Then
Dim Data as Date
Data = vba.Date
Planilha1.Cells(i, 3).Value = Data & Space(3) & Time
End If
End If
End If
End If
If C = 1 Then
If Planilha1.Cells(i, 1).Value = "" Then
Planilha1.Cells(i, 3).Value = ""
End If
End If
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub
Bom dia eu quero fazer essa macro mais em colunas diferente da coluna A pra H o que eu preciso mudar agradeço se responder!
Bom dia, onde tem 3 precisa colocar 8 para referenciar a coluna H.
Muito bom, Top
Fiz e deu muito certo.
Só uma dúvida:
Como faço para usar esse mesmo código duas vezes na mesma planilha?
Ex. Você usou a coluna "A" e a coluna "C". Como usar também nas Colunas, ex., "E" e "G"?
Já usei, e deu muito certo, nas colunas "B" e "G"; gostaria de usar, também, nas colunas "J" e "M".
Como proceder?
Desde de já agradeço.
Gostaria de agradecer. Consegui.
Foi só copiar a partir de "Dim G As String" e mudar as colunas.
Bom dia, que bom, sucesso em seus estudos.
Muito toooper, show
Obrigado por compartilhar!
Uma dúvida, nessa mesma estrutura, é possível a célula ser bloqueada 10 segundos após a digitação?
Olá, obrigado, não vi nada parecido ainda, mas vou estudar, se obtiver sucesso, gravo vídeo explicativo.
Caraio baita estudo
Olá! boa tarde, professor !
Acompanho o seu canal já há algum tempo, gosto muito dos seus vídeos.
Trabalho com controle de estacionamento. E com suas dicas automatizei minha planilha de trabalho, ficou muito boa.
Gostaria de mais uma ajuda sua, se possível. Na coluna "K", da minha planilha, é digitado a placa do veículo e são preenchidas automaticamente as colunas "L", "M" e "N". As colunas "L" e "M" são reservadas para a identificação do motorista. Na coluna "N" é o horário de entrada do veículo. Na coluna "O", que não é automatizada, é o horário de saída. A cada novo dia de trabalho, através de um botão de comando, é adicionada uma nova planilha. Na primeira linha desta, nas colunas "K", "L", "M", "N" e "O", é colocado a data e o dia da semana (sendo que as colunas "K", "L" e "N" ficam vazias, na coluna "M" é a data e na "O" é o dia da semana). Ela, a primeira linha, tem apenas o contorno sem divisões entre as colunas, parecendo mescladas ainda que não sejam.nas linhas subsequentes é o registro dos veículos como descrito acima. O meu pedido de ajuda é o seguinte: às vezes determinados veículos entram e não saem no mesmo dia, ficando em aberto a saída (coluna "O") e três dias depois, mais ou menos, quando ele sai, digita-se a placa na coluna "K" e na coluna "N"é preenchido automaticamente o horário de entrada, mas ele não está entrando e sim saindo. O que eu gostaria de fazer? Gostaria, que ao digitar uma placa (na célula K20, por exemplo), o Excel verificasse se no último registro desta placa, está o horário de entrada (coluna "N") e o de saída (coluna "O"). Se verdadeiro, então, na célula "N20" coloque o horário de entrada do dia em que está sendo digitado, como já faz. Se falso, ou seja, se a saída (coluna "O") estiver em aberto, então, verifique qual é a data desse último registro copie e cole na célula "N20" em vez de colocar o horário de entrada. Digamos que o último registro esteja na linha "10", então, na célula "O10", que deveria ser colocado o horário de saída, mas que está em aberto porque o veículo pernoitou, coloque-se a data do dia do novo registro. Que essa Makro seja ativada condicionada a digitação da placa do veículo na coluna "K".
Boa tarde, obrigado, infelizmente até o momento não tenho procedimento neste sentido, vou estudar se é possível fazer algo, mas é bem complexo o que deseja.
Boa tarde, a minha nao esta funcionando, não aparece nenhuma mensagem de erro mas também nao acontece nada quando eu digito, assisti o video algumas vezes não consegui identificar onde errei, a planilha não esta bloqueada, funciona normal, é como se o código não rodasse (esta em Worksheet e como change)
Boa tarde, teste colocar um ponto de interrupção no código e ir executando linha por linha de código com a tecla F8.
seria possível colocar variáveis para usuário que tenha um pouco de conhecimento só alterar as colunas?, tipo para usar o mesmo código para outras planilhas
Bom dia, talvez retirar a proteção apenas das colunas desejada, mas não testei se o código vai rodar.
@@CanalSGP Não roda se incluir proteção de planilha.
Boa tarde, acredito que não.
Boa tarde
Na parte:
If A = 2 Then
i = ActiveCell.Row - 1
Else
i = ActiveCell.Row
End If
a data está aparecendo na linha anterior por causa do -1
\uso uma lista de escolha e gostaria de quando escolhe um item da lista a data aparecesse na mesma linha e não na linha anterior.
Poderia me ajudar com exemplo???
Obrigado
Boa noite, teste retirar o -1 para ver.
CAra eu estou tendo um problemão, talvez vc possa me ajudar.
As minhas informações vem de um bloco de notas e por isso o código vba não funciona, como vc fazer?
Bom dia, talvez trabalhar com um loop para colocar a data posteriormente. Sobre loop tenho outra aula, mas vai precisar adaptar para sua necessidade, segue link.ruclips.net/video/CaBMdrIWFp4/видео.html
Oiii no caso eu quero fazer dois botões para colocar 2 horários em diferentes lugar, como eu poderia prosseguir??
Bom dia, para colocar a hora em célula com botão, pode utilizar o código a seguir:
Por exemplo:
Planilha1.Range("A1").Value = vba.time
Muito boa a explicação, porém eu gostaria de saber mais uma coisa, tem como eu limitar essa funcionalidade até um certo número de linha.
Exemplo:
A funcionalidade se aplica da linha 5 até a linha 10 da coluna C
Bom dia, obrigado, pode alterar a condição if a seguir:
If i > 5 and i < 10 Then
Fiz a macro e funcionou beleza porém, quando protejo as células alteradas o VBA não altera mais essas células. Tem como liberar isso?
Boa tarde, talvez se retirar a senha via código no inicio da macro e colocar novamente no final.
@@CanalSGP deixei sem senha para evitar qualquer problema...deve ter alguma restrição no excel ... tô procurando mas, ainda não achei.
ok.
Olá! Consegui adicionar, mas o calendário me mostra tudo a zero e não mostra o dia. Se clico passa corretamente na tabela, mas não consigo ver o número nos dois cliques.
Bom dia, teste aumentar o tamanho das label do formulário.
e se toda vez que eu adicionar essa linha, eu quero que ela já venha com a primeira coluna "data" com a data do dia preenchida, como faz?
Bom dia, a macro precisa de uma célula para disparar, porque se colocar por exemplo no evento change da planilha, toda vez que selecionar a planilha a macro vai ser disparada.
Por favor me ajude! Tenho um ficheiro excel com data e horas. O que eu quero fazer é automatizar de tal maneira que sempre que eu coloque como hora de entrada ou saida, meia noite em diante, a data some automaticamente um dia, como se de um relogio se tratasse. Nao estou conseguindo fazer isso.
Bom dia, não fiz código assim ainda, o mais próximo disso é a soma de dias a uma data e gerar nova data. ruclips.net/video/S3sfj2WTBD4/видео.html
@@CanalSGP Muito obrigado pela rapida resposta e ajuda ! Bem haja amigo
Tem como colocar a data em uma determinada coluna quando copio os dados de uma planilha com varias coluna e colo em outra planilha , quero que na planilha de destino em determinada coluna preencha com a data atual da forma que está este vba não consigo com que a data funcione em todas as linhas que foram coladas somente na primeira linha traz a data atual.
Bom dia, experimente colocar os códigos dentro de um loop, parecido ao da vídeo aula no link a seguir:
ruclips.net/video/NBCP0LDxLf8/видео.html
Funciona no aplicativo do excel para celular?
Bom dia, não testei, mas acredito que não.
Muito legal! Vou testar!
Como devo fazer para colocar critérios de resposta na coluna 1. Exemplo: se for status "finalizado", registrar a hora ou a data?
Bom dia, obrigado, experimente colocar uma condição a mais antes de registrar a data.
If Planilha1.Cells(i, 1).Value = "finalizado" Then
Planilha1.Cells(i, 3).Value = VBA.Date
End If
@@CanalSGP Vou testar! Muito obrigada!
De nada.
Da pra fazer pelo celular?
Boa tarde, não é possível.
Olá. Gostaria muito de fazer essa planilha mais no OpenOffice da empresa mais esse código vba não funciona. Já tentei de tudo. Pode né ajudar por favor.
Tipo mudar esse código de vba abaixo pra OpenOffice.
Private Sub Worksheet_Change(ByVal Alvo As Range) Dim limite_maximo As Integer limite_maximo = 1000 ' altere aqui para limitar a última linha If Alvo.Cells.Count > 1 Or IsEmpty(Alvo) Then Exit Sub ' faz nada se mais de uma célula modificada ou se deu delete If Alvo.Column = 1 And Alvo.Row
Bom dia, infelizmente não tenho ideia de como resolver essa questão.
E se eu precisar colocar na coluna C linha 18 a informação e a data eu preciso que ela apareça na coluna G linha 7 teria como?
Boa tarde, não entendi exatamente o que deseja fazer.
Preciso de ajuda não consigo resolver isso a dias
Trabalho viajando e sempre fazemos uma manutenção
Tenho uma coluna com a Data e hora
Fiz uma coluna ao lado pra marcar que toda vez que eu colocar o horário atual automaticamente nessa coluna apareça uma pausa que é equivalente a 20 minutos, sendo que vou fazer a soma de todas as paradas pra descontar no fim de viagem
Como eu consigo a resolver isso?
Isso é possível
Deixa seu WhatsApp pra mim tentar resolver… so falta isso pra concluir a minha planilha
Bom dia, talvez fazer uma célula menos a outra de forma normal no Excel. Sobre somar horas, se for via código vai ser um pouco complexo, mas somando diretamente na planilha é soma normal.
@@CanalSGP pode passar seu WhatsApp?
Pra você me da uma luz
Usuário recente de um excel
É possível fazer no Google Sheets?
Bom dia, é possível, segue link de vídeo aula neste sentido. ruclips.net/video/SXiQJEKSY60/видео.html
Fiz tudo como no vídeo mas com referencias coluna 8 para as datas na coluna 7 a partir da linha 5 e não funcionau e pediu depuração na linha: 'If .Planilhal.Cells(i, 8).Value "" Then
Bom dia, provavelmente tem erro na escrita da linha de código:
'If .Planilhal.Cells(i, 8).Value ""
If Planilha1.Cells(i, 8).Value ""
@@CanalSGP Obrigado
@@priscilasantossantana7546 De nada.
Toda vez que eu abrir a planilha tenho que ativar essa opção? Ou fica automatico
Boa tarde, se a planilha está configurada para aceitar a execução de macros, vai ficar automático.
@@CanalSGP e se caso e precisar abrir outra planilha que não precise dessa opção, desabilito a macro?
Não vai ter a macro em outra planilha.
podemos fzer esse comndo em mais de duas colunas na mesma celula?
Bom dia, se refere a alterar mais colunas de acordo com a linha, sim é possível.
Não está funcionando se a célula tiver validação de dados, mesmo que a mesma esteja "Vazia", tem alguma forma de resolver a questão?
Bom dia, vou estudar essa falha.
@@CanalSGP Consegui resolver a questão da validação de dados, porém quando eu protejo a planilha para que outra pessoa não selecione as células onde irá aparecer a DATA e Hora, ela simplesmente deixa de funcionar... Funciona somente com a célula desbloqueada kkkk Tem como resolver esse problema?
Bom dia, pode retirar a senha ao iniciar o código e colocar novamente no final do procedimento. ruclips.net/video/eQX9rpWNreg/видео.html
O produto de uma célula é um número variável. Como copiar esse número que é variável para diferentes células, toda vez que eu quiser inserir ele em nova célula já será um número que variou
Boa tarde, vou estudar essa necessidade, se é possível fazer algo.
CANAL SGP obrigado
Precisava colocar em outra celula na mesma linha para aparecer na celula ao lado - No exemplo ai é da coluna a para c. queria que fosse da a para c e da f para g por exemplo.. Nao estou conseguindo
Obrigado
Boa tarde, mas vai mudar as referência ao número das colunas, se for trabalhar com duas colunas.
If Coluna = 3 or Coluna = 4 then
Eu queria que inserisse automaticamente a data e hora na célula ao lado, quando o a condição da célula anterior *[=SE(ÉERROS(D2);"";"DESMONTADO")]* fosse igual a falso *("Desmontado")*
Já tentei de várias formas e não consigo.
Bom dia, com fórmula não sei se vai dar certo esta macro.
Tenho um desafio. Eu tenho uma planilha que tem a hora de entrada e de saida de pessoas (por ex)quando ela chega eu consigo o preenchimento automatico, porem pra sair não. isso no Excel on line.
Bom dia, no Excel online não fiz código ainda.
No meu caso não funcionou de jeito nenhum, só que no caso quero digitar na coluna 4 e a data aparecer na coluna 1 fiz todo. Passo a passo invertendo os números das colunas, no final de tudo simplesmente não acontece nada. Habilitei tudo mas não funciona. HELLP
Bom dia, confirme se está no evento correto da planilha, talvez seja isso.
Muito boa explicação !! Tenho uma dúvida, que não achei em nenhum lugar a resposta.
Eu consigo fazer mais de uma VBA na mesma a aba da planilha ? No meu caso essa macro, utilizei para me informar o horário inicial de um processo(assim que digito algo na coluna 1, automaticamente me vem a hora na coluna 3. Exemplo inicio as 17h), preciso agora que ela me de o hora final final desse processo (assim que eu digitar algo na coluna 4, vem o horário automático na coluna 5), exemplo 19h. Depois eu faço uma subtração para saber o tempo entre inicio e fim. Me ajudaria muito essa informação, obrigada
Boa noite, obrigado, vou estudar essa necessidade.
@@CanalSGP Muito Obrigada, estou no aguardo.
@@CanalSGP OLA, você conseguiu estudar esta possibilidade?
@@fernandoramalho2786 Boa tarde, ainda não foi possível desenvolver lógica para para fazer o cálculo entre as horas.
não consigo acionar a opção de desenvolvedor no meu excel, oque poderia estar ocasionando isso? tentei varias formas mas nada faz acionar esta opção
Boa tarde, talvez seja uma versão que não está liberado esta opção.
Consegui aqui thanks 🙏
Que bom.
Fiz o procedimento acima mas não funciona. Nem erro dá! O que pode ser? Pode me orientar?
Bom dia, talvez seja referência as colunas. Deixe seu e-mail que envio a planilha da aula.
Boa Tarde
Parabens, seria possivel a cada alteração na coluna A a fata ser acrescida nas colunas D E F G.... e assim sucessivamente montando um historico?
Boa tarde, é possível, mas precisar ser ajustado com loop de localização de célula vazia.
Do
If Not (IsEmpty(ActiveCell)) Then
ActiveCell.Offset(0, 1).Select
End If
Loop Until IsEmpty(ActiveCell) = True
Professor, boa tarde. Como eu coloco a data e hora?
Boa noite, deseja colocar data e hora na mesma célula?
@@CanalSGP Boa tarde professor, estou com a mesma dúvida. Gostaria que aparecesse automaticamente a data e a hora na mesma célula, como proceder?
Boa tarde, pode junta as duas informações. Data & " " & Hora
Se eu quisesse colocar mais uma coluna, coluna de horas e coluna de data, como ficaria?
Boa tarde, pode fazer da seguinte forma por exemplo:
Planilha1.Cells(i, 2).Value = VBA.Date
Planilha1.Cells(i, 3).Value = vba.Time
Excelente
Obrigado
Consigo fazer com que a data fosse imputada na coluna 1 em vez da 3
Boa noite, sim, basta alterar o número da coluna nos códigos.
O que fazer quando a planilha ficar dando problemas para salvar após colocar esse código?
Boa tarde, qual problema.
@@CanalSGP Problemas com salvamento
Qual mensagem retorna.
@@CanalSGP nenhuma . Na hora da coleta de dados tudo ok. Daí eu salvo o arquivo. E simplesmente some tudo que fiz .
Bom dia, se está perdendo a macro, precisa salvar a planilha habilitada para macro do Excel.
Olá pessoal, sei que já tem algum tempo. Por favor se alguém puder me ajudar. Fiz uma planilha do exemplo do Professor, mas não consigo identificar o erro. Por favor se alguém puder me ajudar, muito grato
Bom dia, retorna alguma mensagem de erro?
Boa tarde! eu corrigir mas nenhum efeito:
coluna h p/data automática e coluna h p/preencher.
Segue dados:
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
Application.ScreenUpdating = False
Dim i As Integer
Dim C As String
C = ActiveCell.Column
If C = 8 Then
i = Active.cell.Row - 1
Else
i = Active.cell.Row
End If
On Error Resume Next
If Plan1.Cells(i, 8).Value "" Then
If Plan1.Cells(i, 7).Value "" Then
If C 7 Then
If i 5 Then
'OUT2020.Cells(i, 7).Value = Time
'OUT2020.Cells(i, 7).Value = Format(OUT2020.Cells(i, 3).Value, "hh:mm:ss")
Plan1.Cells(i, 7).Value = Date
End If
End If
End If
End If
If C = 8 Then
If Plan1.Cells(i, 8).Value = "" Then
Plan1.Cells(i, 7).Value = ""
End If
End If
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub
Bom dia, deixe seu e-mail que envio a planilha para que possa comparar.
@@CanalSGP joevaldo1@hotmail.com
outra coisa: quero saber, se a coluna que eu quero a data automática vem antes da celula não vazia. esse codigo seria o correto?
desde já agradeço!
Bom dia, código para colocar data ou hora, precisa estar dentro das condições if que estabelecer.
tem como disponibilizar a planilha com o código?
Bom dia, deixe seu e-mail nos comentários.
huengers@gmail.com
tambem quero: joevaldo1@hotmail.com pois ainda não chegou!
@@CanalSGP danilo.o.santos@hotmail.com
eu não consegui ai queria comparar pra ver onde eu to errando.
Boa noite, planilha da vídeo aula enviada.
Boa tarde
Quando faço filtro não funciona, alguém sabe me dizer como ajusto?
Boa tarde, esta lógica funciona somente em uma linha por vez, no momento da edição.
Dá pra fazer o mesmo com a data?
Boa tarde, não entendi sua dúvida, neste vídeo abordamos também a data.
E
nao entendo nada de logica de programação, se eu quiser q em uma célula aparecesse a data e a outra a ora como eu faria?
Private Sub CommandButton1_Click()
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
Application.ScreenUpdating = False
Dim i As Integer
Dim c As String
c = ActiveCell.Column
If c = 1 Then
c = ActiveCell.Column
If c = 1 Then
i = ActiveCell.Row - 1
Else
i = ActiveCell.Row
End If
On Error Resume Next
If Planilha1.Cells(i, 1).Value "" Then
If Planilha1.Cells(i, 3).Value = "" Then
If c 3 Then
If i 5 Then
'Planilha1.Cells(i, 3).Value = Time
'Planilha1.Cells(i, 3).Value = Format(Planilha1.Cells(i, 3).Value, "hh,mm,ss")
Planilha1.Cells(i, 3).Value = Date
End If
End If
End If
End If
End If
If c = 1 Then
If Planilha1.Cells(i, 1).Value = "" Then
Planilha1.Cells(i, 3).Value = ""
End If
End If
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub
Boa noite, altere a coluna, onde tem o 3.
@@CanalSGP ^^
Como fazer isso no planilhas google?
Boa tarde, segue link de vídeo sobre planilhas Google. ruclips.net/video/SX3q_waJYD4/видео.html
fiz tudo mas não deu certo, não aparece nenhuma mensagem de erro
Boa noite, solicite a planilha de exemplo nos contatos do site do canal, link na descrição do vídeo.
o meu ta dando erro no primeiro evento ...
Private Sub CommandButton1_Click()
Aplication.EnableEvents = True
Bom dia, está faltando um p no Aplication.EnableEvents = True
Correto é: Application.EnableEvents = True
a valeu obrigado. feliz natal agora deu certo falta de atenção minha
@@mlsgbbrasil9006De nada.
boa tarde eu foz todo os tetes nao funciona isso ai nao boa tarde
Boa tarde, alguma mensagem de erro?
O script não funcionou no meu excel 2013.
Bom dia, verifique se colocou os códigos no evento correto da planilha.
Muito BOmmmmmmmmmmmmmmmmmmmmmmmmm
Obrigado.
@@CanalSGP eu to precisando de outo bem parecido tem como eu fazer tipo quando clicar no botão tanto o botão o mesmo botão baixa-se junto com uma determinada quantidade de linhas? clicando no botão e não na célula
Bom dia, neste sentido não tenho procedimento ainda.
Top...
Obrigado.
E copiando e colando, pois só está ativando a primeira célula
Bom dia, não entendi exatamente sua dúvida
@@CanalSGP Exemplo: se eu selecionar os números 1,2,3,4 e copia e colar, só a primeira celula selecionada irá trazer a data, o restante não. Ex2. Se eu pegar nomes de outra planilha né colar, só vai aparecer a data do primeiro nome
Boa tarde, sim, somente a primeira.