Notifications
Clear all

O VBE "se perde"?

15 Posts
4 Usuários
0 Reactions
2,183 Visualizações
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Muitas vezes vemos membros aqui e em toda internet dizendo que o código VBE "se perde" sem razão alguma e por isso não é linguagem confiável.

Seu VBE já "se perdeu"? Como foi? Quando vc resolveu, era problema do VBE ou do seu próprio código?
Seja objetivo.

abs,

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 15/04/2015 8:11 am
(@edcronos)
Posts: 1006
Noble Member
 

bem, depende do que quer dizer sobre se perde
é necessário arrumar um cachorro farejador para achar ele ?

não vou falar que é tão confiável afinal deve ter seus remendos
na maioria acho que são as pessoas que se perdem no vbe,

pq o que deveria ser logico as vezes não faz logica
mas como não podemos consertar o vbe e sequer temos capacidade para isso
simplesmente temos que nos adaptar

acho que muitos culpam instruções ou procedimentos pela simples falta de capacidade de lidar com elas ou por problemas encontrados "mas podemos aprender a aproveitar tais situações ou a contornar os problemas"
claro que se der para simplificar "pq complicar"

um laço for each pode facilitar
mas as vezes falta um step -1 " tem como adicionar, mas complicaria demais" http://vba4all.com/reverse-order-of-in-a-for-each-loop/

mas bem, temos que aprender oq temos em mão, se não der para usar inventamos uma maneira diferente,
e para não se perder prenda uma corrente entre o vbe e vc, ou então faça um loop infinito vc>vbe>vc>vbe...

Somente é impossíveis até que alguém faça
A logica está presa na irracionalidade humana, e morta nos que se consideram donos da verdade.

"ALGUM MODERADOR ME EXPULSE DO FÓRUM POR FAVOR"

 
Postado : 15/04/2015 8:51 am
(@necron)
Posts: 117
Estimable Member
 

Não sei o que quer dizer com se perder, mas meu problema com o VBE é a MS que vive lançando updates que estragam meu trabalho!

A ultima foi um update lançado entre 10 a 25 de dezembro/14, que quebrou todos meus botões Activex em planilhas que eu desenvolvi e enviei para Usuários. Até hoje tenho problemas com isso, e tenho dado alternativas diferentes para os usuarios do meu trabalho, como por exemplo excluir alguns arquivos temporarios e desinstalar atualizações da MS...

Enfim, acho o VBE meio largado, a MS deveria dar mais importancia para ele.

O VBE esta amarrado em mim, e não vai se perder ;)

Fui Util? Click na "Mãozinha" ali do lado >>>> e agradeça.

 
Postado : 16/04/2015 6:11 am
(@gtsalikis)
Posts: 2373
Noble Member
 

Pow, Fernando, esse "seja objetivo" é sacanagem, kkkk.

Já tive esse problema algumas vezes.

No começo, enquanto estava aprendendo, eu fiz alguns códigos que as vezes funcionavam, as vezes não. Ou funcionavam se eu os executasse 2 ou 3 vezes. Não lembro bem para explicar porque, mas posso dizer que, depois de ter um pouco mais de experiência, eu refiz os códigos e nunca mais falharam. Ou seja, fui eu quem não escreveu direito.

Também tive alguns problemas em códigos que "deviam funcionar", mas não funcionaram. O que fiz foi "amarrar" melhor, assumindo o controle de algumas coisas, por exemplo, usando "option explicit", interrompendo os cálculos (cálculo manual dda planilha) durante a execução do código, pegando as datas como Cdate(range), por exemplo. Emfim, o código "se perdeu" porque eu tinha deixado ele aberto para se perder. A partir do momento em que eu resolvi "assumir o controle", não deu mais erro.

Outros casos são com medidas de controle e segurança que geram descontrole. Por exemplo, não uso mais "on error resume next", porque em 99% dos casos só atrapalha. Em formulários, também, tem muita gente tentando controlar quando vc pode acessar um textbox, etc, e vão incluindo eventos e mais eventos para controlar de todas as formas. Eu simplesmente deixo todos eles desabilitados, e só permito que seja habilitado o textbox que vc pode usar, e somente QUANDO vc pode usar, para não aumentar os problemas.

No mais, eu crio subs pequenas (ou faço blocos), e, antes de começar, estabeleço padrões que vou seguir em todas as subs, assim, eu testo todas as subs (ou bocos) exaustivamente, para tentar evitar erros. E, claro, como eu tento seguir o mesmo padrão em todas, fica mais fácil evitar, identificar e corrigir erros. (Principalmente se eu uso chamar uma sub dentro de outra).

