Muita gente confunde tamanho de macro com velocidade
uma macro de 500 linhas pode ser mais rápida do que uma de 50 linha para fazer a mesma coisa
Nos Loop isso se torna ainda mais evidente
imagina o seguinte loop de 1 milhão de ciclos
n=1
For L=1 to 1000000
if n=1 then
...
end if
if n=0 then
...
end if
next
se um dos if não é necessário durante o loop, por menos tempo que leve a verificação esse pouquíssimo tempo vai ser multiplicado por 1milhão
nesse outro código uma das verificações é tirada de dentro do loop
n=1
if n=1 then
For L=1 to 1000000
...
next
end if
if n=0 then
For L=1 to 1000000
...
next
end if
em grandes loops onde se tem varias verificações que apenas uma ou outra é verdadeira durante o loop se pode economizar bastante tempo de acordo com o caso
essa é apenas uma maneira simples de expor o caso
goto e gosub :
muita gente critica o goto e o gosub falando que torna o código difícil de lê
mas tem vários casos que eles tornam o código mais simples e talvez mais rapido
considero o estudo das funções importante para o aprendizado de logica de programação, isso pq são comandos simples e fáceis que estimulam o raciocínio estrutural da pessoa.
se vale a pena usar ou se torna o código difícil, se é criticado pelos ditos profissionais ou não, cada um que deve escolher o rumo
"conselhos as vezes nos livram de um monte de dor de cabeça mas, aprender a pensar por sí próprio tbm é importante, afinal nem sempre vamos ter esses profissionais para resolver nossos problemas"
Goto
quando eu aprendi em um tk90x ele pulava para linhas Goto 100
no VBA se pode colocar uma bandeira na posição que tem que ir
Goto saida
...
...
Saida:
...
end sub
no vba exite o exit for, exit if
mas e se tiver um monte de for next e um monte de if alinhados ?
for:if:for:if:for:if:end if:end if:next:end if:next
mas e se dependendo da situação se queira sair de todos os if e loop internos?
for:
if:
for:
if:
for
if:
"como sair de todos os laços e ir para o primeiro?" Goto Pulou
end if:
next
end if:
next:
end if:
Pulou:
next
SE alguém tiver uma maneira mais fácil gostaria de aprender tbm
bem essa é apenas um das utilidades
o gosub é outro caso que depois eu ensino
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 : 05/07/2015 9:46 am