Escolar Documentos
Profissional Documentos
Cultura Documentos
I) Introduo .....................................................................................................................1 II) Contedo do Manual.....................................................................................................5 III) Cpia Simples..............................................................................................................6 IV) Movimentao e Seleo...........................................................................................8 V) Formatao................................................................................................................12 VI) Grficos com um toque.............................................................................................15 VII) Importao e Ajuste de Dados.................................................................................18 VIII) Ordenao de Bloco................................................................................................25 IX) Cpias Incrementadas...............................................................................................28 X) Transformaes..........................................................................................................37 XI) Miscelnea.................................................................................................................40 XII) Macros Diversas.......................................................................................................43 XIII) Funes ..................................................................................................................44
I) Introduo
A planilha Macros contm diversas funes e macros, que podem contribuir muito para o aumento de produtividade em EXCEL. O autor dessa biblioteca Paulo Buchsbaum (pbuchsbaum@globo.com) morador do Rio de Janeiro. 1 - Localizao No EXCEL 97/2000 em portugus, geralmente, o diretrio em que deve ficar o arquivo Macros C:\ARQUIVOS DE PROGRAMA\MICROSOFT OFFICE\ OFFICE\XLINICIO. Particularmente no Windows 2000 e no Windows XP ele deveria ser configurado para armazenar o arquivo em um diretrio similar, algumas vezes Office10 ou Office9. Em alguns micros, o diretrio final XLStart ao invs de XLInicio. 2 - Layout A primeira aba de Macros exibe um calendrio onde pode se entrar diretamente o ano desejado ou clicar na seta ao lado do ano para andar de ano em ano, mostrando todos feriados, inclusive os mveis. H links para exibir os feriados nacionais, americanos e outras datas especiais, incluindo o incio das estaes. Finalmente h um link para obter uma ajuda bsica sobre as Macros. 3 - Cores Ele salva a paleta de cores modificada especialmente para Macros, para todos arquivos abertos, de modo a disponibilizar algumas cores, parecidas com as atuais, mas com mais opes de tons claros. O atalho Ctrl Alt K restaura a paleta padro se a paleta do arquivo for personalizada e vice-versa. Em caso de arquivo externo que utilize muito tons escuros, s vezes necessrio usar a paleta padro.
Abaixo as 16 cores novas que foram personalizadas em Macros com seu cdigo RGB em lugar de outras 16 cores descartadas, extradas da tabela de 40 cores principais selecionveis interativamente de um total de 56 cores da paleta de cores do Excel Bege (237,220,147) Verde Musgo (204,204,0) Verde Limo (241,254,118) Marrom (229,160,49) Rosa Escuro (255,145,182) Roxo Escuro (204,102,255) Goiaba (255,129,132) Amarelo Claro (255,255,204) Azul Cu (153,204,255) Roxo Claro (228,201,255) Laranja Claro (255,225,195) Rosa Claro ( 255,197,226) Cinza Claro (221,221,221) Verde Folha (97,215,128) Azul Cobalto (64,207,222) Verde Esmeralda (0,232,0)
4 - Salvamento automtico Alm disso, Macros tem o recurso de AutoSave que salva todas as pastas abertas, exceto as novas (que ainda no tem nome) e o prprio arquivo Macros. Esse processo feito no intervalo de minutos especificado na clula I21 (Chamado de Minutos pertencente Aba Help). Para desativar o Auto Save, preencha um 0 ou nmero negativos de minutos (aparece a mensagem Inativo) na mesma clula. Se nmero negativo s mantm o AutoSave na mquina do criador de Macros Macros permite tambm que se desative o AutoSave do arquivo corrente com Ctrl Alt S, que pode ser reativado mais tarde com o mesmo Ctrl Alt S. O arquivo com autosave desativado preserva esse estado mesmo saindo do Excel. Finalmente, ao fechar o Excel, o sistema no pede para salvar o arquivo Macros, mesmo que ele tenha sido alterado. (S aceita salva explcita). 5 - Acesso a pasta Macros O Excel entra com uma pasta vazia (que o comportamento normal de Macros), sempre que a execuo no fizer meno a um arquivo especfico. Para facilitar o excesso a Macros e seu calendrio, o sistema disponibiliza Ctrl Q, para ir para Macros e a qualquer momento Ctrl Q volta a pasta original. 6 - Acesso aos comandos de Macros Todas as funes de Macros podem ser acessadas pelo menu disponvel pelo atalho Ctrl Shift X. Esse atalho permite acesso a execuo de macros internas a Macros ou externas atravs do uso de uma abreviatura, escolhida pelo usurio. A relao completa feita pelo usurio acessvel a todo momento seguindo-se o link situado na 2 a. coluna do cabealho da aba HELP. Operaes sem atalho 1) 2) 3) 4) 5) decorado (Ctrl Shift X) Importa dados pondo frmulas Copia Formulas p/ tabela <Ctrl Alt X> Quebra texto em colunas <Alt Q> Deletar linhas com padro <Ctrl Alt D> Vai para ltimo <Ctrl Shift T>
6) 1o. Valor Dif p/ baixo <Ctrl F> 7) 1o. Valor Dif p/ cima <Ctrl Shift F> 8) Busca Palavras <Ctrl Shift J> 9) Repete Busca <Ctrl J> 10) Pe Form & Larg L/C <Ctrl Shift L> 11) Formatao Mista <Ctrl Shift Q> 12) Poe Frmula de Soma <Ctrl Shift S> 13) Calculadora Tabular <Ctrl Shift Y> 14) Muda Ref Form <Ctrl Alt Y> 15) Oculta / Agrupa <Ctrl Shift U> 16) Copia Sofisticada <Ctrl Shift P> 17) Subst Formato & Cia. <Ctrl Shift I> 18) Subst Nomes Form <Ctrl Shift N> 19) Vai p/ Nome <Ctrl Alt N> 20) Atingir Meta <Ctrl Shift M> 21) Copia endereo <Ctrl Alt C> 22) Copia Visveis <Ctrl Shift V> 23) Outras Opes <Ctrl Shift D> 24) Atalhos p/ decorar Opes com atalho para decorar 1) Copia para baixo <Ctrl Shift C> 2) Cola Formula <Ctrl R> 3) Copia Form p/bx c/Formato <Ctrl Shift R> 4) Copia Formato p/ Bx <Ctrl M> 5) Muda para valor <Ctrl W> 6) Muda p/valor s/ autofiltro <Ctrl Shift W> 7) Aplica Borda Padro <Ctrl Shift B> 8) Aplica Caixa de Texto <Ctrl B> 9) Formato Tab Parmetros <Ctrl E> 10) Formato Tab Dados <Ctrl D> 11) Formato Ttulo <Ctrl T> 12) Formato Percentagem <Ctrl P> 13) Formato Inteiro <Ctrl Z> 14) Formato em Milhares <Ctrl Shift Z> 15) Especifica e Faz Grfico <Ctrl Shift G> 16) Faz Grfico <Ctrl G> 17) Especifica e Faz Ordenao <Ctrl Shift O> 18) Faz Ordenao <Ctrl O> 19) Especifica e Faz Teclas <Ctrl Shift A> 20) Faz Teclas <Ctrl A> 21) Trata Nome <Alt N> 22) Copia Frmula p/ Clipboard <Alt C> 23) Copia Frmula p/ Lado <Alt V> 24) Volta Opes incomuns (Ctrl Shift D) 1) Cor Personalizada On/Off <Ctrl Alt K> 2) Auto-Save da Planilha On/Off <Ctrl Alt S> 3) Valor de Frmula e Traduo <Ctrl Alt V> 4) Muda agrupamento esq/top <Ctrl Alt G> 5) Busca Primeiro Erro <Ctrl Shift E> 6) Copia Nome Local <Ctrl Alt L> 7) Muda margem impresso <Ctrl Alt P>
8) Copia Formula sem igual <Ctrl Alt C> -----------------------------------9) Transf. colunar em Sub Total 10) Transf sub-total em colunas 11) Faz copia formula em diagonal 12) Converso No.americano p/ Br 13) Converso texto c/ No. Br para Br 14) Converso de formato de data 15) Volta 7 - Execuo de rotinas ou expresses O menu principal , acionado com Ctrl Shift X, permite a execuo de expresses/ procedimentos / funes internos ou externos a Macros Isso feito internamente no cdigo pela funo Evaluate para expresso (Quando funciona, o sistema emite a mensagem A expresso vale [ ...]) Quando no funciona o sistema tenta atravs do comando Run. (A a mensagem passa a ser O resultado [ ]. A idia especificar diretamente a expresso/ procedimento ou funo desejada e o sistema simplesmente exibe o resultado na tela. Sin (30) vira A expresso vale [0.5] 2+3 vira A expresso vale [5] UpperNoAc(Alo) vira A expresso vale [ALO] (Pasta Macros ativa ou .XLA) Macros.xls!UpperNoAc(Alo) vira A expresso vale [ALO] (Pasta Macros no ativa) No caso de uma expresso/procedimento/funo de execuo muito corriqueira pode valer a pena tabular atravs de uma abreviatura textual, a ser usada nesse contexto, e colocla no intervalo nomeado MacrosExt na aba Help de Macros. Pode-se inclusive misturar funes definidas pelo usurio com funes implcitas do Excel: UpperNoAc(Alo) & Trim( Mala) devolve A expresso vale [AloMala] Outra forma (Internamente resolvido pelo comando Run) consiste em especificar o nome da rotina / funo como habitual. Nesse caso, quando a nica diferena que a rotina quando est dentro de Macros, no precisa aparecer com o prefixo (Macros.xls) especificado. UpperNoAc(Alo) vira O resultado [ALO]. Nesse caso, pode-se at, mas no se recomenda, adotar algumas liberalidades (omitir aspas em parmetros tipo texto, separando a rotina dos parmetros apenas por vrgulas) e ainda funcionar, pois como o comando Run trabalha. Ao especificar uma rotina ou expresso, o menu o mantm na prxima execuo. Uma utilidade direta atribuir teclas a rotinas, temporariamente, para acelerar uma execuo. Isso feito a partir da rotina ATec evocada diretamente no Ctrl Shift X, ATec. Essa rotina exibe uma caixa de dilogo, onde especifica-se o atalho e o nome da rotina, separado por #, quando o atalho especificado. Quando no especificado assume-se que o atalho Ctrl H. 8 - Semforo O Macros tem agora um sistema de semforo, que acionado no programa chamador de um comando de Macros, atravs do menu principal (Ctrl Shift X). Esse semforo visa garantir a execuo no-reentrante do cdigo da programao do usurio, ou seja, garante que
a execuo do cdigo do usurio se dar TOTALMENTE depois da execuo completa da macro chamada pelo usurio dentro de Macros. Essa chamada em Macros deve ser feita usando o comando SendKeys. Macros se encarrega de desligar o semforo estabelecido pelo usurio, liberando para continuao do cdigo do programa principal. O desligamento representa o fim da execuo do comando solicitado em Macros. Um trecho tpico de programa que usa semforo descrito abaixo Run(Macros.xls!Prende) Liga o semforo no programa principal Application.SendKeys(^~x4~.~ ,True) Executa um comando de Macros Run(Macros.xls!Solta) Como testar o semforo no programa principal Comandos Esses comandos s sero executados aps o final da execuo do comando solicitado de Macros em SendKeys. 9 - Personalizao Para manter as customizaes de padres, cores e autosave para 1 mquina especfica, existe um arquivo chamado de Pessoal.xls, que est em \\admfile1\compartilhar (para quem ainda no tem na sua mquina), que deve ser mantido no mesmo caminho de Macros. Quando aparece uma nova verso de Macros, a configurao armazenada em Pessoal.xls a sobrescreve, mantendo assim a configurao pessoal do usurio. Uma vez instalado, o arquivo Pessoal.xls pode ser acessado para customizao do prprio Macros, clicando-se no boto Pess, situada no topo da aba Help. O arquivo Pessoal.xls inclui, entre outras coisas, toda a programao de teclas e macros externas personalizado para cada usurio. Dentro de Pessoal.xls, altere e salve clicando Salva Opes, ou saia sem salvar clicando em Fechar sem Salvar 10 - Personalizao dos Atalhos. Na aba TEC do arquivo Pessoal.xls possvel especificar nomes de macros (correspondente ao nome real da rotina dentro do cdigo VBA) e seu novo atalho a ser utilizado, usando a mesma conveno do comando SendKeys. Desse modo, o atalho normal (via Menu / macros ) desligado e atribudo o novo atalho, atravs do comando ON KEY. Essa atribuio feita ao se entrar em Macros e vale, naturalmente, apenas para o microcomputador onde a alterao feita. Um exemplo usar Num0 e especificar %z (ALT Z) como atalho, liberando o Ctrl Z para sua funo habitual (Undo), juntamente com o atalho <Alt> Bksp.
III.3.d) Copia s no visvel Ateno: Copia s para a parte visvel deduzida a partir do contexto, sendo assim o comando apropriado para se usar em Subtotais e Autofiltros. III.3.e) Features especiais Outra opo fazer uma seleo de vrias colunas onde os extremos so no vazios e h alguma clula vazia no meio. (referente primeira linha) Nesse caso copia as colunas no vazias da direita baseada na primeira coluna da esquerda. Caso a referncia seja realmente confusa, possvel marcar 2 reas: primeira marca-se a clula base nica e, a seguir, marca-se a rea de frmulas a ser copiada. Nesse caso, a coluna da clula nica da 1a. rea a coluna base! III.3.f) Cpia p/ Direita Essa macro permite tambm copiar frmulas para direita: A maneira mais simples, quando se marca uma rea de mais de 2 colunas, com uma ou mais linhas, quando a ltima coluna esteja em branco. Nesse caso, o Excel assume cpia para direita. Se alm da coluna adicional, usado para indicar cpia por linha, tiver mais uma coluna em branco, copia para direita, pela linha de referncia, at a ltima coluna utilizada, mesmo baseado em dados no contguos. Outra maneira de assumir como cpia para a direita usando marcao de 2 reas, quando a coluna da 1a. clula coincidente com a primeira coluna da 2a. rea (de frmulas), se essa clula estiver em uma linha no vazia. Esse conveno tenta adivinhar a inteno do usurio, de copiar para o lado, ao invs de copiar para baixo, j que uma referncia da cpia de uma coluna nela mesma, no o processo mais comum. III.3.g) S frmula ou s formato Ctrl Shift R faz a mesma coisa que o Ctrl Shift C, s que mantendo o formato anterior. Ctrt Shift K faz a mesma coisa que o Ctrl Shift C, s que copia apenas o formato. III.3.h) Cpia Forada Para encerrar, existe uma maneira de forar que o sistema enxergue uma determinada linha e coluna limite para cpia, atravs do uso dos nomes CCOPMAC para a coluna desejada e LCOPMAC para a linha desejada, apenas na aba corrente! Tome o cuidado de apagar esses nomes assim que terminar seu uso. Note que esse nomes prevalecem sobre tudo. Assim se CCOPMAC est definido e LCOPMAC no est, mesmo sem seleo, a macro copia para direita.
IV.1.a) Movimento para cima e para baixo Movimenta as linhas (s se contguas) envolvidas na seleo para cima (Ctrl Alt Cima) ou para baixo (Ctrl Alt Baixo) 1 posio. No precisa selecionar a(s) linha(s) inteiras. Funciona mesmo com a clula corrente. Usando Alt Cima e Alt Baixo faz o mesmo mas s na regio selecionada. IV.1.b) Movimento para esquerda e para direita Movimenta as colunas (s se contguas) envolvidas na seleo para esquerda (Ctrl Alt Esquerda) ou para direita (Ctrl Alt Direita) 1 posio. No precisa selecionar a(s) coluna(s) inteiras. Funciona mesmo com a clula corrente. Usando Alt Direita e Alt Esquerda faz o mesmo mas s na regio selecionada. IV.1.c) Move seleo Movimenta a rea selecionada para esquerda (Ctrl Alt Shift Esquerda), direita (Ctrl Alt Shift Esquerda ), para cima (Ctrl Alt Shift Cima) e para baixo (Ctrl Alt Shift Baixo). Serve como um perfeito complemento para o comando F8 que mexe com o tamanho da seleo, mantendo fixo o canto superior esquerdo.
Com 3 linhas marcadas para cima, ele estende a seleo uma linha aps a rea de dados, para pode introduzir a frmula de soma, pelo comando correspondente. H um modo de trazer para o extremo direito da linha corrente. Se marcado apenas 1 trecho de 1 nica linha, assume que o usurio deseje a ltima clula da direita, da seguinte forma: 2 clulas contguas: vai at a ltima clula a direita da linha corrente 3 clulas contguas: marca at a ltima clula a direita da linha corrente 4 clulas contguas em diante: idem, com uma coluna adicional direita Finalmente, claro que se o usurio marcar uma coluna inteira, ele assume a marcao de colunas inteiras direita. muito til para automatizar cpias e movimentos de selees.
Quando se usa S na especificao MOV (MacFindMov), a base de comparao se torna mvel. Isso se pode tornar til para buscar variaes no desprezveis em um campo numrico ordenado (MacFindDif =S) ou buscar duplicatas em um campo texto ordenado (MacFindDif = N). Ateno: o valor fixo estabelecido a cada aplicao do comando!
b) Quando h mais de 1 clula selecionada Estende sua marcao para baixo (ou para cima), at a ltima (ou primeira) linha que tem o mesmo valor para coluna, de modo parecido com a opo IV-2-a. Se selecionado trecho, estende trecho. Se marcado linhas inteiras, estende seleo de linhas.
Vnn Aps o agrupamento G , especifica que nn linhas / colunas sero deixada visveis aps o agrupamento. O default 1.
~ - Negao da palavra ou frase. Se no h outro prefixo, significa apenas que a palavra / frase especificada NO pode ocorrer em nenhum lugar da clula. A palavra / frase pode ainda ser precedida por um dos prefixos abaixo, inclusive depois da negao, se for o caso. < - Exige que a palavra ou frase ocorra no incio da clula. > - Exige que a palavra ou frase ocorra no final da clula. ( Exige que a palavra ou frase seja antecedida por espao ou ocorra no incio da clula. ( Exige que a palavra ou frase seja sucedida por espao ou ocorra no final da clula. = Exige que a palavra ou frase ocorra independente, sem mesclar com outros caracteres. / - Faz o prximo caractere ser interpretado literalmente, o que uma forma de fazer com os comandos acima seja interpretados como parte da frase / palavra Ex: ~< BANANA - banana no deve ocorrer no incio de uma clula. Alm disso aceita-se ~ aps o prefixo. Nesse caso o ~ nega apenas o prefixo, mas ainda exija que a palavra / frase ocorra na clula (~ - Exige que a palavra ou frase ocorra , mas no no incio de uma palavra. )~ - Exige que a palavra ou frase ocorra, mas no no final de uma palavra. <~ - Exige que a palavra ou frase ocorra, mas no no incio da clula. >~ - Exige que a palavra ou frase ocorra, mas no no final da clula. =~ - Exige que a palavra ou frase ocorra, mas no independente. H o caso complexo, onde h dupla negao. Ex: ~<~, que significa que no verdade que a palavra ocorra fora do incio de uma clula. Assim se a palavra ocorra no meio verdadeiro e portanto no considera. Mas se a palavra aparecer no incio ou simplesmente no aparecer, o resultado OK! Alm disso, permite acionar o filtro de espaos excessivos, acentos e caracteres de controle, para facilitar a busca. H 2 opes de busca: uma opo mais estrita (exige que todas palavras / frases estejam presentes na clula) ou mais liberal (exige que pelo menos 1 das palavras / frases esteja presente no texto buscado na planilha) . O Ctrl J repete a direo adotada em Ctrl Shift J. Pode-se ainda optar, marcando-se, que se busque por frmula e no por valor da frmula. H a opo de fazer a busca para frente ou para trs, conforme o boto pressionado. Se h uma rea selecionada, ela usada para limitar a busca na coluna. Caso no h rea selecionada, faz a busca at o ltimo valor preenchido na coluna (independente de ter clulas em branco no meio), se for para a frente, ou at a primeira linha, se a busca for para trs. Ex 1: amor felicidade - Busca linhas que contenham "amor" e "felicidade" ao mesmo tempo Ex 2: "amor de me" "felicidade" ao mesmo tempo felicidade - Busca linhas que contenham "amor de me" e
Aceita espaos livremente na especificao da busca, exceto nas frases limitadas por aspas, caso em que exige que os espaos sejam respeitados.
No sensvel a maisculas e minsculas. Aceita busca em 2 colunas simultneas ao marcar o check box BUSCA COLUNA DUPLA. Nesse caso preciso entrar com novas especificaes independentes para a 2 coluna, alm do prprio nmero da coluna, uma vez que a coluna da 1a busca a coluna corrente. Repare que nesse caso para considerar que achou o alvo, preciso que as 2 condies sejam atendidas para suas colunas respectivas. Ex 3: ~campeo (Coluna 1 corrente) cidade (Coluna 2) Procura uma linha na planilha que no tenha a palavra campeo na coluna 1 da planilha e que tenha uma palavra iniciada por cidade na coluna 2 da planilha. Quando toda a planilha selecionada o processo no deixa de ser eficiente pois s busca na rea til da planilha.
V) Formatao
V.1) Faz tabela de parmetros (Ctrl E)
Formata uma tabela de 2 colunas, onde a primeira coluna so os rtulos (geralmente parmetros) e a segunda coluna so os valores. Atua na rea selecionada. Fornece uma boa apresentao instantnea para tabelas de parmetros, onde o usurio depois apenas troca a cor de fundo da 1a.coluna, se necessrio. Obedece ao formato da 1 clula, se a cor de fundo no for branco. Seno obedece ao padro, ao lado da ajuda para a funo em Macros, se houver. Seno assume fundo amarelo forte, borda mdia e cor de fonte preta. Caso a cor do fundo esquerda da configurao da cor seja colorida (diferente de cinza claro), mantm as cores das colunas j existentes, atuando mais na moldura.
Comando muito til para formatar planilhas complexas j formatadas preliminarmente, com mistura de nmeros e percentagens. Sem essa macro poderia dar muito trabalho formatar uma planilha.
Orientao: H- Grfico p/ dados horizontais (Default, exceto para Torta) V- Grfico por dados verticais Combinaes possveis: B,L,D,T (Barra; Linha, Disperso na horizontal e Torta na vertical) BV,LV,DV,TH (Os mesmos na vertical e Torta na horizontal) Os valores Titulo, Legenda do Eixo_X e Legenda do Eixo_Y so opcionais, no podendo, no entanto, definir um dado mais a direita sem definir o dado mais a esquerda (Por ex., no possvel definir o Eixo_Y, sem definir o Eixo_X) Ex: T/Produo de Arroz BV/Produo de Arroz/Ton - Torta da produo de arroz - Barras c/ srie na vertical da produo de arroz
O parte da especificao que no o nome da aba (Tipo, ttulos e eixos) armazenada no prprio grfico, no cruzamento (no topo esquerdo) entre a linha topo e a coluna esquerda da rea do grfico, sob a forma de comentrio, permitindo que a tabela origem de dados do grfico conhea automaticamente o grfico que deve estar associado a ele. Quando no se deseja usar o cruzamento dos rtulos com o cabealho para armazenar as caractersticas do grfico, preciso chamar uma clula da planilha ativa de GrafAba, e a ela conter a especificao do grfico. Em geral os rtulos do eixo esto na linha topo da rea de dados e a legenda corresponde coluna mais a esquerda da rea de dados, dependendo do tipo de dado e do tipo de grfico. (Para grficos orientados por linha) A utilidade dessa funo enorme, porque o trabalho de selecionar a rea para o grfico fica bastante reduzido e tratamento das categorias e dos rtulos totalmente automtico. Foi introduzido um carter dinmico para o ttulo e os eixos do grfico. O sistema permite introduzir na especificao referncias a planilha onde est sendo extrado o grfico. #C2 (coluna 2, linha corrente do grfico), #L4 (Linha 4, coluna corrente do grfico) e #<B2> (referncia a clula B2) Finalmente pode-se embeber no ttulo comandos iniciados por ! (ponto de exclamao). Atualmente, h o comando !H que faz com que o grfico seja exibido mesmo que os dados no estejam visveis. Nesse caso preciso usar todas especificaes de nomes para a Macros poder localizar os dados. Isso permite usar o Ctrl G para fazer grficos, sem obrigar o usurio a visualizar os dados de forma tabular. Vale apontar que o usurio facilmente pode alterar o tipo do grfico e outros atributos, como em qualquer grfico do Excel. Outro recurso, til no caso de nem todas clulas de dados a serem plotados estiverem preenchidas, delimitar que as legendas das sries e os rtulos dos pontos da srie esto contido na linha chamada de LinTopo e na coluna denominada ColEsq, sendo esses nomes de linhas e colunas aplicados na planilha desejada com o atalho Ctrl F3. Para grficos com sries horizontais, a coluna o ttulo da srie e a linha contm os rtulos dos pontos de cada srie. Para grficos com sries verticais o oposto. Pode-se usar adicionalmente ColEsqV e GrafAbaV que sero acionados no caso de uma seleo vertical de mais de uma clula. Ou seja, quando o usurio seleciona uma clula,
usa ColEsq e GrafAba fazendo o grfico de uma dada natureza. Quando ele seleciona mais de uma clula, passa a usar ColEsqV e GrafAbaV Quando se seleciona uma nica clula para cada srie a ser plotada, h um outro recurso poderoso, as colunas denominadas CIniDad e ColDir (para grficos com sries horizontais) e as linhas de nome LIniDad e LinBase (para grficos com sries verticais), delimitam as clulas que compe cada srie. Nesse caso, o sistema usa a clula corrente mais como indicador da linha base (no grfico por linha) ou coluna base (no grfico por coluna). As cores das sries segue uma sequncia diferente do automtico e so armazenadas em Macros. Siga o link do grfico na pgina de ajuda. Se o grfico j est previamente gerado as configuraes gerais so mantidas, inclusive relativo s cores das sries e da seleo do eixo (principal e secundrio). Se nomes de clula (LinTopo e ColEsq) no especificados sempre assume como legenda / pontos do eixo sempre a coluna mais a direita da rea corrente partindo da esquerda e a linha mais abaixo saindo do topo, que no seja um valor numrico. Se todos valores forem numricos pula-se colunas / linhas em brancos, para chegar aos rtulos e legendas. No grfico de disperso X xY assume-se que o grfico no contm rtulos de pontos. Ao se mudar o grfico a partir do aparecimento de uma srie de formato divergente (percentagem para nmero ou vice-versa), o sistema muda o tipo do eixo, automaticamente. Mesmo se o usurio mudar uma srie do eixo primrio para o eixo secundrio, o sistema conserva essa caracterstica para os prximos grficos (com o mesmo nmero de sries). Para manter mais de um grfico ativo na mesma aba, basta especificar no ttulo o nome do grfico (aps o sinal de ^). Assim o sistema sabe qual grfico utilizar para redesenhar. possvel at deixar a seleo do grfico a ser feita na prpria planilha colocandose uma combo box, com a seleo do grfico H ainda um outro recurso que permite, quando h apenas uma srie, acrescentar uma nova srie de mesmo tamanho que a srie corrente, situada na mesma linha (se grfico por linha, seno na mesma coluna), iniciando-se em uma coluna (ou linha, em grfico por coluna) de nome AdicDadGr. O nome da srie fica na mesma coluna (ou linha) na linha do cabealho. Iss til, por exemplo, para particionar dados de uma srie de 24 meses em 2 sries distintas com 12 elementos cada. Resumindo, h muitas situaes em que bastar o usurio posicionar o cursor em uma clula qualquer. do grfico desejado e clicar CTRL G para obter o grfico desejado. VI.1.a) Para programadores: Em um pasta que se deseja fazer um grfico, basta armazenar o nome de uma funo em qualquer clula dessa pasta, a qual deve ser dado o nome de ProcGr. Assim, antes da execuo do grfico o sistema ir chamar essa rotina, fazendo alguma eventual preparao, por exemplo, testando se a origem selecionada vlida. Caso essa funo retorne Falso no aciona o grfico. Um exemplo clssico mostrado abaixo para ilustrar um exemplo de aba que o grfico usa a parte oculta, delimitada por CiniDad, ColDir, eixo X em LinTopo e cabealho da srie em ColEsq, para traar o grfico, mas que seria desejvel ficar sempre oculta, a menos que o usurio explicitamente exibisse. Programa-se uma rotina, associada a aba de dados, associado a sua ativao, para ocultar os dados do grfico, que no deseja se exibir, para ficar uma visualizao mais sumarizada. Private Sub Worksheet_Activate() Dim Ce As Range Application.ScreenUpdating = False ActiveSheet.Outline.ShowLevels RowLevels:=0, ColumnLevels:=1
Set Ar = Selection.Areas(Selection.Areas.Count) Set Ce = ActiveCell Do While Columns(Ce.Column).Hidden Set Ce = Ce.Offset(0, 1) Loop Ce.Select Application.ScreenUpdating = True End Sub Na aba do grfico, associada a sua ativao. Private Sub Chart_Activate() Sheets(.....").Outline.ShowLevels RowLevels:=0, ColumnLevels:=2 End Sub Precisa se exibir os dados para fazer com que o grfico aparea. Finalmente na pasta coloca-se o cdigo, que exibe os dados ao se gerar o grfico com Ctrl G. Ele executa a funo PP indicada pela clula de nome ProcGr. Public Function PP() As Boolean ActiveSheet.Outline.ShowLevels RowLevels:=0, ColumnLevels:=2 PP = True End Function VI.1.b) Dicas No use rtulos e legendas de srie de tipo numrico. Pode ser nmero, mas tem que estar armazenado como texto. O sistema se confunde na hora de retraar o grfico. Ele espera grfico ou texto. claro que no caso de grfico de disperso o sistema assume que no existe rtulos. No grfico de Disperso sempre necessrio selecionar ambas sries de valores (x e y). irrelevante ter ou no coluna / linha de texto (para orientao vertical / horizontal), pois ele no utilizado no grfico.
Finalmente apaga-se as partes das tabelas situadas abaixo das colunas marcadas com fundo preto. Digita-se o nome de uma aba ou pasta (contendo uma extenso, geralmente .XLS), que ser trazida para baixo, formatada e com as frmulas nas posies indicadas pelo modelo. Como explicado na prpria janela de entrada, antes do nome da pasta pode haver algumas especificaes em qualquer ordem Asterisco (*) faz as frmulas serem convertidas para valor. < N faz a importao se dar partir da linha N da origem (a linha 2 default supondo uma linha de cabealho), por exemplo colocar 1 faz a importao ser feita a partir da linha 1, portanto dados de origem sem cabealho. Linhas maiores que 2 so teis especialmente para importaes de importaes j tratadas, como em processos de sumarizao, por exemplo. > N faz a importao se dar a partir da coluna N da origem. til especialmente quando se importa o importado para fazer sumarizao, etc. @ faz com que no haja insero na importao de dados e sim superposio dos dados. # faz moldura mdia em volta da tabela. | faz moldura fina em volta da tabela . (Ponto) copia apenas por nmero de coluna. Por exemplo 2 na coluna da linha de template traz para essa coluna dados da coluna 2 da origem, assim no tem necessidade de se especificar colunas da origem p/ excluir. A grande utilidade fazer uma importao de poucas colunas de uma origem com muitas colunas de forma simples! (Continua com a possibilidade de inserir frmulas no meio, referindo-se apenas s clulas que tiveram seus nmeros includos. Ex: A B C [2 ] [1 ] [=A2+B2] A especificao completa guardada como comentrio da 1 a. clula do gabarito, que alimenta a prxima entrada de dados de importao, como sugesto, com as seguintes variveis: TIPO FORMULAS implica que normalmente essa tabela usada para renovao de frmulas e no importao. Se o usurio confirmar esse tipo passar a ser MIXTA. VALOR S quando converte para valor as frmulas. Default = N BORDA N (Sem borda), M(Mdia) e F(Fina). Default sem borda LINHA_ORIGEM No. da linha na origem. Default = 2 COLUNA_ORIGEM No. da coluna na origem. Default = 1 PASTA Nome da pasta COPIA_POR_COLUNA Se S copia pelo nmero da coluna. Default = N SOPREPOE Se S sobrepe o contedo anterior. Default = N A linha base tambm o gabarito do formato, mesmo para as colunas que no contenham frmulas. Pode-se tambm usar esse recurso para mudar a ordem das colunas, colocando os dados primitivos mais a direita da rea destino e puxando os dados na ordem desejada, por meio de uma frmula simples de cpia. Dica: Quando no se especifica . (ponto) que o modo de cpia por coluna, ainda pode se especificar uma coluna para copiar da origem por nmero, ao format-la como sublinhado no template. Essa formatao especial NO copiada para baixo. Repare porm que nesse caso essa coluna vai sobrepor o dado original que foi copiado de forma posicional. Imagine uma aba chamada Importa contendo
A 1 2 3 5 5 Val 2 1 4 7
B Val2 3 2 1 8
C Outro 4 3 3 1
Na outra aba, chamada Destino, monta-se a linha desejada (na linha 2), suponha que o layout da nova tabela j exista a partir da linha 4. Repare que est desejando se apagar a coluna referente a informao Outro.
A 1 2 3 4 5 Soma1 2 =C2+D2
B =F2 Soma2 2
C 1 Val 1
D 1 Val2 1
E 1 Outro 1
Aponta-se o cursor para a linha 2 da aba Destino e Tecla-se Ctrl Shift X e seleciona-se a opo 1 - Importa Dados mesclando com frmulas O resultado mostrado abaixo, hachurado em rosa. A 1 2 3 4 6 7 8 9 5 Soma1 5 (=C6+D6) 3 (....) 5 15 2 Soma2 4,5 (=E6+F6) 3,4 (...) 3,2 1,5 2 Val 2 1 4 7 1 Val2 3 2 1 8 1 Perc 50% 40% 20% 50% 100% =C2+D2 =E2+F2 1 1 1 10% B C D E F
Como j havia uma tabela preexistente abaixo do gabarito, o sistema colocou os dados entre o cabealho (suposto que j reflita o novo layout) e os dados anteriores j importados em outra ocasio. Se no houvesse nada abaixo, o sistema teria dado 2 gabarito e o resultado da importao. linhas de espao entre o
Abaixo algumas dicas de utilizao: Para fazer o processo de importao a partir do incio bem mais fcil fazer a linha Template de importao se voc cola antes na linha template o cabealho da aba origem dos dados. Assim abre-se as colunas desejadas fisicamente, o que deixa as frmulas mais fceis de serem inseridas. Tambm fica intuitivo saber quem preciso deletar, sem precisar ficar olhando para a aba do lado. Uma vez desenhado o template de importao, a linha de cabealho da origem pode ser deletada e ento, dali para frente, especificar que a importao de deve dar a partir da linha 1. O cabealho usado como cola tambm pode ser deletado, por esttica. Repare que se houver colunas que precisam ser usadas nas frmulas no mtodo de referencias as colunas pelo nmero (com prefixo .), preciso referenciar explicitamente essa clula, para que ela possa ser usada em uma frmula e depois especificar sua excluso, pelo uso do fundo preto Se voc quer manter as frmulas na rea importada, cuidado para no excluir (com fundo preto no template) as colunas que so citadas em frmulas nas colunas a serem includas. Se voc precisa procurar valores na prpria tabela importada para fazer um mixing de informaes de diferentes linhas, preciso usar a tcnica de nome de rea (a partir de um Ctrl F3), tomando o cuidado de incluir a linha de cabealho na rea, para o processo de importao no deslocar.
A 1 =B1+D1
C =A1*B1
2 3 4 5 23 31 11 42 22 41 11 14 15 8 12 15
Se na tabela acima apontarmos para o cursor para A1 ou C1, teclarmos Ctrl Shift X e escolhermos a opo 2 Copia Linha de Frmulas p/ Tabela temos o seguinte resultado, onde a regio copiada hachurada em rosa. A 1 2 3 4 5 50 (=B3+D3) 42 34 (...) 56 22 41 12 (=A3+B3) 8 12 (...) 15 12 15 =B1+D1 B C =A1-B1 D
Onde as reas cinzas representam as frmulas que estavam na linha 1. Uma tabela normal entremeando frmulas e valores pode ser facilmente convertida para esse formato copiando-se a primeira linha de frmulas e valores para a linha 1, por exemplo e depois transformando a tabela em valor selecionando-a e teclando-se Ctrl W. Guarda-se como comentrio as especificaes utilizadas para a cpia de frmulas na 1a. linha do gabarito e dessa forma pode-se selecionar opes mais complexas. TIPO: IMPORTA implica que normalmente essa tabela usada para importao e no para renovao de frmulas. Se o usurio confirmar esse tipo passar a ser MIXTA. FORMATO: S passa a colar o formato do gabarito. Default = N DEPOIS: S S converte para valor (se for o caso) depois da cpia feita e calculada. Isso garante valores corretos com qualquer tipo de dependncia. H casos em que isso pode ficar proibitivamente lento em planilhas grandes com dezenas de colunas de frmulas. Nesse caso recomendvel colocar N e em ltimo caso fazer o clculo em 2 fases. BORDA N (Sem borda), M(Mdia) e F(Fina). Default sem borda VALOR: N passa a colar frmulas e no valores. Default = N Dica: Deixe a tabela sempre com uma linha em branco antes e com apenas 1 linha de cabealho. Se for necessrio 2 linhas de cabealho deixe uma linha em branco no meio. Se houver um bloco de dados intermedirio de mais de 2 linhas (sem estar colado no gabarito) preciso selecionar 2 clulas! O sistema avisa se a tabela j contm apenas frmulas em uma data coluna O sistema no sobrescreve as linhas finais com frmulas, permitindo totais.
Se for especificada uma rea, usa-se s a 1a. coluna da rea selecionada, caso contrrio assume a poro contgua de clulas preenchidas, sob a clula corrente. A especificao tem a forma [FiltroE!][FiltroS!]Modelo Onde FiltroE representa os caracteres a serem filtrados antes de quebrar a coluna. Um espao no final indica que ser (dependendo se h caracter correspondente em FiltroS) deixado apenas 1 caracter para toda regio contgua de espaos + caracteres de controle. Onde FiltroS representa os caracteres correspondentes a entrarem no lugar dos caracteres filtrados. A falta de correspondncia faz simplesmente o caractere de FiltroE ser apagado. E Modelo representa pedao a pedao o tipo da informao quebrada, sob a forma [ Campo [ Spec ] ] + Cada Campo pode ter os seguintes tipos P (Pedao de texto sem espaos) M (Nome de ms por extenso ou abreviado, traduzido pelo nmero do ms) T (Texto a ser recuperado, incluindo espaos) N (Nmero a ser recuperado, incluindo nmero em notao cientfica (Finalizado com E seguido de um nmero inteiro). Pode ou no ter separador de milhares, mesmo que de forma invlida. Aceita nmeros negativos em formato contbil, ladeado de parnteses. Usa digito para finalizar o campo texto a no ser que algum separador seja usado ou a especificao > para considerar campo texto at o final da entrada. Aceita % no final da especificao. D (Data a ser recuperada, aceita vrios formatos alternativos, incluindo formato de nome do ms em extenso ou abreviado) S (Deixa a coluna correspondente da planilha com o contedo anterior) V (Nmero p/ ser recuperado como texto) 0 a 9 (Texto de tamanho fixo a ser recuperado) J Spec so modificadores opcionais do campo anterior, que define basicamente quais caracteres sero pulados e/ou se o campo no deve ser exibido na planilha. Pode ser qualquer caracter diferente dos especificados acima, incluindo os especiais A, #, X, > e \ Cada campo pode ser seguido de caracteres a serem pulados, incluindo o prprio espao. A faz com que o formato do campo anterior (nmero, data ou ms) seja Americano (mm-dd-yy e com decimal ponto (.) ) faz com o campo texto anterior seja introduzido como delimitado. Assume-se como opcional. O plique ou aspas que iniciar o campo, indicar o par correspondente que deve encerrar o campo. X faz com que o o campo anterior seja ignorado para exibio na planilha. > para fazer com que o campo texto possa ir at o final da clula (aps campo tipo T) / faz com que o prximo caracter seja pulado. Usado para poder pular smbolos reservados. Ex: // pula o caracter /. # faz com que todos dgitos sejam pulados para campo texto
Observaes Qualquer caracter para pular aps texto, faz com que o dgito deixe de ser separador. Para que o digito continue sendo separador, nesse caso, coloque # aps o campo. Nesse caso funciona como separador, mas no ignorado. Caracter especificado no pulo inibe caracter semelhante se vlido em nmero. (como , por exemplo). Para pular caracteres aps o nmero, mas que podem estar
dentro do prprio nmero preciso usar a especificao 0 seguido do caracter desejado. Para iniciar pulando use 0 seguido do filtro desejado. Esse campo automaticamente ignorado. Para usar outro delimitador em vez de !, basta colocar antes da especificao !@, onde @ o novo delimitador.
Cada linha de informao quebrada em tantas colunas (campos) quantas informaes relevantes no anuladas por um X, que estiverem contidas em Modelo, exceto a especificao de campo 0. Exemplo. Se na tabela acima apontarmos para o cursor para A1 ou A3, teclarmos Ctrl Shift X e escolhermos a opo 3 Quebra Texto em Colunas e digitando-se como especificao -!NTN Temos o seguinte resultado em rosa, partindo-se da rea verde
1 2 3
D 23 45 88
Ex: ^- ir apagar linhas que contenham apenas -, caracteres de controle e espaos. Essa opo provavelmente ser a mais usada, depois da anterior, porque atende a maioria das situaes. = (s/ nada depois) Excluso de linhas com contedo da coluna corrente, muito comum para eliminar todas linhas que contm um atributo indesejvel da coluna corrente de uma tabela, estilo #N/D ou um texto qualquer. =palavra Excluso de linhas, com clulas que contenham o que vem depois do =. Ex: =banana, apaga todas as linhas, onde a clula vale banana. %modelo - Excluso de linhas, cujas clulas contenham o modelo que se segue Escreva a palavra diretamente como filtro e clique em OK. Ex: %ban*, apaga todas as linhas, onde a clula correspondente tem como modelo uma palavra que inicia como ban. (operador LIKE do VBA).
Descrio do Modelo
Operador LIKE (indiferente a acento) ? Qualquer caractere nico. * Zero ou mais caracteres. # Qualquer dgito nico (09). [listadecarac] Qualquer caractere nico em listadecarac. [! listadecarac] Qualquer caractere nico que no esteja em listadecarac. - Dentro do colchetes configura um intervalo de letras. Ex 1: A?A* - Apaga todas as linhas cuja clula correspondente a palavra cuja 1a e 3a. letra A. Ex 2: [A-D]# - Palavra de 2 caracteres iniciada com uma letra de A at D seguida de um dgito
Depois s escolher uma localizao e um ttulo adequado para os botes. VIII.1.c) Proteo de linhas e colunas H uma esquema de proteger contra ordenao linhas abaixo e colunas direita da planilha, comum, por exemplo, em planilhas com totais tanto em linhas como em colunas. Para a ordenao vertical, basta colocar na especificao Vnn, onde nn o nmero da linha limite para ordenao vertical, abaixo da qual a ordenao vertical no mais atua. Em relao ordenao horizontal, na especificao entra Hnn, onde nn o nmero da coluna limite para ordenao horizontal, a partir do qual a ordenao horizontal no mais atua. Internamente insere-se uma linha /coluna de proteo, que depois da ordenao excluda. VIII.1.d) Chaves Mltiplas O comando permite ainda assumir chaves mltiplas Um poderoso recurso do comando de ordenao consiste em nomear uma coluna com o nome XKey, nesse caso, a ordenao executada com o comando Ctrl O passa a utilizar uma chave dupla composta pela coluna XKey e dentro dela ordena-se pela coluna assinalada com o cursor: No exemplo abaixo, denominou-se a coluna A (Categoria) como sendo Xkey, o cursor estava em 100 (Verde), clicou-se Ctrl Shift O, especificou-se 1 e a planilha ficou com a aparncia abaixo, ordenado pela coluna A + coluna D A 1 2 3 4 5 6 7 8 9 10 Categoria udio udio udio Cameba Cameba Cameba Ferramenta Ferramenta Ferramenta B Prod CD Player MD Player Cdod Lenol Colcha Cobertor Alicate Prego Furadeira C Maio/02 100 200 300 300 200 100 200 300 100 D Jun/02 100 200 300 100 200 300 100 200 300
Finalmente pressiona-se Ctrl O com o cursor em 200 (Verde) e a planilha passa a ficar assim, ordenada da mesma maneira, primeiro pela chave representada pela coluna A (XKey), e depois pela chave representada pela coluna C. A Categoria udio B Prod CD Player C Maio/02 100 D Jun/02 100
Finalmente, se for atribudo outra coluna com o nome XKey2, a chave passa a ser tripla: Xkey + Xkey2 + Coluna do cursor
VIII.1.e) Tabela blocada Dentro da ordenao vertical proporcionada pelo comando de ordenao h o conceito de tabela blocada. Tabela blocada aquela tem possui um padro de um nmero determinado de linhas que se repete para baixo na tabela. Para esse tipo de tabela disponibiliza-se por meio desse comando de ordenao uma maneira de se ordenar (ascendente ou descendente), direto pela coluna, considerando a linha relativa dentro do bloco, de forma transparente, bastando informar a largura do bloco da 1 a. vez. ( direto o nmero ou B seguido do nmero) Ex: Na planilha abaixo clique em Ctrl Shift O e entre com 3D com a clula corrente em C5.
A 1 2 3 4 5 6 7 8 9 10 Prod A A A B B B C C C
B Info Venda Meta Ating Venda Meta Ating Venda Meta Ating
C Mai/02 100 100 100% 200 180 110% 150 190 75%
D Jun/02
A planilha fica assim, com o bloco que contm o valor de venda de 200 na parte superior, porque contm o valor de venda mais alto.
1 2 3 4 5 6 7 8 9 10
A Prod B B B C C C A A A
B Info Venda Meta Ating Venda Meta Ating Venda Meta Ating
C Maio/02 200 180 110% 150 190 75% 100 100 100%
D Jun/02
Na planilha acima, digite Ctrl O com a clula ativa agora em C3, ento passa a ficar assim. Repare que o bloco com o valor de meta de 180 passou a ocupar a 2 posio, para que o bloco que contm a meta de 190 ficar na parte superior.
1 2 3 4 5 6 7 8 9 10
A Prod C C C B B B A A A
B Info Venda Meta Ating Venda Meta Ating Venda Meta Ating
C Maio/02 150 190 75% 200 180 110% 100 100 100%
D Jun/02
Obs.: Para fazer a ordenao por bloco, o sistema preenche uma coluna oculta, que por sua vez usada como coluna base de ordenao. Se o bloco especificado como 1, funciona como uma ordenao normal, sem sequer usar a coluna oculta, para otimizar.
Alm disso h algumas opes adicionais: Se Valor selecionado, apenas os resultados das frmulas so copiados. Se Transpor selecionado o resultado da cpia sai transposto, ou seja, linha vira coluna e vice-versa. Se Referncia Absoluta selecionada o resultado da cpia PRESERVA as frmulas, sem qualquer tipo de converso. Para uma converso controlada, para a opo de cpia de frmulas, h 2 parmetros adicionais (Delta Lin e Delta Col) que servem para deslocar as referncias no ancoradas na frmula, de forma controlada. Assim A2 se converte em B7, se Delta Lin for 5 e Delta Col for 1. Se Copia Nomes selecionado a cpia traz os nomes de intervalos da seleo original. Se Copia Formatos selecionado a cpia preserva o formato da origem, clula a clula. Se Copia s Formatos s copia formato (inclusive do buraco) e no valor e/ ou frmula. Para entender melhor como funciona, basta praticar com uma planilha rascunho, testando as diferentes opes e vendo seus efeitos. Essa funo extremamente poderosa, porque automatiza uma tarefa que manualmente seria demasiado maante. Ex: Para copiar frmulas para colunas a direita, pulando 2 colunas de valores, posicione o mouse na 1 frmula e marque at a ltima clula que deseja trazer a frmula. , selecione Normal, Coluna, Na origem coloque o tamanho de bloco como 1 (j que 1 coluna de frmula), nmero de clulas entre blocos tanto na origem como destino 2. Deixe desmarcado todos check boxes (referncia absoluta inclusive). Se houvesse 2 colunas de frmulas (vale para qualquer nmero), o tamanho de bloco na origem passa para 2 e o processo funciona. De forma anloga, se houver 2 colunas de valores (vale para qualquer nmero), o nmero de clulas entre blocos na origem e no destino passa para 2
2 3
0101532 0604038
1223 900
2100 1200
1500 850
1 2 3 4 5 6 7
Ex 2: Nesse caso, o Nmero de Colunas fixas: 1 (PROD) e a Largura Colunas Bloco de Dados: (2 para Venda e Estoque).
1 2 3 4
1 2 3 4 5
Dependendo da seleo, faz a gerao completa da tabela que gerou o formato de subtotal corrente, que acaba funcionando como o inverso da macro anterior. Informe em uma Caixa de Dilogo a Linha, Coluna (Se for diferente), a Planilha (se for diferente), a Pasta (se for diferente) destino da cpia. Informe ainda a Largura X (Nmero de linhas) de cada fatia, o nmero de colunas de dados (Coluna Fixas esquerda), que no ser usado como combustvel para o preenchimento da tabela (geralmente so as colunas mais a esquerda da planilha que continuaro como colunas no novo formato) e selecione se deseja Coluna ps fixas aps cabealho. Se a tabela estiver ordenada de modo que esteja preparada para ser fatiada, tudo que esse processo far coloc-las (a parte no fixa) lado a lado. Cada fatia deve conter toda a variedade da chave da tabela (Produto no exemplo abaixo), geralmente a coluna mais a esquerda, ou seja, todas fatias devem ter a mesma largura em linhas. A utilidade bsica reconverter os dados que esto no formato subtotal, tabela dinmica ou autofiltro, para um formato colunar adequado para grficos e/ou outras aplicaes. A seleo de coluna ps fixas no cabealho faz com que o sistema tente interpretar a coluna, logo aps as colunas tidas como fixas, como descritor de colunas na tabela destino. No caso do exemplo a coluna Tipo Nesse caso, e apenas nesse caso, deve-se selecionar tambm a linha de cabealho. A sada ter uma linha de cabealho com o contedo da coluna Tipo horizontalizado de maneira adequada. As colunas fixas ( mais a coluna ps as colunas fixas, se for o caso) constituem as colunas tratadas Repete-se ainda a parte do cabealho aps as colunas tratadas, por toda extenso do cabealho da nova tabela, como sua 1a. linha. Para apenas 1 coluna na origem isso geralmente redundante. Geralmente a tabela vem ordenada pela coluna que se quer fatiar e colocar como rtulos de colunas. Se isso no acontecer a tabela ordenada por essa coluna antes de fazer o processo. Ex: Nesse caso essa coluna o Tipo.
1 2 3 4 5 6 7
c) Agora marque a rea toda, acione o comando e deixe a coluna, a planilha e a pasta em branco, informe a linha 20 e altura 2 (porque h 2 linhas para cada data), 1 coluna de dados fixa (a coluna de produto) e SIM para coluna ps fixa no cabealho, que a Data. Pronto! A tabela fica igual a tabela exemplo em V-3
Exemplo 2:
1 2 3 4 5 6 7
Nesse caso o Tamanho da Fatia permanece 2, e o nmero de colunas fixas continua 1 e continua tendo que selecionar coluna fixa ps cabealho (no caso a coluna tipo) e formato final fica. A 1 2 3 4 Prod 0101532 0604038 B 01/99 Venda 323 232 C 02/99 Venda 1223 900 D 01/99 Estoq 111 222 E 02/99 Estoq 2100 1200 F 01/99 Custo 123 121 G 02/99 Custo 1500 850
Essa tabela pode ser facilmente convertida em tabular ordenada por data. Basta transpor ela, ordenar por data (sem usar o cabealho) e transpor de volta. Nesse caso, a tabela fica assim:
A 1 2 Prod
B 01/99 Venda
C 01/99 Estoq
D 01/99 Custo
E 02/99 Venda
F 02/99 Estoq
G 02/99 Custo
3 4
0101532 0604038
323 232
111 222
123 121
1223 900
2100 1200
1500 850
1 2 3 4
A 35 12 35
C =A1
Se marcarmos a rea C1 at E3. Consideramos Limite Linha e Limite coluna como definido pela seleo. Incr Linha 1 e Incr Coluna 1, porque a cpia em diagonal. Quanto a frmula, ela fixa a coluna (Incr Coluna Frmula = 0) e a linha da referncia se desloca igual ao destino (Incr Linha Frmula = 1). S Vazio fica desmarcado, porque queremos copiar incondicionalmente. Ao final, a aparncia da planilha deveria ficar assim
1 2 3 4
A 35 12 35
C =A1
D =A2
E =A3
A 1 2 3 4
B Num 2 4 5
D Val2 2
5 6 7
10 12 2
3 2 =B7*3
5 2
No exemplo acima, marca-se de C2 a C7, emite-se Ctrl C , aponta-se para a clula D2 e digita-se Ctrl Shift I para fazer a formatao selecionada especial. Se for selecionado F (Frmula), as frmulas preenchem os buracos entre os valores da forma indicada abaixo. Esse processo feito para todas colunas selecionadas no destino, se a origem contm apenas 1 coluna!.
A 1 2 3 4 5 6 7
B Num 2 4 5 10 12 2
Substituio / Seleo Outra ao feita por esse comando, que pode ser bastante til, na substituio seletiva de formato, quando no h rea copiada com Ctrl C Nesse modelo, o comando substitui na rea selecionada o padro em XCHAVE pelo padro em XPADRO, clulas da aba HELP ao lado da ajuda desse comando. Aceita um ou mais padres ( C(Cor), U(Fundo), N(Negrito), B(Borda), V(Valor) e S(Valor no nulo) F(Frmula) ) na especificao. Em relao ao prefixo que fica antes da especificao, no caso de C(Cor), por exemplo, atua do seguinte modo: ?C - Apenas testa se a cor de cada clula da rea selecionada igual a cor de XCHAVE =C - Troca cada clula a cor pelo padro proposto em XPADRO caso todos testes feitos sejam positivos naquela clula (com esse e com outros formatos) C (Sem prefixo) Faz as 2 coisas acima No caso de F(Frmula), a frmula copiada a partir da 1 clula da rea selecionada, junto com as outras aes especificadas, enquanto para todas as outras especificaes a origem da cpia a clula padro. No caso S(Valor no nulo), V(Valor) e F(Frmula) o teste se refere tambm ao fato de exigir que o contedo anterior seja valor (V, S) ou frmula (F). No caso de frmula (F) no h nenhum teste referenciando a clula padro. J para V ou S o critrio se o valor confere com o valor da clula padro.
Todas clulas que satisfazem as condies de seleo para substituio ficam selecionadas no final, permitido uma mudana interativa de valor, cor, etc. Dica: Uma ao comum nesse comando consiste em usar apenas prefixo ? para se testar uma ou mais condies (como cor de fundo), a fim de selecionar todas clulas que satisfazem a dada condio. Ento pode-se mudar a cor de fundo, etc. Uma utilidade adicional nesse caso acoplar seu uso a uma outra macro, para fazer alguma conta (Ctrl Shift Y) ou somar todo contedo (Ctrl Shift S), etc.
X) Transformaes
X.1) Converso de valor em frmula (Ctrl Shift Y)
Extremamente til para agilizar operaes em planilha. Transforma, na prtica, o seu Excel em uma calculadora bidimensional, partindo-se de especificaes informadas em um formulrio Para todas as clulas da seleo corrente, Inclui no final de cada valor um texto dado, convertendo-o para frmula. @ pode ser usado no texto para simbolizar o prprio valor da clula. Ex 1:
A 1 2 3 1 2 3
Marque um trecho de coluna com os valores 1, 2 e 3 Tecle CTRL + SHIFT + Y. Digite * Fator na caixa de entrada.
No mesmo exemplo, entrar com o string @/(1+@) iria gerar as frmulas A 1 2 =1/(1+1) =2/(1+2)
=3/(1+3)
Marcar a opo Mantm inalterada frmula com referncia a clula. faz com que nenhuma frmula que contenha uma referncia a qualquer clula quer no formato A1, quer atravs do nome de clula seja alterada. A opo Transforma direto para valor faz com seja gravado em cada clula o resultado final obtido e no a frmula resultante. A opo Fora Atuar como Texto mostra uma inteno consciente de trabalhar com manipulao direta de texto ao invs de manipulao de frmulas, seja numricas ou de texto. Finalmente tem um subpainel chamado de referncia, onde se pode especificar uma clula (Ex: G2) , ou apenas a parte da linha (2) ou coluna (G). O que acontece que todas referncias marcadas com # no texto original sero substitudas pela referncia a uma clula, onde a parte da linha e/ou coluna pode estar fixada e a parte no fixada tomada como referncia a partir da clula onde est sendo realizada a operao. Essa referncia relativa pode ser deslocada especificando-se um deslocamento de linha (Desloc Linha) e/ou um deslocamento de coluna (Desloc Coluna). Ex: Multiplicar C1:C4 por B2:B5 e colocar a frmula correspondente em C1 Marca-se de C1 a C4 e digita-se CTRL SHIFT Y, depois especifique os parmetros: Clula: B (porque a coluna fixada) Desloc Lin [ 1 ] (porque se deseja multiplicar 1 linha aps a clula correspondente) Descol Col [ ] (no preciso entrar com nada, porque a coluna est fixada) Antes A 1 2 3 4 4 3 4 5 6 B 2 3 4 5
Esse comando funciona para qualquer tipo de dado convencional (nmero, data e texto). Mesmo que marcado para converter para valor, faz primeiro a converso para frmula, nem que seja necessrio cercar o texto da frmula com aspas. A verificao feita pela condio de erro da frmula. Se a frmula sem aspas no faz sentido ou gera uma condio de erro #NOME? indicando texto no identificado, ento o comando cerca o texto da frmula com aspas, para valid-la.
H uma outra facilidade que o uso da barra vertical (|) na mscara para inserir um contador em um intervalo a ser manipulado, iniciando em 1. Exemplo: A 1 2 3 4 5 Tot Tot Tot Tot B
Selecionada a rea. Tecle Ctrl + Shift + Y e entre com @| em Frmula, marque a opo transforme direto em valor. A 1 2 3 4 5 Tot1 Tot2 Tot3 Tot4 B
Se quisesse colocar um contador par seria um pouco mais complexo: seria preciso colocar na mscara: @ & |*2 Um exemplo final, para ver o poder completo dessa abordagem seria tirar o 2t de cada clula, Para isso basta colocar em frmula Ext.texto(@;1;2) & Ext.texto(@;4;1), o resultado deveria ser: Repare que a frmula deve ser especificada em portugus mesmo! A 1 2 3 4 5 To1 To2 To3 To4 B
Isso feito de modo proporcional ao valor de cada clula. Naturalmente clulas vazias ou zeradas continuaro a valer 0. O default mudar a soma para 1 (100%).
XI) Miscelnea
XI.1) Envia Tecla (Ctrl A / Ctrl Shift A)
Ctrl Shift A manda teclas para o aplicativo, informadas pelo usurio. O usurio pode guardar uma lista de macros. Para ir onde a lista est clique em Envio Teclas e coloque uma descrio e o texto com as teclas associadas. Isso estar disponvel na lista disponibilizada para o usurio na solicitao da sequncia de teclas. Use Ctrl + A para repetir a ltima sequncia de teclas, conforme o ltimo Ctrl Shift A utilizado. Esse comando usa a sintaxe do comando VBA para enviar teclas, SendKeys, sobre a qual tem um help completo. Enviar teclas inclui a possibilidade de executarmos as prprias macros, incluindo enviar teclas para formulrios. De qualquer maneira resumiremos abaixo como especificar teclas:
Ex 1:
Teclas comuns so expressas pelas prprias teclas, como A, B, C, etc. Teclas especiais ficam entre chaves, como {Esc}, {Left}, {Up},{Down}, {Right} , {Enter}, etc. Teclas que alteram o significado de outras teclas so ^ (Ctrl), + (Shift) e % (Alt), assim usa-se ^a, +^{Left}, etc. Ateno, para expressar Ctrl A, preciso usar ^a e no ^A, que na verdade Ctrl Shift {Enter} tambm pode ser expresso por ~ (Til). Para repetir uma tecla preciso coloc-la entre chaves: {h 10} - h 10 vezes. Parnteses usa-se para expressar que as teclas alteradoras (^, % ou +) atua sobre todas elas. Ex: ^(ec) ,ou seja, Ctrl ( E C). Qualquer caractere especial (%, ^, ~, +, {,},[,],(,}) s pode ser literal se entre chaves. ^+{Right}^f^b{Left}^f
Explicao: Ctrl Shift Seta p/ Direita, Ctrl F, Ctrl B, Seta p/ Esquerda e Ctrl F Isso marca o bloco de clulas com o mesmo valor e coloca moldura, usando 2 funes da Macros, que so Ctrl F para busca valor diferente e Ctrl B para colocar a borda. Ex 2: Repete 3 vezes {Down}+{Right}^+t^x{Down 2}~^{Up}^c{Down}^+{Down}+{Up}~{Down}{Down} Explicao: Seta para baixo, Shift Seta para Direita, Ctrl Shift t, Ctrl X, 2 setas para baixo, Enter, Ctrl Shift Up, Ctrl C, Seta para baixo, Ctrl Shift Seta para baixo, Shift Seta para cima, Enter, 2 setas para baixo. Ctrl Shift T Comando da Macros que com seleo feita marca at a ltima clula. Transforma uma coluna de dados simples de modo que o primeiro elemento repita-se 2 vezes, levando os outros para baixo. Execuo mltipla faz com que toda coluna repita cada elemento 2 vezes, ficando com extenso total 3 vezes maior. Ex 3: Transformar cdigo de Maestro em Nome, Classe e Cdigo {F2}=Arrumar{(}Ext.Texto{(}A9;1;45{)}{)}~{F2}=EXT.TEXTO{(}A9;47;1{)}~{F2}=EXT.TEXTO{(}A9;51;7{)}~
Ex 4: Multiplicar pelos dados da coluna anterior Entre com Ctrl Shift Y (Calculadora bidimensional), passando *# , converso direta para valor e 1 na linha. A seguir entre com Ctrl Shift A e especifique apenas: ^+y%o (Ctrl Shift Y seguido de Alt O, que aciona o OK do formulrio da calculadora. Funciona porque o Ctrl Shift Y memoriza os ltimos campos entrados. A partir da apenas Ctrl A aciona o clculo desejado Se fosse de uma linha especfica bastaria entrar o nmero da linha em clula e branco na linha. Ex 5: Colar formato para a linha de baixo do trecho da linha corrente at onde tiver dados +{Right}+{Right}^+t+{Down}^+l~
Se frmula especificar uma clula ou intervalo de outra aba que esteja nomeado, o sistema trata, desde que o nome da aba seja composto apenas de letras, nmeros e sublinhado (iniciado por letra). Claro que esse raciocnio no vale para o tipo T. Nomes so usados sem o prefixo de aba que s vezes existe. Isso pode causar ambigidade em alguns casos.
Da primeira vez basta copiar a aba que a aba auxiliar de mesma estrutura ser criada. Posteriormente, com a manuteno da aba matriz, pode ficar complicado gerenciar a aba fillhote. Ento surge essa funcionalidade: Marca-se a rea origem que sofreu atualizao de nomes com Ctrl C, posiciona-se na rea destino, e se aplica Ctrl Alt L. Pode repetir o processo mais de uma vez. Ao final a rea continua marcada possibilitando outros tipos de cpia.
XII.1) Porcentagem
ConvPerc - Converte porcentagem expressa em nmero de 0 a 100 e converte para %, tirando todas as referncias a 100
XII.3) Converses
ZP_Texto - Converte nmero em texto, sem preenchimento de zeros esquerda ConvNumBr - Converte texto contendo nmero em formato brasileiro em nmero formato brasileiro, baseado no 1o. nmero que ocorre no texto, da esquerda para a direita(modo liberal) ou se um nmero apenas ladeado por espaos. (modo estrito) Ex: Cod23 fica valendo 23. Est no menu de outras opes acessvel com Ctrl Shift D.
XIII) Funes
H algumas funes desenvolvidas que podem ser teis, para serem usadas na confeco de uma planilha. necessrio anteceder seu nome por Macros.xls! Ex: Macros.xls!am(25) => 2a1m
FReplace(Valor, Chave, Subst) Substitui todas ocorrncias de Chave em Valor por Subst Rat(Texto, Conjunto) - Volta a posio da ltima ocorrncia de um caracter em CONJUNTO no string TEXTO. Ex: Rat(Banana, n) = 5 Abaixo uma srie de funes relacionada a obteno de palavras ou trechos compostos de caracteres que esto ou no dentro de um conjunto especificado de caracteres. Scan(Inicial, Texto, Conjunto) - Volta a posio em TEXTO, a partir de INICIO, do 1o caracter que no pertence ao texto CONJUNTO. Se INICIO negativo pesquisa na direo inversa, isso vale para todas as funes seguintes. Percorre letras dentro do CONJUNTO Ex: Scan(1,31Alo,0123456789) = 3 ScanWord(Inicial, Texto, Conjunto) - Pega o pedao em TEXTO, a partir de INICIO, at o 1o caracter que no pertence ao texto CONJUNTO. Percorre letras dentro do CONJUNTO Ex: ScanWord(1,Paulo Eduardo ,ABCDEFGHIJKLMNOPQRSTUVWXYZ) = Paulo Pesq(Inicial, Texto, Conjunto) - Volta a posio em TEXTO, a partir de INICIO, do 1o caracter que pertence ao texto CONJUNTO. Percorre letras fora CONJUNTO. Ex: Pesq(1,lima mola, ) = 5 GetWord(Inicial, Texto, Conjunto) - Pega o primeira palavra em TEXTO, a partir de INICIO, at o 1o caracter que pertence ao texto CONJUNTO. Percorre letras fora CONJUNTO Ex: GetWord(1,Almoo/Lanche,/) = Almoo LastWord(Texto, Conjunto) - Volta a ltima palavra de TEXTO, depois da ltima ocorrncia de um caracter em CONJUNTO. Percorre letras fora CONJUNTO Ex: LastWord(C:\NOTAS\LISTA8.PRN,\) = LISTA8.PRN WordNum(Texto, Num, Delimitador) - Volta a NUMa. palavra do string TEXTO, usando os delimitadores em DELIMITADOR. Percorre letras fora CONJUNTO. A tentativa de recuperar um nmero de palavra que no existe retorna vazio. WordNum(Jos Carlos Pena,2, ) = Carlos UpperNoAC(Texto) Passa para maisculo e tira acentuao. Ajeita(Texto, [Filtro], [High] ) - Deixa s 1 espao entre nomes, tira os espaos no incio e no final da palavra. Filtra ainda caracteres indesejveis especificados em Filtro. Filtra todos caracteres acima de 127 se High. Filtra caracteres abaixo de 32(espao). A combinao das 2 funes acima tende a igualar cadeias diferentes apenas por detalhes de espaamento e acentuao. AjeitaTudo (Texto, [Filtro], [High] ) Idem, mas alm disso passa para maiscula e tira os acentos. SuperTrim(Texto, [d]) Tira espaos e caracteres de controle antes e depois do texto. Se D=1 tira s no final. Se D=-1 tira s no incio.