Por último, eu evito (tanto quanto possível), usar recursos mais específicos. Por exemplo, eu vi e tive vários problemas com listview que some devido à versão do Excel instalado e dos plugins e atualizações. Também tive problemas por causa da variação entre sistemas de 32 e 6 bits. Então, se eu posso escolher, eu prefiro fazer um código que evite esses recursos. Porém, se não tiver solução, então eu faço uso deles, mas já sabendo que posso ter problemas.

Lembre-se de AGRADECER aos que te ajudaram, e de marcar o tópico como [Resolvido]
Gente que cuida de gente.

Gilmar

 
Postado : 16/04/2015 9:00 am
(@necron)
Posts: 117
Estimable Member
 

Aproveitando o gancho do ListView, acho lindo e maravilhoso! Mais comecei a evitar porque em algumas maquinas funcionam e outras não, mesmo eu seguindo varias dicas de contornar esse erros.

@ gtsalikis, Você trabalha com o que? (Desculpa curiosidade)

Eu sou Analista Comercial, e Business Inteligence, faço muitas coisas e facilidades com Excel... :)

Fui Util? Click na "Mãozinha" ali do lado >>>> e agradeça.

 
Postado : 16/04/2015 11:37 am
(@gtsalikis)
Posts: 2373
Noble Member
 

Sou professor de inglês.

Lembre-se de AGRADECER aos que te ajudaram, e de marcar o tópico como [Resolvido]
Gente que cuida de gente.

Gilmar

 
Postado : 17/04/2015 9:03 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Lendo os posts acima, vejo que não tenho muito a acrescentar, eu concordo com o que dizem então só vou colocar uns pareceres.

1º ) O maior impasse é criado pelo próprio WINDOWS com inúmeras bibliotecas e referencias que não se comunicam ou são facilmente manipuladas; e agora os problemas com as versões 32 e 64 bits.
2º ) Devido ao fator acima os Pacotes Offices ficam incompatíveis, logico que precisam de atualizações, mas deveriam ter bibliotecas distintas, e exclusivas para o VBE, independente se está utilizando Excel, Acces, Word ou outro produto MS que tenha VBA;
3º ) ListView.... já passei tanto perrengue com este controle, mas tudo culpa das bibliotecas, ou seja o mesmo caso citado acima, em um PC funciona em outro com o mesmo office e Windows não, porque em muitos casos tem de habiltar e/ou registrar OPCX(s) e DLL(s);
Na maioria dos erros, tanto em rotinas e no proprio editor do VBE que as vezes travava e tinha de reiniciar o excel, foi devido a instruções ou referencias erradas, mas com um pouco de pratica acabamos deixando de lado determinados vícios.
Quanto a confiabilidade, eu acho que precisam melhorar muito, realmente fico sempre com um pé atrás quando repasso e envio arquivos a outros.

[]s

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 17/04/2015 11:11 am
(@edcronos)
Posts: 1006
Noble Member
 

engraçado que o proprio autor do topico se absteve de dar sua opinião

Somente é impossíveis até que alguém faça
A logica está presa na irracionalidade humana, e morta nos que se consideram donos da verdade.

"ALGUM MODERADOR ME EXPULSE DO FÓRUM POR FAVOR"

 
Postado : 17/04/2015 12:03 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Mais um detalhe quanto ao assunto, é que devemos ter sempre em mente que o excel não foi criado para se construir programas, ele tem o VBA incorporado para ajudar em alguns casos, apesar de conhecer gente que nem sabe e nunca utilizou e ter suas planilhas funcionando da forma que querem, para quem quer entrar no mundo da programação deveria utilizar os programas específicos para tal.

Eu acho que as dicas no tópico abaixo ainda valem :

Uso Racional do EXCEL
viewtopic.php?t=2474&p=10777

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 17/04/2015 1:41 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Ed Ed, vc tem um jeito provocativo de colocar as coisas. Pq vc não pergunta: Fernando, e você, qual sua opinião?
Você precisa ser irônico?

Na verdade ninguém pediu minha opinião até agora.
Eu não acredito que o VBE se perca. Pra mim se e quando o VBA se perde, a culpa não é da ferramente, é minha. E toda vez que meu VBE se perdeu, era extamente isso. Falha minha. Daí eu aprendo e melhoro. Sempre encontro solução para os problemas que enfrento.

Eu criei este tópico exatamente pq existem muitas pessoas que usam essa desculpa esfarrapada *(de que o VBA é ruim, pq *se perde*) para justificar seus próprios erros de utilização do ambiente.

Portanto eu queria ver a opinião geral da galera... Por eqto, estou lendo e acompanhando tudo. Quem sabe em breve eu opino mais !

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 17/04/2015 1:47 pm
(@edcronos)
Posts: 1006
Noble Member
 

Mauro Coutinho
ele tem o VBA incorporado para ajudar em alguns casos,
apesar de conhecer gente que nem sabe e nunca utilizou e ter suas planilhas funcionando da forma que querem

