Muito obrigado! Simples e eficiente, o melhor código que consegui para essa função. Pois as outras eram um pouco mais complexas e acabava dando estouro quando passava de 30 mil linhas, e no meu trabalho 30 mil linhas a gente usa por mês. E o seu código caiu com uma luva. Parabéns👏👏👏👏👏
fuçando o excel e para evitar o vba, novamente achei isto: =se(b2"";se(a2="";agora();a2);"") nao precisa da condicional. esta formula pode ser copiada para a celula b2. ao informar algo em A2, veremos a magica...
@@martinsger Eu tambem consegui fazer dessa forma assistindo a um video de outro youtuber a forma era um pouco diferente mas a ideia é a mesma. Deu super certo tambem, inclusive optei por usar essa técnica. Muito obrigado pela contribuição.
Olá *_Adriano Pataro..._* Desde que comecei a ter uma noção de programação vba, foi amor a primeira vista...kkkk desde então já entro nas planilhas acionando *Alt+f11* , mas sensacional mesmo, é ver você ministrando aulas de *vba* ... sua didática foi perfeita...incrementado gradativamente passando de forma natural e tranquila o desenvolvimento do raciocínio e das linhas de códigos... Há se do professor fosse assim... *Parabéns* e espero ver mais conteúdos de *VBA* no seu canal... Grato, *Marcelo Adriano*
Olá Marcelo Adriano. Que bom, fico feliz em saber que gostou da aula. Este amor pelo VBA eu também tenho rs. Em breve teremos mais conteúdos de VBA. Abraço! #apcursos
Show de bola, muito boa essa simplificação. Na planilha eu coloquei ambos(dia da semana e data) em células diferentes: Quando preencho algum *valor* na *coluna 5* (E) aparece o *dia da semana* na *coluna B* e a *data* na *coluna C* . No VBA Ficou assim: Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 5 Then Range("C" & Target.Row).Value = Date End If If Target.Column = 5 Then Range("B" & Target.Row).Value = Format(Date, "ddd") End If End Sub Uma coisa que ainda falta é deixar a primeira letra do *dia da semana* maiúscula automaticamente, achei um suplemento que faz isso só que tem de ficar alterando *manualmente* (selecionando as células que já foram inseridas e apertando um *botão) ;)
Bom dia ajudou-me imenso. Explicação fácil e esclarecedora. Obrigado pela partilha. No entanto eu tenho uma questão caso me possa ajudar. Como posso replicar esta ação em outras colunas na mesma folha? Grata
Muito bom o conteúdo, parabéns mesmo!!!! Eu lutei muito testando várias dicas que garimpei na net mas nenhuma foi tão fácil de criar e entender quanto essa. Já virei fã do canal. Aproveito para perguntar: para cada registro de data, eu também preciso da marcação do horário, porém com os centésimos, e aí ao usar simplesmente o TIME, eu não consigo. Teria alguma forma de fazê-lo???
Olá Elton. Obrigado pelo comentário, fico feliz que tenha gostado do conteúdo. Sobre os centésimos, você pode usar uma formatação de número: "hh:mm:ss.000" (no VBA é ponto e no Excel é vírgula). Abraço!
Gostei muito Adriano, porém queria aperfeiçoar. Tem como inserir isso dentro de um nome de função para usar a função SE ? Ou se apagar algo da coluna 3 (produto) apagar a data automaticamenta também ?
Parabens professor por mais uma de suas belas explancoes com vba. Mestre, e como seria pra tambem registrar a hora numa outra coluna ao lado em que foi inserido os dados, executar um procv trazendo dados de outra aba e tambem transferir pra uma outra aba diferente todos dos dados ?
Olá Onias, obrigado pelo comentário. Em relação a hora, você pode usar a Função AGORA: Range("B" & Target.Row).Value = Format( *Now* , "ddd *hh:mm* ") Já para transferir dados entre planilhas, explicarei em outra aula. Abraço! #apcursos
Caro Adriano, meus parabéns e obrigado pelo vídeo aula. Qual é o código que utilizo para enviar todas as alterações (Data) que foram feita na referida célula numa outra planilha ?
Primeiramente meus parabéns, estou a horas procurando por isso e deu certo, porem agora tenho outra questão, a minha coluna onde a data aparece fica fechada para não ser alterada manualmente , sendo assim se eu removo algo na coluna que da o comando para aparecer a data, a mesma não some também, teria que adicionar outro código ?!
Sim é possível Bruno. Altere a ordem do código, desta maneira: If Target.Column = 3 Then Range("B" & Target.Row).Value = Format(Date, "ddd") If Range("C" & Target.Row).Value = "" Then Range("B" & Target.Row).Value = "" End If End If Abraço!
Boa noite preciso da sua ajuda, Me propus a fazer uma formula na empresa e não estou conseguindo. Ao digitar o nome do motorista, o Excel coloca a data e horas que ele chegou. Obs: Quando chega o próximo eles muda todos, e atrapalha a programação. Att. Manoel
Adriano. Tenho uma planilha que atualizo todos os dias com várias linhas: extraio do sistema e colo tudo de uma vez, ou seja, não preencho célula por célula. Testei a macro e fazendo desta forma não funciona. Como conseguiria adaptar para que a data apareça sempre que eu inserir informação na coluna do "Range", independente de ser digitado ou colado?
Olá Adriano! Não consegui passar da primeira etapa. rsrs ..... Você seleciona "worksheet" em 1:58" no vídeo. Essa opção não aparece pra mim. Em 01:50" no vídeo, sua tela simplesmente muda. Mas não tá explicado como acontece. rsrs Se puder ajudar, agradeço.
@@AdrianoPataro Excelente! Deu certo. E o código funcionou. Obrigado. Agora, gostaria de perguntar mais uma coisa. É possível fixar a data de três células diferentes a partir do valor selecionado em uma determinada célula? Por exemplo: Na minha planilha, nas células da coluna E, é possível selecionar três opções: "Solicitação Aberta", "Solicitação em andamento" e "Solicitação concluída". A partir de cada um desses valores, conforme seleção, eu gostaria que fossem automaticamente as datas nas células das colunas F, G e H, que eu chamei respectivamente de "Data de abertura da solicitação", "Data de início" e "Data de conclusão". Entendeu qual é o meu objetivo nessa planilha? Quero controlar as datas que as demandas são abertas, que os atendimentos são iniciados e as datas que são concluídas. Se puder me ajudar, agradeço muito. De qualquer forma, só a dica desse vídeo já valeu para mim! Obrigado e abraços!
Cara, estou com uma dúvida, sou bem leigo em VBA e Excel. Mas estou com uma planilha aqui, que utiliza várias "Caixa de Seleção", e eu formatei uma célula com formatação condicional, pra quando a caixa de seleção estiver desmarcada, o texto escreve "Pendente" e a célula fica com fundo vermelho, e quando a caixa de seleção estiver marcada, o texto altera pra "Efetuado" e o fundo fica em verde. Eu queria adequar/vincular minha caixa de seleção ao processo que você ensina, quando eu MARCAR/DESMARCAR a caixa de seleção, ele efetue o comando VBA "Worksheet_Change" que você ensinou. O campo DATA, está em branco, pois a caixa de seleção está desmarcada, quando eu marcar a caixa de seleção, eu gostaria que o VBA preenchesse a data, conforme você ensina, Será que tem como fazer isso ?? Desde já agradeço.
Olá TunebaGamer . Você pode associar a macro à sua caixa de seleção. Neste caso a macro não é executada pelo evento Worksheet_Change e sim pela marcação da caixa de seleção. Se for o mesmo conceito de inserir a data na célula, pode aproveitar o código, mas será necessário acrescentar uma condição para verificar se a caixa de seleção foi marcada.
@@AdrianoPataro ah entendi achei que usava o worksheet change... Vou pesquisar aqui, pra poder validar se a caixa de seleção está com Verdadeiro ou Falso. Valeuu
Não funciona com a função SE mesmo ou estou fazendo algo errado? No seu exemplo aí a minha coluna C tem função SE e não funciona... se eu digito manualmente ele funciona.
Muito bom, me ajudou bastante!! Só estou com um probleminha.. o comando do VBA não funciona quando trabalho com a planilha protegida por senha, ela da um erro. Poderia me ajudar?
Olá Matheus. Se a célula estiver protegida, não vai funcionar, pois o evento Change refere-se à alterações na planilha. Talvez você tenha que desproteger a planilha primeiro, executar os comandos do evento e em seguida proteger a planilha novamente. Abraço!
Vc tem alguma aula que transforme um arquivo (projeto) do Excel .xlsm em executável .exe para poder usar o arquivo sem a necessidade de ter o Excel instalado?
Ótimo Vídeo, ajuda preciosa numa tarefa que não conseguia dar conta. Muito obrigado @Adriano Pataro nota 10.
Você é o cara!!
Obrigado Luiz. Abraço!
Muito obrigado!
Simples e eficiente, o melhor código que consegui para essa função. Pois as outras eram um pouco mais complexas e acabava dando estouro quando passava de 30 mil linhas, e no meu trabalho 30 mil linhas a gente usa por mês. E o seu código caiu com uma luva.
Parabéns👏👏👏👏👏
Que bom que ajudou Júlio. Abraço!
Muito legal, nunca precisei pausar a função HOJE(), ai hoje precisei e aqui achei a resposta. Ótimo vídeo.
Que bom que ajudou TunebaGamer . Abraço!
Ótimo conteúdo, exatamente o que eu precisava, só precisei adaptar à minha necessidade e ficou top!!!!
fuçando o excel e para evitar o vba, novamente achei isto: =se(b2"";se(a2="";agora();a2);"") nao precisa da condicional. esta formula pode ser copiada para a celula b2. ao informar algo em A2, veremos a magica...
@@martinsger Eu tambem consegui fazer dessa forma assistindo a um video de outro youtuber a forma era um pouco diferente mas a ideia é a mesma. Deu super certo tambem, inclusive optei por usar essa técnica. Muito obrigado pela contribuição.
Muuuuuuuuuuuito bom! Parabéns!
Que bom que gostou Alessandra. Abraço!
Excelente, mesmo o que eu procurava!!! Bom trabalho !!!
Excelente!
Procurava essa resposta a tempos
Achei várias vídeos complicando pra caramba
Vc resumiu de uma forma que tornou fácil!
Que bom que ajudou Felipe. Abraço!
Excelente tutorial!! Obrigado!
Obrigado Luis. Abraço!
Olá *_Adriano Pataro..._*
Desde que comecei a ter uma noção de programação vba, foi amor a primeira vista...kkkk desde então já entro nas planilhas acionando *Alt+f11* , mas sensacional mesmo, é ver você ministrando aulas de *vba* ... sua didática foi perfeita...incrementado gradativamente passando de forma natural e tranquila o desenvolvimento do raciocínio e das linhas de códigos...
Há se do professor fosse assim...
*Parabéns* e espero ver mais conteúdos de *VBA* no seu canal...
Grato,
*Marcelo Adriano*
Olá Marcelo Adriano. Que bom, fico feliz em saber que gostou da aula. Este amor pelo VBA eu também tenho rs.
Em breve teremos mais conteúdos de VBA.
Abraço! #apcursos
Muito bom o video, era o que eu precisava. Parabéns.
Olá Giovani, obrigado pelo comentário. Que bom que gostou da aula. Abraço!
Ótima aula. Que Deus continue te abençoando. Grande abraço.
Olá Slavin Kelevra, obrigado pelo comentário. Abraço! #apcursos
Show de bola, muito boa essa simplificação.
Na planilha eu coloquei ambos(dia da semana e data) em células diferentes: Quando preencho algum *valor* na *coluna 5* (E) aparece o *dia da semana* na *coluna B* e a *data* na *coluna C* .
No VBA Ficou assim:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 5 Then
Range("C" & Target.Row).Value = Date
End If
If Target.Column = 5 Then
Range("B" & Target.Row).Value = Format(Date, "ddd")
End If
End Sub
Uma coisa que ainda falta é deixar a primeira letra do *dia da semana* maiúscula automaticamente, achei um suplemento que faz isso só que tem de ficar alterando *manualmente* (selecionando as células que já foram inseridas e apertando um *botão)
;)
Parabens tu é mestre ! cara vc com poucos recursos explica muito bem..da um show em muito canal cheio de recursos que vejo por aí
Olá Fabian, obrigado pelo comentário. Fico feliz em saber que o conteúdo agradou. Abraço.
Que da hora! Show essa solução.
vivendo e aprendendo
Bom dia ajudou-me imenso. Explicação fácil e esclarecedora. Obrigado pela partilha. No entanto eu tenho uma questão caso me possa ajudar. Como posso replicar esta ação em outras colunas na mesma folha? Grata
Muito bom.
Maravilha! Ajudou pra caramba! Sugestão pra ficar melhor: Utilizar o Now no lugar do Date para receber a hora também
Olá Ivan, obrigado pelo comentário e pela dica. Abraço!
CARA ME AJUDOU BASTANTE MSM PARABENS....SE PUDER ME AJUDAR CASO QUEIRA COLOCAR QUE A DATA SO APARECA SE DIGITAR A " CONCLUIDO" COMO FAZ ?
Muito bom o conteúdo, parabéns mesmo!!!! Eu lutei muito testando várias dicas que garimpei na net mas nenhuma foi tão fácil de criar e entender quanto essa. Já virei fã do canal. Aproveito para perguntar: para cada registro de data, eu também preciso da marcação do horário, porém com os centésimos, e aí ao usar simplesmente o TIME, eu não consigo. Teria alguma forma de fazê-lo???
Olá Elton. Obrigado pelo comentário, fico feliz que tenha gostado do conteúdo. Sobre os centésimos, você pode usar uma formatação de número: "hh:mm:ss.000" (no VBA é ponto e no Excel é vírgula). Abraço!
@@AdrianoPataro muito obrigado!!
@@AdrianoPataro muito obrigado!!
PADRÃOOOOOOOOO
Gostei muito Adriano, porém queria aperfeiçoar. Tem como inserir isso dentro de um nome de função para usar a função SE ? Ou se apagar algo da coluna 3 (produto) apagar a data automaticamenta também ?
Parabens professor por mais uma de suas belas explancoes com vba.
Mestre, e como seria pra tambem registrar a hora numa outra coluna ao lado em que foi inserido os dados, executar um procv trazendo dados de outra aba e tambem transferir pra uma outra aba diferente todos dos dados ?
Olá Onias, obrigado pelo comentário. Em relação a hora, você pode usar a Função AGORA:
Range("B" & Target.Row).Value = Format( *Now* , "ddd *hh:mm* ")
Já para transferir dados entre planilhas, explicarei em outra aula. Abraço! #apcursos
Olá Adriano excelente vídeo, uma dúvida seria possível pegar essas informações a partir de uma determinada linha apenas, e não dá coluna inteira
Bom dia, obrigado pelo vídeo bem explicado mais como faço para colocar letra maiuscula no início da data por extenso?
Caro Adriano, meus parabéns e obrigado pelo vídeo aula. Qual é o código que utilizo para enviar todas as alterações (Data) que foram feita na referida célula numa outra planilha ?
Primeiramente meus parabéns, estou a horas procurando por isso e deu certo,
porem agora tenho outra questão, a minha coluna onde a data aparece fica fechada para não ser alterada manualmente , sendo assim se eu removo algo na coluna que da o comando para aparecer a data, a mesma não some também, teria que adicionar outro código ?!
Sim é possível Bruno. Altere a ordem do código, desta maneira:
If Target.Column = 3 Then
Range("B" & Target.Row).Value = Format(Date, "ddd")
If Range("C" & Target.Row).Value = "" Then
Range("B" & Target.Row).Value = ""
End If
End If
Abraço!
Boa noite preciso da sua ajuda,
Me propus a fazer uma formula na empresa
e não estou conseguindo.
Ao digitar o nome do motorista, o Excel coloca a data e horas
que ele chegou.
Obs: Quando chega o próximo eles muda todos, e atrapalha a programação.
Att. Manoel
Olá Manoel. A função pelo VBA fica fixa, não altera quando o próximo valor é digitado. Você fez pelo VBA?
Adriano. Tenho uma planilha que atualizo todos os dias com várias linhas: extraio do sistema e colo tudo de uma vez, ou seja, não preencho célula por célula. Testei a macro e fazendo desta forma não funciona. Como conseguiria adaptar para que a data apareça sempre que eu inserir informação na coluna do "Range", independente de ser digitado ou colado?
O meu não deu certo. Fiz a formula, mais não acontece nada !!!
Têm que ativar alguma coisa ou acrescentar algo a mais ?
Olá Linkon. Usando esse exemplo do vídeo, nada a mais.
Isso funciona para a função AGORA? E se eu filtrar isso não vai alterar?
Sim e sim.
Olá Adriano! Não consegui passar da primeira etapa. rsrs ..... Você seleciona "worksheet" em 1:58" no vídeo. Essa opção não aparece pra mim. Em 01:50" no vídeo, sua tela simplesmente muda. Mas não tá explicado como acontece. rsrs Se puder ajudar, agradeço.
Olá Ronan! Clica com o botão direito do mouse sobre a Planilha 1 e escolhe Exibir Código. Vai aparecer as opções que mostro no vídeo. Abraço!
@@AdrianoPataro Excelente! Deu certo. E o código funcionou. Obrigado. Agora, gostaria de perguntar mais uma coisa. É possível fixar a data de três células diferentes a partir do valor selecionado em uma determinada célula?
Por exemplo: Na minha planilha, nas células da coluna E, é possível selecionar três opções: "Solicitação Aberta", "Solicitação em andamento" e "Solicitação concluída". A partir de cada um desses valores, conforme seleção, eu gostaria que fossem automaticamente as datas nas células das colunas F, G e H, que eu chamei respectivamente de "Data de abertura da solicitação", "Data de início" e "Data de conclusão".
Entendeu qual é o meu objetivo nessa planilha? Quero controlar as datas que as demandas são abertas, que os atendimentos são iniciados e as datas que são concluídas.
Se puder me ajudar, agradeço muito. De qualquer forma, só a dica desse vídeo já valeu para mim! Obrigado e abraços!
Queria aprender a fazer isso no LIBREOFICCE CALC...
Cara, estou com uma dúvida, sou bem leigo em VBA e Excel.
Mas estou com uma planilha aqui, que utiliza várias "Caixa de Seleção", e eu formatei uma célula com formatação condicional, pra quando a caixa de seleção estiver desmarcada, o texto escreve "Pendente" e a célula fica com fundo vermelho, e quando a caixa de seleção estiver marcada, o texto altera pra "Efetuado" e o fundo fica em verde.
Eu queria adequar/vincular minha caixa de seleção ao processo que você ensina, quando eu MARCAR/DESMARCAR a caixa de seleção, ele efetue o comando VBA "Worksheet_Change" que você ensinou.
O campo DATA, está em branco, pois a caixa de seleção está desmarcada, quando eu marcar a caixa de seleção, eu gostaria que o VBA preenchesse a data, conforme você ensina,
Será que tem como fazer isso ?? Desde já agradeço.
Olá TunebaGamer . Você pode associar a macro à sua caixa de seleção. Neste caso a macro não é executada pelo evento Worksheet_Change e sim pela marcação da caixa de seleção.
Se for o mesmo conceito de inserir a data na célula, pode aproveitar o código, mas será necessário acrescentar uma condição para verificar se a caixa de seleção foi marcada.
@@AdrianoPataro ah entendi achei que usava o worksheet change... Vou pesquisar aqui, pra poder validar se a caixa de seleção está com Verdadeiro ou Falso. Valeuu
@Caio Eiras aí sim legal. No fim eu verificava se a célula tava V ou F mesmo. Fiz a planilha mais simples mesmo.
Não funciona com a função SE mesmo ou estou fazendo algo errado? No seu exemplo aí a minha coluna C tem função SE e não funciona... se eu digito manualmente ele funciona.
Muito bom, me ajudou bastante!! Só estou com um probleminha.. o comando do VBA não funciona quando trabalho com a planilha protegida por senha, ela da um erro. Poderia me ajudar?
Olá Matheus. Se a célula estiver protegida, não vai funcionar, pois o evento Change refere-se à alterações na planilha. Talvez você tenha que desproteger a planilha primeiro, executar os comandos do evento e em seguida proteger a planilha novamente. Abraço!
Não aparece o worksheet no meu, só a opção de geral.
Olá Aline. Clica com o botão direito do mouse sobre a Planilha 1 e escolhe Exibir Código. Vai aparecer as opções que mostro no vídeo. Abraço!
@@AdrianoPataro Obrigada Adriano 😁, já tinha achado aqui, depois de lhe mandar o comentário.
Vc tem alguma aula que transforme um arquivo (projeto) do Excel .xlsm em executável .exe para poder usar o arquivo sem a necessidade de ter o Excel instalado?
Olá Prowcize. Não tenho aula sobre este assunto, mas dá uma olhada neste link se te ajuda:
www.tomasvasquez.com.br/forum/viewtopic.php?t=714
Abraço!
Código top mas como faz para quando apagar o conteúdo da coluna c apagar a data?
Boa tarde amigo,
O meu não aparece essa opção de Worksheet, apenas (Geral)... sabe como faço para aparecer?
Olá Zack. Clica com o botão direito do mouse no nome da planilha e escolha Exibir Código. Vai aparecer as duas opções: Geral e Worksheet. Abraço!
Gostaria de saber se posso travar a coluna B? Porque tentei e deu depuração!
Boa tarde! Adriano, como faço isso no google planilhas?
Olá Garnier. Não uso Google planilhas. Sei que lá existe a gravação e edição de macros, mas não sei dizer se tem configuração de eventos.
Abraço!
Boa noite, segui o passo a passo mas quando mandei compilar pediu macro como faço ?
E se o caso quero que aparece data e hora ?
Como fazer isso no Google planilhas?
Alguem sabe de alguma aula ensinando fluxo de caixa multiano?
xiii, fiz duas vezes e não funcionou, poxa vida baixei até a planilha mas não funcionou, fiz direitinho
Olá Gelson. Qual foi o erro que deu?
aula boa, audio horrivel