Olá Márcio! Isso é verdade. Não entendo porque nem todos vão até o final. Acredito que seja falta de tempo!Se ainda não é um inscrito(a), convido você a se inscrever em meu canal de vídeos! Espero que os mais de 420 vídeos tutorias que possuo atualmente (só de Excel são mais de 170!) possam lhe ajudar. Bons estudos e sucesso!
Na verdade, em comparação com canais maiores, nem acho que as visualizações estão baixas, o pessoal dá um tempo, mas acaba voltando. Já são mais de 270 vídeos (só nessa playlist) e vou caminhando e torcendo para que tenhamos cada vez mais conteúdo.
Mais uma vez estou aqui para agradecer o compartilhamento dos seus conhecimentos conosco. Deus ilumine o seu caminho! Muitíssimo Obrigado. Está sendo de muita ajuda.
Muito úteis essas dicas. Muito obrigado. Queria só passar uma dica quanto a criação de botões na planilha. Quando você seleciona o botão de comando no formulário "Controles ActiveX" e vai para a planilha, basta dar um clique simples com a tecla esquerda do mouse na planilha. Assim o botão que é gerado na planilha fica no tamanho padrão, não precisando "desenhá-lo". O que permite manter o padrão de tamanho, entre os objetos que você gera em todas as planilhas. Isso serve para qualquer outro objeto dos formulários de desenvolvedor. Obs: Utilizei o nome tecla para o botão do mouse para não ter confusão quanto botão do mouse e botão de controle.
Gustavo Villas Garcia Olá Gustavo. Muito obrigado pela sua mensagem e sugestão. Eu gosto de desenha-los e dependendo do projeto mudo as dimensões deles nas propriedades do VBA. Registrada a sua dica para todos aqueles que acompanham os comentários do vídeo também!
Trovato, boa noite! Estou assistindo desde da primeira aula seu curso e essa aula 22 foi bem explicadinha e detalhada ao maximo, para quem não conhece nada de VBA como eu...... Vou te confessar que em algumas aulas no inicio entre 14 a 21 fiquei cabisbaixo porque pensei que tinha que fazer uma pesquisa prévia sobre as linguagens de programação para assistir suas aulas mas essa aula 22 foi otima você entrou nos detalhes e explicou usando a aspas simples na programação e ficou fácil de assimilar....... irei assistir todas as aulas de Macros e VBA.... tenho certeza que com os conhecimentos de excel avançado + macros e VBA agregara mais no meu currículo mesmo não utilizando no meu dia-dia. Estou inscrito no canal e dou like em cada video assistido!! Abs!
Olá Alex! Muito obrigado pela mensagem e pelo seu feedback! O curso foi feito para quem realmente não entende nada de VBA. Foi construido de forma que o conhecimento vá se acumulando gradativamente até que o aluno possa assimila-lo e colocar em prática os conceitos que foram abordados. Atualmente já são mais de 85 aulas de VBA no canal e a partir de setembro volto a publicar conteúdo novo. Estava de férias e estou retomando agora minhas atividades. Espero que encontre ainda muito material de estudo. Não esqueça de baixar o material complementar no meu blog: www.sigaonerd.com Bons estudos e sucesso!
Parabéns Professor Alessandro! Os seus vídeos fazem muita diferença, simplissidade na explicaçao, a sua voz, a forma de como transmite os seus conhecimentos é uma alegria para todos que querem aproveitar esses conhecimentos transmitidos. Obrigado Professor por me ajudares.
Olá Jonas Jacob ! Muito obrigado pela sua mensagem! Fico feliz que esteja acompanhando as aulas. Já são mais de 120 aulas publicadas e espero até Dezembro ter mais de 200. Todas com a qualidade que já conhece. Obrigado e sucesso amigo!
Olá marcelo strehlow ! Vai curtir muito a aula 23 que acabo de gravar e editar. Vou ensinar como registrar o horário de abertura e fechamento de uma planilha de forma automática! Espero que continue gostando do conteúdo.
Muito obrigado Celso pela mensagem e feedback! Se você ainda não é um inscrito(a), convido a se inscrever em meu canal de vídeos! Espero que os mais de 560 vídeos tutorias que possuo atualmente (só de Excel são mais de 260!) possam lhe ajudar. Bons estudos e sucesso!
Grande Alessandro, estou realmente apaixonado na enorme capacidade do Excel. Curtindo cada vídeo dessa série. Obrigado pela oportunidade compartilhando seu conhecimento conosco. Me surgiu uma dúvida: como mascarar no inputbox o valor digitado pelo usuário?
Parabéns por sua nobre iniciativa de compartilhar seus conhecimentos gratuitamente. Estou acompanhando seus vídeos, novidades e canal. Forte abraço! Que você tenha ainda mais sucesso!
Inicialmente o parabenizo pela iniciativa de propagar conhecimentos e de forma tão didática. A muitos anos utilizo Excel, mas só recentemente conheci o VBA. Estou acompanhando seus cursos online. Ao fazer a aula 22, percebi que se a senha for digitada errada no desbloqueio uma mensagem de erro é exibida e entra a página do VBA. Li nos comentários que existe um código para suspender esta ação. Você poderia esclarecer como utiliza-lo e em qual parte do código VBA introduzi-lo. Obrigado, Abraço
Alessandro, primeiramente muitooooooo obrigado por todo esse conhecimento valioso que você tem compartilhado conosco. Minha dúvida é: Se houver alguma planilha oculta em minha pasta de trabalho, ela será bloqueada/desbloqueada também? A mesma pergunta faço para os comandos de repetição, eles trabalham nas linhas ou colunas ocultas entre o intervalo selecionados? Desde já agradeço pela atenção.
Muito bom !! Não conhecia o comando inputbox, será de grande valia para aperfeiçoar algumas planilhas que estou criando. Obrigado pelas informações, Alessandro! Até a próxima.
Olá Ricardo Santos ! Obrigado pela mensagem e fico muito feliz em saber que está aprendendo com as aulas. Na próxima, um conteúdo sensacional. Como gravar o horário de abertura e fechamento da planilha de forma automática!
Obrigado Alessandro pelo breve retorno... Entendi, por fim, onde estava o erro do código após o seu esclarecimento. Ansioso pelas próximas vídeo-aulas!!! Grande Abraço!
Muito boa a dica de protecao dos codigos, Alessandro.Desse maneira posso proteger os codigos da videoaula anterior e deixar fixo a senha e so a pessoa que gerou os codigos poderem mudar,nao eh.Gostaria de pergutar se tem algum jeito de testar se a planilha ja esta protegida ou desprotegida, para porventura venha clicar novanente e dar mensagens de "Ja esta protegida ou desprotegida"?
Uma sugestão para uma tratativa da senha em branco: If senha = "" Then MsgBox "Senha em branco ou vazia." & Chr(13) & "Planilhas não foram bloqueadas. " , vbInformation, "Concluído" Else 'processo para proteção das planilhas' End If Esse processo fica legal por exemplo ao fechar a pasta de trabalho, e ao abrir o processo de desbloquear por exemplo.
Trovato, muito legal gostei, identifiquei que se não digitar nenhuma senha elas vão ser bloqueadas mesmos assim, achei que podia melhorar introduzindo um "IF" ficou funcional até,tem alguma outra solução? If senha = "" Then MsgBox "é obrigatório digitar uma senha", vbOKOnly senha = InputBox("digite uma senha para bloqueio", "Atenção") End If
Paulo Roberto Excelente dica amigo! Agradeço por complementar a informação. É muito difícil pensar em todos os aspectos da sua aplicação. Fica a dica para os amigos que estão acompanhando os comentários também!
Não entendo muito, mas com esse comando, caso você tente deixar a senha em branco 2 vezes, você ainda consegue passar pelo inputbox. Acho que assim mataria esse problema (se tiver um jeito mais fácil, me avisem rsrs): If Senha = "" Then Do While Senha = "" MsgBox "É obrigatório digitar uma senha.", vbOKOnly Senha = InputBox("Digite uma senha para bloqueio", "Atenção") Loop End If
o comando funciona, porém o excel não permite cancelar o comando, ele te obriga a digitar a senha, mesmo se apertar o botão cancelar, tem como mudar isso?
Suas aulas são muito boas, parabéns! Estou assistindo desde a primeira aula, e não há do que reclamar, parabéns novamente! Se possível me responder, gostaria de saber se há como fazer um botão ou de outra forma, uma maneira para alterar a senha, já que é essa é feita na primeira vez que clicamos no botão e armazenamos na variável senha? E também se é possível criar uma senha para bloquear e outra para desbloquear? Muito obrigado
Muito bom o contéudo, Professor! mas notei que ao clicar em Cancelar ou no X a janela ainda permanece aberta, qual código poderia utilizar para que fechasse? e parabéns de novo!
Aula excelente. Entretanto, Alessandro, me deparei com uma situação atípica: cadastrei a senha de bloqueio, mas acabei não vendo o que digitei no teclado. Assim, não consigo desbloquear mais a planilha. Como faço pra saber a senha que foi armazenada na primeira rotina de bloqueio? Eu até rodei a rotina de bloquear mais uma vez, cadastrando uma nova senha, mas ele não sobrescreve a senha anterior, mas a mantém. O que fazer nesse caso? Parabéns pelas excelentes aulas, meu amigo!!!
Como sempre, excelente!!! Tenho um dúvida. Se antes de desbloquear a planilha, o usuário desligar o PC e ligar novamente, a senha que estava na variável continua lá?
Olá Ivan! Variáveis são armazenadas em espaços na memória RAM do computador. Assim que o computador for reiniciado (ou o Excel fechado), as variáveis criadas (mesmo globais) são eliminadas. Bons estudos!
Olá +Ricardo Melo ! Não tenho material escrito sobre o VBA. Há alguns artigos que estão sendo publicados no meu blog pelo colega Pedro Martins - www.sigaonerd.com Prefiro gravar vídeos que são mais objetivos e demandam menos trabalho! Bons estudos e grato por acompanhar as aulas. Espero que goste do curso todo (são 67 aulas!)
Professor, caso eu queira adicionar uma mensagem de erro quando a senha inserida for incorreta, como devo proceder? Imagino que seja inserindo um "IF" antes da linha "planilhaatual.unprotect password:=senha", mas não estou conseguindo ir adiante.
Alessandro, primeiramente declaro que sou um grande admirador do seu trabalho... Compartilhar conhecimento é uma das chaves para a evolução da humanidade... Parabéns pela excelente iniciativa!!!... Tenho uma dúvida... estou bloqueando as planilhas conforme as instruções porém estou conseguindo desbloquear com qualquer senha... poderia acender esta luz? Grande abraço!
Olá Jonas Corrêa ! Primeiramente obrigado por acompanhar os trabalhos! Quanto a sua dúvida, é muito difícil (impossível alias) o Excel desbloquear a planilha com qualquer senha. Para bloquear você está utilizando o parâmetro protect password:="xxxxx" e para desbloquear está utilizando a instrução unprotect password:="xxxxx" onde xxx é a senha que você utiliza? Sem passar o argumento Password a planilha é simplesmente bloqueada e sem qualquer senha o usuário consegue desbloquear...
Olá José! Podemos trabalhar com a instrução ON ERROR RESUME NEXT para não travar a execução ou tratar o retorno da senha informada pelo usuário antes de fazer o desbloqueio. Não me recordo bem da aula mas acho que é possível validar a senha inserida antes de fazer o desbloqueio das planilhas... Grato pela mensagem!
Boa tarde professor, Parabéns e obrigado pela aula. É possível eu declarar a string senha fora do corpo do método privado "bloquear" e depois usar essa mesma variável em um outro método, como "desbloquear" ?
Olá Phellippe, sim é possível programando a variável como Global ou Public Nos últimos vídeos do projeto de Macros e VBA utilizo e explico esse recurso. Convido você a conhecer os demais vídeos do canal. Atualmente tenho quase 360 vídeos publicados sendo que do Excel já são mais de 150! Segue abaixo o link para inscrição no canal. As aulas estão todas gravadas e liberadas em playlists para facilitar os estudos. Link de inscrição: ruclips.net/channel/UCw774e7LrGYFc-D97JT1oCg Site com conteúdo (dos cursos completos) em ordem de estudo: sigaonerd.esy.es/index.html Bons estudos e sucesso!
Alessandro, tenho uma dúvida =| Primeiramente parabéns pela sua didática, estou aprendendo muito :) Bom, minha dúvida é a seguinte: Se a sub dos botões são como PRIVATE, ao definir a senha de bloqueio, ela não deveria ser perdida após o end sub do botão 1? ou seja... a variável senha do botão 2 não é diferente da variável senha do botão 1?
Olá Alessandro, comecei a estudar pelos seu videos e fiz o teste, porém se realizarmos o teste e digitarmos a senha incorreta não aprece que digitou errada e nem trava, mas entra no VB informando um erro. Abraços
Alessandro muito legal esse codigo para proteger. Fiquei com uma dúvida, se uma pessoa digitar a senha errada retorna um ERRO. Como trato esse erro, já tentei resolver mas ainda não consegui.
esdras ferreira Olá Esdras.. Esse é um assunto para uma das aulas que temos pela frente. Procure por On Error Goto e On error resume next... Vai ajudar...
esdras ferreira Para facilitar sua procura gravei um vídeo sobre isso. Será a aula 25 do curso de Macros e VBA. Será publicado em 03/05... Bons estudos!
olá, tenho 2 duvidas: 1) Ao carregar no botão para bloquear e de seguida carregar no cancelar ele diz que as planilhas estão bloqueadas, e na verdade não estão. 2) Eu ao introduzir a passoword a primeira vez a seguir posso tentar bloquear novamente e ele deixa me bloquear novamente, como faço para ele dizer que as planilhas já estão bloqueadas? Obrigado
Alessandro, Parabéns pela aula. Explicação clara da utilização da função FOR EACH NEXT. Tenho duas questões para abordar - Gostaria de saber como iremos solucionar o problema do usuário digitar a senha errada. Pensei em armazenar essa senha em uma nova planilha, numa determinada célula, e no próprio programa ocultar essa planilha para proteger a senha. E na rotina do desbloqueio, devemos primeiramente comparar a senha, antes de executar o comando unprotect. Seria algo assim ou existe algum comando para essa conferência? - Além disso, a variável Senha foi declarada como String (texto), a qual através da condicional IF, podemos conferir se a senha foi informada, e em caso contrário, apresentar uma msgbox solicitando que o usuário insira a senha. Esse mesmo caso funciona quando o usuário clicar em Cancelar. Mas eu não consigo fazer essa verificação de senha não informada se eu declarar uma variável para senha em padrão numérico, tal como Integer ou Long. Como resolvo isso? Ele não aceita checar senha="" Grato.
Olá William. Vamos lá... A ideia de colocar a senha em uma planilha e oculta-la pode ser uma boa opção, principalmente se você vai dar liberdade ao usuário de trocá-la. Quanto a segunda dúvida tente utilizar a instrução IsEmpty(ACTIVECELL) Essa instrução verifica se a célula não foi preenchida. você pode substituir a célula pela sua variável que vai funcionar também. Convido você a se inscrever no canal e acompanhar as mais de 300 vídeos aulas que já publiquei (só do Excel são mais de 150!) e no dia 15 de outubro serei um dos palestrantes do 1º Encontro Presencial EXCEL WEEKEND. Um encontro de profissionais da área. Participe! #ExcelWeekend Página do evento: bit.ly/2bRtXi1 Bons estudos e sucesso!
Olá Professor, Te chamo assim porque já assisti tanta aula sua que é isso que você é: meu professor. heheh Uma observação: mesmo a nossa senha sendo dinâmica (armazenada em nossa var "senha") se o usuário for espertinho a ponto de ir debugar o código, ele não poderá saber qual é a senha passando o mouse sobre a variável senha? ou digitando" ? senha" na verificação imediata abaixo?
Olá Speedylamborghini! Sim! Ele consegue... mas para evitar que isso aconteça basta proteger o projeto VBA (ensino isso em uma das aulas desse curso!). Dai não tem perigo! Se ainda não é um inscrito(a), convido você a se inscrever em meu canal de vídeos! Espero que os mais de 450 vídeos tutorias que possuo atualmente (só de Excel são mais de 200!) possam lhe ajudar. Bons estudos e sucesso!
Adilson Valotto Olá Adilson! Neste caso vamos utilizar os conceitos do desbio de execução ON ERROR... Mas isso é assunto para outras aulas... dê uma pesquisada em ON Error Resume Next e On Error Goto
Boa noite pessoal/professor ! , poderiam me ajudar por gentileza ? eu digitei a senha correta(123) para desbloquear, mas meu excel informa que a senha está incorreta, o que devo fazer ?
E como criar esse código para usar nas outra planilha ex: se eu abrir outra planilha no Excel sem ser as nas guias usar o código para bloquear qualquer uma ? Desde já agradeço !
Olá, Alessandro. Gostaria de lhe parabenizar pelo conteúdo das aulas! Tem sido de grande ajuda no meu trabalho... Fiquei com uma dúvida nesse código: porque você chamou a variável PlanilhaAtual de variant? Se eu utilizasse As Sheets e For Each PlanilhaAtual in Workbook teria a mesma função o código? Muito obrigada!
Olá Gabriela! Acho que utilizei do tipo Variant pois queria testar a variável. Quando ela foi inicializada no for each ela foi criada como um objeto e não como uma variável string ou numérica. Deixei a cargo do Excel a identificação do tipo do objeto... Pode ter sido uma solução que encontrei na hora de gravar a aula.
Olá Edmundo! Se o usuário digitar a senha errada, capture o resultado do inputbox em uma variável e através do IF você conseguirá avaliar e sair da rotina com o Exit Sub sem carregar o conteúdo.
Fico feliz Luiz que tenha gostado da aula. Há 200 aulas de VBA em meu canal no RUclips. Espero que encontre muito material de estudos por lá! Se você ainda não é um inscrito(a), convido a se inscrever em meu canal de vídeos! Espero que os mais de 700 vídeos tutorias que possuo atualmente (só de Excel são mais de 370!) possam lhe ajudar. Site que criei com todos os vídeos dos cursos completos organizados: sigaonerd.esy.es/index.html Portal de cursos próprio: cursos.alessandrotrovato.com.br Bons estudos e sucesso!
Olá Alessandro! Interessante sua pergunta. Você deve estar falando da instrução IF. Em VBA você utiliza a função IF e dentro dela faz a validação com a função cont.se (application.worksheetfunction.countif). Convido você a conhecer os demais vídeos do canal. Atualmente tenho quase 360 vídeos publicados sendo que do Excel já são mais de 150! Segue abaixo o link para inscrição no canal. As aulas estão todas gravadas e liberadas em playlists para facilitar os estudos. Link de inscrição: ruclips.net/channel/UCw774e7LrGYFc-D97JT1oCg Site com conteúdo (dos cursos completos) em ordem de estudo: sigaonerd.esy.es/index.html Bons estudos e sucesso!
Alessandro! Duvido que consiga me ajudar nessa: queria fazer um For Next, mas está dando erro, não funciona, o que pode estar errado? For Alessandro 1 to Todososvídeos Activevideo.select ("nota 10") = "Curtir" offset(0,1). curtir próximo vídeo Next msgbox " Parabéns!!! Excelente material, excelentes aulas!!!", vbokonly; "Aprendendo VBA com o Trovato"
Olá Luiz! Elas estão para download no meu blog: www.sigaonerd.com na seção APOSTILAS DO NERD Se ainda não é um inscrito(a), convido você a se inscrever em meu canal de vídeos! Espero que os mais de 420 vídeos tutorias que possuo atualmente (só de Excel são mais de 170!) possam lhe ajudar. Bons estudos e sucesso!
A cada vídeo da sequencia menor o número de visualizações... só os fortes vão até o final hahaha
Olá Márcio! Isso é verdade. Não entendo porque nem todos vão até o final. Acredito que seja falta de tempo!Se ainda não é um inscrito(a), convido você a se inscrever em meu canal de vídeos!
Espero que os mais de 420 vídeos tutorias que possuo atualmente (só de Excel são mais de 170!) possam lhe ajudar.
Bons estudos e sucesso!
Eu irei resilientemente até ao fim!
Na verdade, em comparação com canais maiores, nem acho que as visualizações estão baixas, o pessoal dá um tempo, mas acaba voltando. Já são mais de 270 vídeos (só nessa playlist) e vou caminhando e torcendo para que tenhamos cada vez mais conteúdo.
Excelente, professor. Para mim o senhor explica muito bem. Nunca deixa ensinar VBA.
Nossa os códigos com os comentários ficou 10 nossa tudo de bom pra se aprender, meus parabéns professor.
Fico muito feliz que esteja gostando das aulas Vilmar! Grande abraço e bons estudos!
Só conheci esse canal esse ano, mas estou convencido que irei até ao fim das aulas todas
Já estou aqui na torcida para que vá até o final Alexandre! Bons estudos!
@@AlessandroTrovato, obrigado, Prof!
excelente, mais um recurso pra conta!
Muito bom o seu ritmo de estudos! Parabéns.
Mais uma vez estou aqui para agradecer o compartilhamento dos seus conhecimentos conosco. Deus ilumine o seu caminho! Muitíssimo Obrigado. Está sendo de muita ajuda.
Fico muito feliz que esteja gostando dos trabalhos Pedro! Que Ele abençoe a ilumine o caminho de todos nós! Grande abraço.
Muito úteis essas dicas. Muito obrigado.
Queria só passar uma dica quanto a criação de botões na planilha.
Quando você seleciona o botão de comando no formulário "Controles ActiveX" e vai para a planilha, basta dar um clique simples com a tecla esquerda do mouse na planilha. Assim o botão que é gerado na planilha fica no tamanho padrão, não precisando "desenhá-lo". O que permite manter o padrão de tamanho, entre os objetos que você gera em todas as planilhas. Isso serve para qualquer outro objeto dos formulários de desenvolvedor.
Obs: Utilizei o nome tecla para o botão do mouse para não ter confusão quanto botão do mouse e botão de controle.
Gustavo Villas Garcia Olá Gustavo. Muito obrigado pela sua mensagem e sugestão. Eu gosto de desenha-los e dependendo do projeto mudo as dimensões deles nas propriedades do VBA.
Registrada a sua dica para todos aqueles que acompanham os comentários do vídeo também!
Trovato, boa noite!
Estou assistindo desde da primeira aula seu curso e essa aula 22 foi bem explicadinha e detalhada ao maximo, para quem não conhece nada de VBA como eu...... Vou te confessar que em algumas aulas no inicio entre 14 a 21 fiquei cabisbaixo porque pensei que tinha que fazer uma pesquisa prévia sobre as linguagens de programação para assistir suas aulas mas essa aula 22 foi otima você entrou nos detalhes e explicou usando a aspas simples na programação e ficou fácil de assimilar....... irei assistir todas as aulas de Macros e VBA....
tenho certeza que com os conhecimentos de excel avançado + macros e VBA agregara mais no meu currículo mesmo não utilizando no meu dia-dia.
Estou inscrito no canal e dou like em cada video assistido!!
Abs!
Olá Alex! Muito obrigado pela mensagem e pelo seu feedback! O curso foi feito para quem realmente não entende nada de VBA. Foi construido de forma que o conhecimento vá se acumulando gradativamente até que o aluno possa assimila-lo e colocar em prática os conceitos que foram abordados.
Atualmente já são mais de 85 aulas de VBA no canal e a partir de setembro volto a publicar conteúdo novo. Estava de férias e estou retomando agora minhas atividades.
Espero que encontre ainda muito material de estudo. Não esqueça de baixar o material complementar no meu blog: www.sigaonerd.com
Bons estudos e sucesso!
Show de bola este curso! Melhor do que alguns que já paguei anteriormente, agora enfim estou aprendendo VBA, valeu Alessandro!
Parabéns Professor Alessandro! Os seus vídeos fazem muita diferença, simplissidade na explicaçao, a sua voz, a forma de como transmite os seus conhecimentos é uma alegria para todos que querem aproveitar esses conhecimentos transmitidos. Obrigado Professor por me ajudares.
Olá Jonas Jacob ! Muito obrigado pela sua mensagem! Fico feliz que esteja acompanhando as aulas. Já são mais de 120 aulas publicadas e espero até Dezembro ter mais de 200. Todas com a qualidade que já conhece. Obrigado e sucesso amigo!
Show de bola Alessandro!
Cada semana aprendendo mais...
Olá marcelo strehlow ! Vai curtir muito a aula 23 que acabo de gravar e editar. Vou ensinar como registrar o horário de abertura e fechamento de uma planilha de forma automática! Espero que continue gostando do conteúdo.
Obrigado pelos vídeos
Obrigado Trovato! Excelente aula.
Muito obrigado Celso pela mensagem e feedback!
Se você ainda não é um inscrito(a), convido a se inscrever em meu canal de vídeos!
Espero que os mais de 560 vídeos tutorias que possuo atualmente (só de Excel são mais de 260!) possam lhe ajudar.
Bons estudos e sucesso!
Excelente!
Grande Alessandro, estou realmente apaixonado na enorme capacidade do Excel. Curtindo cada vídeo dessa série. Obrigado pela oportunidade compartilhando seu conhecimento conosco. Me surgiu uma dúvida: como mascarar no inputbox o valor digitado pelo usuário?
Parabéns por sua nobre iniciativa de compartilhar seus conhecimentos gratuitamente.
Estou acompanhando seus vídeos, novidades e canal.
Forte abraço!
Que você tenha ainda mais sucesso!
Inicialmente o parabenizo pela iniciativa de propagar conhecimentos e de forma tão didática.
A muitos anos utilizo Excel, mas só recentemente conheci o VBA.
Estou acompanhando seus cursos online.
Ao fazer a aula 22, percebi que se a senha for digitada errada no desbloqueio uma mensagem de erro é exibida e entra a página do VBA.
Li nos comentários que existe um código para suspender esta ação.
Você poderia esclarecer como utiliza-lo e em qual parte do código VBA introduzi-lo.
Obrigado,
Abraço
Alessandro, primeiramente muitooooooo obrigado por todo esse conhecimento valioso que você tem compartilhado conosco. Minha dúvida é: Se houver alguma planilha oculta em minha pasta de trabalho, ela será bloqueada/desbloqueada também? A mesma pergunta faço para os comandos de repetição, eles trabalham nas linhas ou colunas ocultas entre o intervalo selecionados?
Desde já agradeço pela atenção.
Muito bom !!
Não conhecia o comando inputbox, será de grande valia para aperfeiçoar algumas planilhas que estou criando.
Obrigado pelas informações, Alessandro!
Até a próxima.
Olá Ricardo Santos ! Obrigado pela mensagem e fico muito feliz em saber que está aprendendo com as aulas. Na próxima, um conteúdo sensacional. Como gravar o horário de abertura e fechamento da planilha de forma automática!
Mais que excelência, obrigado Alessandro.
Acabei de assistir a aula 25, problema solucionado
Muito obrigado
Obrigado Alessandro pelo breve retorno... Entendi, por fim, onde estava o erro do código após o seu esclarecimento. Ansioso pelas próximas vídeo-aulas!!! Grande Abraço!
Olá Jonas Corrêa ! Muito obrigado pela mensagem. O curso já está na aula 36 e todo domingo as 10h tem aula nova...
Muito boa a dica de protecao dos codigos, Alessandro.Desse maneira posso proteger os codigos da videoaula anterior e deixar fixo a senha e so a pessoa que gerou os codigos poderem mudar,nao eh.Gostaria de pergutar se tem algum jeito de testar se a planilha ja esta protegida ou desprotegida, para porventura venha clicar novanente e dar mensagens de "Ja esta protegida ou desprotegida"?
Muchas gracias senior
Gracias por su mensaje.
Uma sugestão para uma tratativa da senha em branco:
If senha = "" Then
MsgBox "Senha em branco ou vazia." & Chr(13) & "Planilhas não foram bloqueadas. " , vbInformation, "Concluído"
Else
'processo para proteção das planilhas'
End If
Esse processo fica legal por exemplo ao fechar a pasta de trabalho, e ao abrir o processo de desbloquear por exemplo.
Excelente contribuições a que tem feito Edgar! Muito obrigado
Trovato, muito legal gostei,
identifiquei que se não digitar nenhuma senha elas vão ser bloqueadas mesmos assim, achei que podia melhorar introduzindo um "IF" ficou funcional até,tem alguma outra solução?
If senha = "" Then
MsgBox "é obrigatório digitar uma senha", vbOKOnly
senha = InputBox("digite uma senha para bloqueio", "Atenção")
End If
Paulo Roberto Excelente dica amigo! Agradeço por complementar a informação. É muito difícil pensar em todos os aspectos da sua aplicação. Fica a dica para os amigos que estão acompanhando os comentários também!
+Paulo Roberto boa dica
Não entendo muito, mas com esse comando, caso você tente deixar a senha em branco 2 vezes, você ainda consegue passar pelo inputbox.
Acho que assim mataria esse problema (se tiver um jeito mais fácil, me avisem rsrs):
If Senha = "" Then
Do While Senha = ""
MsgBox "É obrigatório digitar uma senha.", vbOKOnly
Senha = InputBox("Digite uma senha para bloqueio", "Atenção")
Loop
End If
@@swatj3 Que isso cara, matou a charada e diz não entender muito, ainda acha q tem um jeito mais fácil? rsrs
o comando funciona, porém o excel não permite cancelar o comando, ele te obriga a digitar a senha, mesmo se apertar o botão cancelar, tem como mudar isso?
Meu xara muito obrigado por me responder vou tentar aqui a aplicação desse código.
Já to escrito no canal.
Obrigado.
Grato por acompanhar os trabalhos Alessandro!
Suas aulas são muito boas, parabéns! Estou assistindo desde a primeira aula, e não há do que reclamar, parabéns novamente!
Se possível me responder, gostaria de saber se há como fazer um botão ou de outra forma, uma maneira para alterar a senha, já que é essa é feita na primeira vez que clicamos no botão e armazenamos na variável senha? E também se é possível criar uma senha para bloquear e outra para desbloquear? Muito obrigado
Muito bom o contéudo, Professor! mas notei que ao clicar em Cancelar ou no X a janela ainda permanece aberta, qual código poderia utilizar para que fechasse? e parabéns de novo!
Aula excelente. Entretanto, Alessandro, me deparei com uma situação atípica: cadastrei a senha de bloqueio, mas acabei não vendo o que digitei no teclado. Assim, não consigo desbloquear mais a planilha. Como faço pra saber a senha que foi armazenada na primeira rotina de bloqueio? Eu até rodei a rotina de bloquear mais uma vez, cadastrando uma nova senha, mas ele não sobrescreve a senha anterior, mas a mantém. O que fazer nesse caso? Parabéns pelas excelentes aulas, meu amigo!!!
Como sempre, excelente!!!
Tenho um dúvida.
Se antes de desbloquear a planilha, o usuário desligar o PC e ligar novamente, a senha que estava na variável continua lá?
Olá Ivan! Variáveis são armazenadas em espaços na memória RAM do computador. Assim que o computador for reiniciado (ou o Excel fechado), as variáveis criadas (mesmo globais) são eliminadas.
Bons estudos!
Alessandro,
Você não tem uma apostila sobre esses assuntos?
Estou gostando muito do curso! Parabéns!
Olá +Ricardo Melo ! Não tenho material escrito sobre o VBA. Há alguns artigos que estão sendo publicados no meu blog pelo colega Pedro Martins - www.sigaonerd.com
Prefiro gravar vídeos que são mais objetivos e demandam menos trabalho! Bons estudos e grato por acompanhar as aulas. Espero que goste do curso todo (são 67 aulas!)
Professor, caso eu queira adicionar uma mensagem de erro quando a senha inserida for incorreta, como devo proceder?
Imagino que seja inserindo um "IF" antes da linha "planilhaatual.unprotect password:=senha", mas não estou conseguindo ir adiante.
Alessandro, primeiramente declaro que sou um grande admirador do seu trabalho... Compartilhar conhecimento é uma das chaves para a evolução da humanidade... Parabéns pela excelente iniciativa!!!... Tenho uma dúvida... estou bloqueando as planilhas conforme as instruções porém estou conseguindo desbloquear com qualquer senha... poderia acender esta luz? Grande abraço!
Olá Jonas Corrêa ! Primeiramente obrigado por acompanhar os trabalhos! Quanto a sua dúvida, é muito difícil (impossível alias) o Excel desbloquear a planilha com qualquer senha.
Para bloquear você está utilizando o parâmetro protect password:="xxxxx" e para desbloquear está utilizando a instrução unprotect password:="xxxxx" onde xxx é a senha que você utiliza?
Sem passar o argumento Password a planilha é simplesmente bloqueada e sem qualquer senha o usuário consegue desbloquear...
Mais uma excelente aula Alessandro.'
No caso de a password para desbloqueio for incorretamente fornecida não vai dar Runtime error?
Olá José! Podemos trabalhar com a instrução ON ERROR RESUME NEXT para não travar a execução ou tratar o retorno da senha informada pelo usuário antes de fazer o desbloqueio. Não me recordo bem da aula mas acho que é possível validar a senha inserida antes de fazer o desbloqueio das planilhas...
Grato pela mensagem!
Boa tarde professor, Parabéns e obrigado pela aula.
É possível eu declarar a string senha fora do corpo do método privado "bloquear" e depois usar essa mesma variável em um outro método, como "desbloquear" ?
Olá Phellippe, sim é possível programando a variável como Global ou Public
Nos últimos vídeos do projeto de Macros e VBA utilizo e explico esse recurso.
Convido você a conhecer os demais vídeos do canal. Atualmente tenho quase 360 vídeos publicados sendo que do Excel já são mais de 150! Segue abaixo o link para inscrição no canal. As aulas estão todas gravadas e liberadas em playlists para facilitar os estudos.
Link de inscrição: ruclips.net/channel/UCw774e7LrGYFc-D97JT1oCg
Site com conteúdo (dos cursos completos) em ordem de estudo: sigaonerd.esy.es/index.html
Bons estudos e sucesso!
Alessandro, tenho uma dúvida =|
Primeiramente parabéns pela sua didática, estou aprendendo muito :)
Bom, minha dúvida é a seguinte: Se a sub dos botões são como PRIVATE, ao definir a senha de bloqueio, ela não deveria ser perdida após o end sub do botão 1? ou seja... a variável senha do botão 2 não é diferente da variável senha do botão 1?
Olá Alessandro, comecei a estudar pelos seu videos e fiz o teste, porém se realizarmos o teste e digitarmos a senha incorreta não aprece que digitou errada e nem trava, mas entra no VB informando um erro. Abraços
Alessandro muito legal esse codigo para proteger. Fiquei com uma dúvida, se uma pessoa digitar a senha errada retorna um ERRO. Como trato esse erro, já tentei resolver mas ainda não consegui.
esdras ferreira Olá Esdras.. Esse é um assunto para uma das aulas que temos pela frente. Procure por On Error Goto e On error resume next... Vai ajudar...
Obrigado vou procurar!
esdras ferreira Para facilitar sua procura gravei um vídeo sobre isso. Será a aula 25 do curso de Macros e VBA. Será publicado em 03/05... Bons estudos!
obrigadooooo! já encontrei a solução mas ainda tenho muito a aprender sobre esta nova opção, com certeza assistirei sua aula.
olá, tenho 2 duvidas:
1) Ao carregar no botão para bloquear e de seguida carregar no cancelar ele diz que as planilhas estão bloqueadas, e na verdade não estão.
2) Eu ao introduzir a passoword a primeira vez a seguir posso tentar bloquear novamente e ele deixa me bloquear novamente, como faço para ele dizer que as planilhas já estão bloqueadas?
Obrigado
Alessandro,
Parabéns pela aula. Explicação clara da utilização da função FOR EACH NEXT. Tenho duas questões para abordar
- Gostaria de saber como iremos solucionar o problema do usuário digitar a senha errada. Pensei em armazenar essa senha em uma nova planilha, numa determinada célula, e no próprio programa ocultar essa planilha para proteger a senha. E na rotina do desbloqueio, devemos primeiramente comparar a senha, antes de executar o comando unprotect. Seria algo assim ou existe algum comando para essa conferência?
- Além disso, a variável Senha foi declarada como String (texto), a qual através da condicional IF, podemos conferir se a senha foi informada, e em caso contrário, apresentar uma msgbox solicitando que o usuário insira a senha. Esse mesmo caso funciona quando o usuário clicar em Cancelar. Mas eu não consigo fazer essa verificação de senha não informada se eu declarar uma variável para senha em padrão numérico, tal como Integer ou Long. Como resolvo isso? Ele não aceita checar senha=""
Grato.
Olá William. Vamos lá... A ideia de colocar a senha em uma planilha e oculta-la pode ser uma boa opção, principalmente se você vai dar liberdade ao usuário de trocá-la.
Quanto a segunda dúvida tente utilizar a instrução IsEmpty(ACTIVECELL)
Essa instrução verifica se a célula não foi preenchida. você pode substituir a célula pela sua variável que vai funcionar também.
Convido você a se inscrever no canal e acompanhar as mais de 300 vídeos aulas que já publiquei (só do Excel são mais de 150!) e no dia 15 de outubro serei um dos palestrantes do 1º Encontro Presencial EXCEL WEEKEND.
Um encontro de profissionais da área. Participe! #ExcelWeekend
Página do evento: bit.ly/2bRtXi1
Bons estudos e sucesso!
Olá Professor,
Te chamo assim porque já assisti tanta aula sua que é isso que você é: meu professor. heheh
Uma observação: mesmo a nossa senha sendo dinâmica (armazenada em nossa var "senha") se o usuário for espertinho a ponto de ir debugar o código, ele não poderá saber qual é a senha passando o mouse sobre a variável senha?
ou digitando" ? senha" na verificação imediata abaixo?
Olá Speedylamborghini! Sim! Ele consegue... mas para evitar que isso aconteça basta proteger o projeto VBA (ensino isso em uma das aulas desse curso!). Dai não tem perigo!
Se ainda não é um inscrito(a), convido você a se inscrever em meu canal de vídeos!
Espero que os mais de 450 vídeos tutorias que possuo atualmente (só de Excel são mais de 200!) possam lhe ajudar.
Bons estudos e sucesso!
Sim, já cheguei lá e vi como se faz.
Muito obrigado professor!
ps: Já sou inscrito e sempre "ajudo" com meu like
Não consegui ainda poderia me mandar um exemplo .
Me ajudará bastante
Bom vídeo... Só uma pergunta, se o usuário colocar a senha errada,como ficaria o código, para que uma mensagem com "msgbox", fosse emitida?... Obg!!!
Adilson Valotto Olá Adilson! Neste caso vamos utilizar os conceitos do desbio de execução ON ERROR... Mas isso é assunto para outras aulas... dê uma pesquisada em ON Error Resume Next e On Error Goto
no meu ele entra na tela do VBA em depuração, tb gostaria de entender isso
Boa noite pessoal/professor ! , poderiam me ajudar por gentileza ? eu digitei a senha correta(123) para desbloquear, mas meu excel informa que a senha está incorreta, o que devo fazer ?
E como criar esse código para usar nas outra planilha ex: se eu abrir outra planilha no Excel sem ser as nas guias usar o código para bloquear qualquer uma ?
Desde já agradeço !
Olá, Alessandro.
Gostaria de lhe parabenizar pelo conteúdo das aulas! Tem sido de grande ajuda no meu trabalho...
Fiquei com uma dúvida nesse código: porque você chamou a variável PlanilhaAtual de variant?
Se eu utilizasse As Sheets e For Each PlanilhaAtual in Workbook teria a mesma função o código?
Muito obrigada!
Olá Gabriela! Acho que utilizei do tipo Variant pois queria testar a variável. Quando ela foi inicializada no for each ela foi criada como um objeto e não como uma variável string ou numérica. Deixei a cargo do Excel a identificação do tipo do objeto... Pode ter sido uma solução que encontrei na hora de gravar a aula.
Se o usuario digitar a senha errada, como posso tratar? qual o argumento para comparar o valor do inputbox?
Olá Edmundo! Se o usuário digitar a senha errada, capture o resultado do inputbox em uma variável e através do IF você conseguirá avaliar e sair da rotina com o Exit Sub sem carregar o conteúdo.
Alessandro, não estou conseguindo ver a relação entre a senha dos dois botões!
Galera, estou com uma dúvida, no VBA qual a diferença de "=" para ":="
Será pq o meu deu certinho, coloco a senha 123....porém ao ir em desbloquear e colocar 123...dá senha errada?
Aula feita de 0:00 até o fim
Fico feliz Luiz que tenha gostado da aula. Há 200 aulas de VBA em meu canal no RUclips. Espero que encontre muito material de estudos por lá!
Se você ainda não é um inscrito(a), convido a se inscrever em meu canal de vídeos!
Espero que os mais de 700 vídeos tutorias que possuo atualmente (só de Excel são mais de 370!) possam lhe ajudar.
Site que criei com todos os vídeos dos cursos completos organizados: sigaonerd.esy.es/index.html
Portal de cursos próprio: cursos.alessandrotrovato.com.br
Bons estudos e sucesso!
Olá Alessandro vc teria alguma macro que fizesse a mesma coisa da fórmula = se(cont.se($a$1:a2;a2);>1;"D";"")
Olá Alessandro! Interessante sua pergunta. Você deve estar falando da instrução IF. Em VBA você utiliza a função IF e dentro dela faz a validação com a função cont.se (application.worksheetfunction.countif).
Convido você a conhecer os demais vídeos do canal. Atualmente tenho quase 360 vídeos publicados sendo que do Excel já são mais de 150! Segue abaixo o link para inscrição no canal. As aulas estão todas gravadas e liberadas em playlists para facilitar os estudos.
Link de inscrição: ruclips.net/channel/UCw774e7LrGYFc-D97JT1oCg
Site com conteúdo (dos cursos completos) em ordem de estudo: sigaonerd.esy.es/index.html
Bons estudos e sucesso!
Alessandro! Duvido que consiga me ajudar nessa:
queria fazer um For Next, mas está dando erro, não funciona, o que pode estar errado?
For Alessandro 1 to Todososvídeos
Activevideo.select ("nota 10") = "Curtir"
offset(0,1). curtir próximo vídeo
Next
msgbox " Parabéns!!! Excelente material, excelentes aulas!!!", vbokonly; "Aprendendo VBA com o Trovato"
não consegui ve as planilhas para downloads
Olá Luiz! Elas estão para download no meu blog: www.sigaonerd.com na seção APOSTILAS DO NERD
Se ainda não é um inscrito(a), convido você a se inscrever em meu canal de vídeos!
Espero que os mais de 420 vídeos tutorias que possuo atualmente (só de Excel são mais de 170!) possam lhe ajudar.
Bons estudos e sucesso!
Aula concluída
👍😝👍👍👍👍👍
#maisum