mas isso vale para cada caso, depende muito do que a pessoa quer de sua planilha
uma planilha que não trabalha com grades quantidades de dados ou esses dados não precisem de muita intervenção realmente o vba é desnecessário

para quem quer entrar no mundo da programação deveria utilizar os programas específicos para tal.

quem usa tem que saber as limitações e que o proprio vba está atrelado ao office ou a outro programa em questão,
e quem usa sabe que é apenas para automatizar tarefas que sem o vba seria impossível

mas pq não ir um pouco mais além se assim a pessoa o quer, e não sendo no intuito profissional ?

muitos tiveram problemas com varias coisas dentro do mundo excel e vba e tiveram que aprender a lidar com elas, seja com listview, variaveis publicas ou outra coisa.

eu já comentei que mexo no vba e excel como lazer
então não estou amarrado a conceitos perfeccionistas, então crio minhas proprias regras de programação
e meus estudos é de acordo com minha necessidade

o uso do vba poderia levar o uso do office muito além se não fosse tão largado ,
mas parece que a ms tem medo de arrumar um concorrente para o vb

o vba é uma liguagem basica ,limitada atrelada ao office ?
Sim
mas quantas obras de arte existem que foram feitas apenas com martelo e formão ?

as vezes o maior limitador somos nós mesmo e não as ferramentas que temos

Somente é impossíveis até que alguém faça
A logica está presa na irracionalidade humana, e morta nos que se consideram donos da verdade.

"ALGUM MODERADOR ME EXPULSE DO FÓRUM POR FAVOR"

 
Postado : 17/04/2015 2:11 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Penso que o VBA "se perde" sim, seja por mecanismo de processamento, seja por elaboração de codigo mal escrito. Esse ultimo motivo, acho que em 98% dos casos. Ja presenciei situações do tipo.
Porém em praticamente todos os casos que observei sempre tem relação que recursos externos graças as facilidades da Automação. Dessa forma compactuo com a opinião do Mauro Coutinho que a maioria dos problemas se devem em como o Windows gerencia as bibliotecas. Ja vi ate mesmo o proprio FileSystemObject falhar !
Mas isso nao é exclusivo do VBA. O VBA utiliza o mesmo compilador do Visual Basic que tambem acontece os mesmos problemas. Portanto nao acho valido esse argumento de que é uma plataforma instavel simplesmente por esta atrelado á aplicativos Host.

Obs. Pra quem desenvolve com .NET tambem pode se deparar com problemas parecidos quando se usa recursos com interface COM.

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 17/04/2015 2:38 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Adelson, o inefável, o incomparável, o inalcançável, o sensacional, o último ninja da primeiro leva, eis que ele retorna !!!
Seja bem vindo bro !!

Valeu pela opinião bem clara e objetiva.

Concordo com vocês, que na maioria dos casos é problema do código desenvolvido, e poucos casos estão relacionados a objetos / referências não nativas.

Precisa ser muito *viajado no VBA para encontrar e saber contornar essas necessidades. Eu dificilmente encontro problemas de referências, pois as uso muito pouco. Eu gosto muito do FSO. ListView eu evito ao máximo.

FF

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 17/04/2015 2:55 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Pow ff valeu pelo inefável !!

Segundo a WP....

Inefável, que significa o que não pode ser expresso verbalmente1 , é um termo utilizado para identificar algo de origem divina ou transcendental e com atributos de beleza e perfeição tão superiores aos níveis terrenos que não pode ser expresso em palavras humanas.

Que não se pode exprimir por palavras; indizível: & Encantador, inebriante.

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 17/04/2015 3:09 pm
(@edcronos)
Posts: 1006
Noble Member
 

Ed Ed, vc tem um jeito provocativo de colocar as coisas. Pq vc não pergunta: Fernando, e você, qual sua opinião?
Você precisa ser irônico?

não foi bem uma provocação " talvez sim :P "
foi mais uma incitação para ter a sua opinião :D

Na verdade ninguém pediu minha opinião até agora.

todos ao dar sua opinião esperava que o próprio autor , profissional e já tão calejado na área, nos premiasse com sua própria critica a respeito "quem le vai pensar que estou desesperado por uma vaga de emprego"

creio que essa enquete deveria ir para a area de dicas,
afinal vai ter a opinião de gente já experientes nas falhas seja de programação ou do próprio vba, e aqui acaba se perdendo

deveria ter outras enquetes tbm
tipo sobre formas de programação, e extruturas das macros, como as pessoas planejam seus codigos, se preferem macro ou formulas e por que, e assim por diante

Somente é impossíveis até que alguém faça
A logica está presa na irracionalidade humana, e morta nos que se consideram donos da verdade.

"ALGUM MODERADOR ME EXPULSE DO FÓRUM POR FAVOR"

 
Postado : 17/04/2015 4:46 pm