sexta-feira, 2 de outubro de 2009

Como somar em intervalos

Digamos que vc queira somar dinamicamente intervalos de meses, tipo as valores de março a dezembro ou janeiro a abril, etc..

exitem duas formas de fazer isto dinamicamente:
1. através de função ESCOLHER:

Código:
=SOMA(ESCOLHER(inicio;jan;fev;mar;abr;mai;jun;jul;ago;set;out;nov;dez):ESCOLHER(fim;jan;fev;mar;abr;mai;jun;jul;ago;set;out;nov;dez))
*os meses e as referencias (inicio e fim) são células nomeadas.

como funciona na célula "inicio" coloca-se o numero do indice de inicio, como mar = 3, e para fim, como jul=7.
assim irá resultar no mesmo que

Código:
=SOMA(MAR:JUL)
2. através da função DESLOCAR:

Funciona da mesma forma que a anterior, porém é mais dinamica:

Código:
=SOMA(DESLOC(jan;0;inicio-1;1;fim-inicio+1))
como funciona:
"=soma(desloc(" aqui colocamos a célula de inicio ;

a quantidade de linhas acima ou abaixo de jan (ex: jan = F1, se pusermos -2 será D1 ou 4 será H1) ;

então definimos a coluna de inicio (neste caso a célula inicio representa 3, porém devemos descontar 1,senão começa em 3 mas não conta o 3) ;

definimos então a extensão de contagem, neste exemplo começamos em 3 então iremos somar de 3 em diante, aqui definimos de quantos células iremos somar a partir de 3, como no exemplo anterior a célula "fim" representa julho, então a extensão é julho - mar + 1 , (esta soma é para incluir o julho na soma)

o resultado pode ser coneferido no anexo:

Desloc e escolher.zip

Como somar em intervalos

Digamos que vc queira somar dinamicamente intervalos de meses, tipo as valores de março a dezembro ou janeiro a abril, etc..

exitem duas formas de fazer isto dinamicamente:
1. através de função ESCOLHER:

Código:
=SOMA(ESCOLHER(inicio;jan;fev;mar;abr;mai;jun;jul;ago;set;out;nov;dez):ESCOLHER(fim;jan;fev;mar;abr;mai;jun;jul;ago;set;out;nov;dez))
*os meses e as referencias (inicio e fim) são células nomeadas.

como funciona na célula "inicio" coloca-se o numero do indice de inicio, como mar = 3, e para fim, como jul=7.
assim irá resultar no mesmo que

Código:
=SOMA(MAR:JUL)
2. através da função DESLOCAR:

Funciona da mesma forma que a anterior, porém é mais dinamica:

Código:
=SOMA(DESLOC(jan;0;inicio-1;1;fim-inicio+1))
como funciona:
"=soma(desloc(" aqui colocamos a célula de inicio ;

a quantidade de linhas acima ou abaixo de jan (ex: jan = F1, se pusermos -2 será D1 ou 4 será H1) ;

então definimos a coluna de inicio (neste caso a célula inicio representa 3, porém devemos descontar 1,senão começa em 3 mas não conta o 3) ;

definimos então a extensão de contagem, neste exemplo começamos em 3 então iremos somar de 3 em diante, aqui definimos de quantos células iremos somar a partir de 3, como no exemplo anterior a célula "fim" representa julho, então a extensão é julho - mar + 1 , (esta soma é para incluir o julho na soma)

o resultado pode ser coneferido no anexo:

Desloc e escolher.zip

Tutorial - Grafico em gauge - parte 1

Como criar um grafico no formato Gauge (velocimetro)?

vejamos como:

- primeiramente consiga uma imagem de fundo para o gauge.
- em segundo um ponteiro.
- então insira um circulo (desenho) sem linha nem cor de fundo.
- agrupe o ponteiro e o circulo de forma a que a base do ponteiro fique no meio do circulo.
- após isto podemos criar o grafico com uma macro tipo esta:

     Dim Oldcell
Dim Rng, Angle, i

Set Oldcell = ActiveCell 'define a célula atual para retorno
Rng = Range("s12").Value ' define o angulo de 0 graus a 160 graus

With ActiveSheet.Shapes("Grupo 5") 'este é o chape que irá girar
.Rotation = 0 'reseta a zero a rotação
For i = 1 To Rng 'define que para cada incremento de grau
Range("r13").Value = (i / Range("r15").Value) * 10 'mostra no grafico o valor de acordo com: 10/160 * 100
.IncrementRotation 1 ' define a velocidade do ponteiro, quanto maior, menor será a precisão
DoEvents
Next i
End With

Range("R13").Value = Range("l4").Value 'exibe o valor digitado para evitar arredondamentos

Oldcell.Select 'retorna a célula selecionada

'Build by Josemar © www.jmdias.com

ficando desta forma:


Mais tutos em breve...
Baixe a Planilha: