Coleção 15.000 Macros MS Excel VBA

   Mega_Colecao Macros de Macros MS Excel VBA
      

Curso Completo MS Excel VBA

Excel VBA Video Aulas

 Aprenda Excel VBA - SaberExcel VBA - Video Aulas       
Com Simplicidade e Facilidade,
Escrevendo menos e fazendo mais
Linha de raciocínio de fácil entendimento...

 

20.000 Planilhas MS Excel VBA

 20.000 Planilhas Microsoft Excel VBA, treinamentos, busca, pesquisas, desenvolvimento a partir de exemplos prontos, estudos e pratica com planilhas prontas.

excel vba Introdução ao VBA no Office 2010

Escola Saberexcel VBA Estudos® - Treinamentos com Macros, Fórmulas e Funções


Introdução ao VBA no Office 2010
Escritório 2010  Apresenta programadores para algumas formas básicas para usar o Visual Basic for Applications (VBA) a programação para estender o Microsoft Office 2010 inclui uma visão ampla da linguagem VBA, alguma chave . detalhes sobre como acessar VBA em diferentes aplicativos do Office 2010 , exemplos de programação simples , e alguns exemplos de aplicações . ( 13 páginas impressas )

Aplica-se a : Microsoft Word 2010 | Microsoft Outlook 2010 | Microsoft Access 2010 | Microsoft Excel 2010 | Microsoft PowerPoint 2010 | Microsoft Publisher 2010

• Programação VBA no Office 2010

• Quando usar VBA e por quê

• Programação VBA 101

• Dicas de Programação e Truques

• Aprofundando com a programação

• Todos os meus aplicativos do Office 2010 : Código Exemplo

• Resumo

• Recursos adicionais

Programação VBA no Office 2010
Você está enfrentando uma limpeza repetitiva de cinqüenta tabelas no Word 2010 ? Você quer que um determinado documento para solicitar ao usuário para a entrada quando se abre ? Você está tendo dificuldade para descobrir como obter os contactos do Microsoft Outlook 2010 em uma planilha do Microsoft Excel 2010 de forma eficiente?

Você pode executar essas tarefas e realizar muito mais , utilizando VBA para o Office 2010 , uma simples, mas poderosa linguagem de programação que você pode usar para estender os aplicativos do Office 2010.

Este artigo é para usuários do Office experientes que desejam aprender sobre VBA e que querem alguns insights sobre como a programação pode ajudá-los para personalizar o Office 2010.

O Office 2010 pacote de aplicativos tem um rico conjunto de características. Há muitas maneiras diferentes de autor, de formato, e manipular documentos , e- mails , bancos de dados , formulários, planilhas e apresentações . O grande poder de programação VBA no Office 2010 é que quase todas as operações que você pode realizar com um mouse , teclado ou uma caixa de diálogo também pode ser feito por meio de VBA. Além disso, se isso pode ser feito uma vez com VBA, que pode ser feito com a mesma facilidade de uma centena de vezes. (Na verdade, a automação de tarefas repetitivas é um dos usos mais comuns do VBA no Office . )

Além do poder de scripting VBA para acelerar as tarefas do dia a dia , você pode usar o VBA para adicionar novas funcionalidades para os aplicativos do Office 2010 ou para solicitar e interagir com o usuário de seus documentos de maneiras que são específicas para suas necessidades empresariais. Por exemplo, você poderia escrever um código VBA que exibe uma mensagem pop-up que lembra os usuários de salvar um documento para uma rede particular dirigir a primeira vez que tentam salvá-lo.

Este artigo explora algumas das principais razões para alavancar o poder da programação VBA. Ele explora a linguagem VBA e as ferramentas fora-de -the-box que você pode usar para trabalhar com suas soluções. Por último, inclui algumas dicas e maneiras de evitar algumas frustrações comuns de programação e passos em falso .

Quando usar VBA e por quê
Há três razões principais para considerar programação VBA no Office 2010.

Automação e Repetição
VBA é eficaz e eficiente quando se trata de soluções para repetitivos de formatação ou de correção de problemas. Por exemplo , você já mudou o estilo do parágrafo , na parte superior de cada página no Word ? Alguma vez você já teve que reformatar várias tabelas que foram colados de Excel em um documento do Word ou um Outlook e-mail? Alguma vez você já teve que fazer a mesma alteração em vários contatos do Outlook?

Se você tem uma mudança que você tem que fazer mais do que dez ou vinte vezes , pode valer a pena automatizar com VBA. Se é uma mudança que você tem que fazer centenas de vezes , é certamente vale a pena considerar . Quase nenhuma formatação ou edição de mudança que você pode fazer à mão, pode ser feito em VBA.

Extensões à interação do usuário
Há momentos em que você quer incentivar ou obrigar os usuários interajam com o aplicativo do Office 2010 ou documento de uma forma particular, que não faz parte da aplicação padrão. Por exemplo, você pode querer alertar os usuários a tomar alguma ação especial, quando abrir , salvar ou imprimir um documento.

Interação entre aplicativos do Office 2010
Você precisa copiar todos os seus contatos do Outlook 2010 para o Word 2010 e , em seguida, formatá-los de alguma forma especial ? Ou, você precisa mover os dados do Excel 2010 para um conjunto de PowerPoint 2010 slides? Copiar e colar Às vezes simples não faz o que você quer que ele faça , ou ele é muito lento. Você pode usar programação VBA para interagir com os detalhes de dois ou mais aplicativos do Office 2010 , ao mesmo tempo e , em seguida, modificar o conteúdo em um aplicativo com base no conteúdo de outra .

Fazer as coisas de outra maneira
Programação VBA é uma solução poderosa , mas nem sempre é a melhor abordagem . Às vezes, faz sentido usar outras maneiras de alcançar seus objetivos.

A questão fundamental para perguntar é se existe uma maneira mais fácil . Antes de começar um projeto do VBA , considere as ferramentas internas e funcionalidades padrão. Por exemplo, se você tem uma edição demorado ou tarefa layout, considerar o uso de estilos ou teclas de atalho para resolver o problema . Você pode executar a tarefa uma vez e , em seguida, usar CTRL + Y ( Refazer) a repeti-la ? Você pode criar um novo documento com o formato ou modelo correto e , em seguida, copiar o conteúdo para que o novo documento?

Aplicativos do Office 2010 são poderosos ; a solução que você precisa pode já estar lá. Tire algum tempo para aprender mais sobre o Office 2010 antes de saltar para a programação.

Antes de começar um projeto do VBA , verifique se você tem o tempo para trabalhar com VBA. Programação requer foco e pode ser imprevisível. Especialmente como um novato, nunca se voltam para a programação , a menos que você tenha tempo para trabalhar com cuidado . Tentando escrever um "script rápida" para resolver um problema quando um prazo teares pode resultar em uma situação muito estressante . Se você estiver com pressa , você pode querer usar os métodos convencionais , mesmo se eles são monótonos e repetitivos.

Programação VBA 101
Usando o código para fazer aplicações fazer coisas
Você pode pensar que escrever código é misterioso ou difícil, mas os princípios básicos usam todos os dias raciocínio e são bastante acessíveis . Os aplicativos do Office 2010 são criados de tal forma que eles expõem coisas chamadas objetos que podem receber instruções, da mesma forma que um telefone é projetado com botões que você usa para interagir com o telefone. Ao pressionar um botão , o telefone reconhece a instrução e inclui o número correspondente na seqüência que você está discando . Na programação, você interage com o aplicativo , enviando instruções para vários objetos na aplicação. Esses objetos são expansivas , mas eles têm seus limites. Eles só podem fazer o que eles são projetados para fazer, e eles só vão fazer o que você instruí-los a fazer.

Por exemplo, considere o usuário que abre um documento no Word 2010, faz algumas mudanças , salva o documento e, em seguida, fecha -lo. No mundo da programação VBA, Word 2010 expõe um objeto de documento . Por meio de código VBA , você pode instruir o objeto Document para fazer coisas como Abrir, Salvar ou Fechar.

A seção seguinte discute como os objetos são organizados e descritos .

O modelo de objeto
Desenvolvedores organizar objetos de programação em uma hierarquia, e que a hierarquia é chamado de modelo de objeto do pedido. Word, por exemplo, tem um objecto de aplicação de nível superior que contém um objeto de documento . O objeto de documento contém objetos de parágrafo e assim por diante. Modelos de objetos aproximadamente espelhar o que você vê na interface do usuário . Eles são um mapa conceitual do aplicativo e seus recursos.

A definição de um objeto é chamado de uma classe , de modo que você pode ver estes dois termos usados como sinônimos. Tecnicamente, uma classe é a descrição ou modelo que é usado para criar ou instanciar , um objeto.

Uma vez que existe um objeto, você pode manipulá-lo , definindo suas propriedades e chamar seus métodos . Se você acha que o objeto como um substantivo , então as propriedades são os adjetivos que descrevem o substantivo e os métodos são os verbos que animam o substantivo . Alterando uma propriedade muda alguma qualidade de aparência ou o comportamento do objeto. Chamando um dos métodos do objeto faz com que o objeto para realizar alguma ação.

O código VBA neste artigo vai contra um aplicativo aberto Office 2010 , onde muitos dos objetos que manipula os códigos já estão em funcionamento ; por exemplo, a aplicação em si, a planilha em Excel 2010 , o documento no Word 2010, a apresentação no PowerPoint 2010 , o Explorer e objetos de pasta no Outlook 2010. Uma vez que você sabe o layout básico do modelo de objeto e algumas propriedades -chave da aplicação que dão acesso ao seu estado atual, você pode começar a estender e manipular esse aplicativo do Office 2010 com VBA no Office.

Métodos
No Word, por exemplo, você pode alterar as propriedades e invocar os métodos do atual documento do Word usando a propriedade ActiveDocument do objeto Application . Esta propriedade ActiveDocument retorna uma referência ao objeto de documento que está ativo no aplicativo Word. " Retorna uma referência a " significa " dá acesso a ".

O código a seguir faz exatamente o que diz ; ou seja, ele salva o documento ativo na aplicação.

VBCopy

 Application.ActiveDocument.Save

Leia o código a partir da esquerda para a direita, " Nesta aplicação, com o documento referenciado por ActiveDocument , invocar o método Save . " Esteja ciente de que Salvar é a forma mais simples de método; ele não necessita de quaisquer instruções detalhadas de você . Você instrui um objeto de documento para salvar e não requer mais nenhuma entrada de você.

Se um método requer mais informações, esses detalhes são chamados de parâmetros. O código a seguir executa o método Salvar como, o que exige um novo nome para o arquivo.

VBCopy
 Application.ActiveDocument.SaveAs ( "Novo documento Name.docx " )
Os valores indicados entre parênteses após o nome de método são os parâmetros . Aqui , o novo nome para o arquivo é um parâmetro para o método Salvar como .

Propriedades
Você usa a mesma sintaxe para definir uma propriedade que você usa para ler uma propriedade. O código a seguir executa um método para selecionar a célula A1 no Excel 2010 e , em seguida, para definir uma propriedade de colocar algo na cela .

VBCopy
Application.ActiveSheet.Range("A1").Select
    Application.Selection.Value = "Alo Mundo!"
O primeiro desafio na programação VBA é obter uma sensação para o modelo de objeto de cada aplicativo do Office 2010 e de ler o objeto , método e sintaxe da propriedade . Os modelos de objeto são semelhantes em todos os aplicativos do Office 2010 , mas cada um é específico para o tipo de documentos e objetos que ele manipula .

Na primeira linha do trecho de código , não é o objeto Application , Excel 2010 , desta vez, em seguida, o ActiveSheet , que dá acesso à planilha ativa. Depois disso, é um termo não tão familiar , Gama , que significa " definir um intervalo de células dessa maneira. " O código instrui Range para criar a si mesmo com apenas A1 como o seu conjunto definido de células. Em outras palavras, a primeira linha de código define um objeto, o Range, e executa um método contra ele para selecioná-lo . O resultado é automaticamente armazenado em uma outra propriedade da aplicação chamado Seleção.

A segunda linha de código define a propriedade Valor de Seleção para o texto "Olá mundo" e que o valor aparece na célula A1.

O código mais simples do VBA que você escreve pode simplesmente ter acesso a objetos no aplicativo do Office que você está trabalhando e definir propriedades . Por exemplo, você poderia ter acesso às linhas de uma tabela no Word e mudar sua formatação no seu script de Visual Basic for Applications . Isso parece simples, mas pode ser extremamente útil ; uma vez que você pode escrever esse código , você pode aproveitar toda a potência de programação para fazer essas mesmas mudanças em várias tabelas ou documentos , ou fazê-los de acordo com alguma lógica ou condição. Para um computador , fazendo mil mudanças não é diferente de fazer 10 , para que haja uma economia de escala aqui com documentos e problemas maiores, e é aí que o VBA pode realmente brilhar e poupar tempo.

Macros e Visual Basic Editor
Agora que você sabe alguma coisa sobre como os aplicativos do Office 2010 expor seus modelos de objeto , você provavelmente está ansioso para tentar chamar métodos de objetos , definindo propriedades do objeto, e responder a opor eventos. Para isso, você deve escrever o seu código em um lugar e de uma forma que o Office pode entender ; normalmente , usando o Editor do Visual Basic. Embora seja instalado por padrão , muitos usuários não sabem que é ainda disponível até que seja habilitado na fita .

Abrindo a guia Desenvolvedor
Todos os aplicativos do Office 2010 usar a fita. Um guia sobre a fita é o guia do desenvolvedor , onde você acessar o Editor do Visual Basic e outras ferramentas de desenvolvimento . Como o Office 2010 não exibir a guia Desenvolvedor , por padrão , você deve habilitá-lo usando o seguinte procedimento:

Para habilitar a guia Desenvolvedor
1.Em na guia Arquivo, selecione Opções para abrir a caixa de diálogo Opções .

2.Clique Personalizar Friso , no lado esquerdo da caixa de diálogo .

3.Under Escolher comandos de , no lado esquerdo da caixa de diálogo , selecione Comandos Populares .

4.Sob Personalizar a faixa do lado direito da caixa de diálogo, selecione principais guias na caixa de lista suspensa e , em seguida, selecione a opção Developer.

5.Clique em OK.

Nota :
No Office 2007, é exibida a guia Desenvolvedor , clicando no botão do Office, clique em Opções e , em seguida, selecionar o Mostrar guia Desenvolvedor na Faixa de Opções caixa de seleção na categoria Popular da caixa de diálogo Opções
 


Depois de ativar a guia Desenvolvedor , é fácil encontrar os botões do Visual Basic e macros .

Figura 1. Botões na guia Desenvolvedor

 
Questões de segurança
Para proteger os usuários do Office 2010 contra vírus e códigos macro perigoso, você não pode salvar o código de macro em um documento padrão do Office 2010 que utiliza uma extensão de arquivo padrão. Em vez disso, você deve salvar o código em um arquivo com uma extensão especial. Por exemplo, você não pode salvar macros em um documento padrão do Word 2010 com uma extensão docx . ; em vez disso, você deve usar uma palavra especial 2010 documento habilitado para macro com uma extensão docm . .

Quando você abre um arquivo docm . , A segurança do Office 2010 ainda pode impedir que as macros no documento de execução, com ou sem dizê-lo . Examine as configurações e opções da Central de Confiabilidade em todos os aplicativos do Office 2010 . A configuração padrão desabilita macro de execução, mas avisa que as macros foram desabilitadas e lhe dá a opção de transformá-los de volta para aquele documento.

Você pode designar pastas específicas onde as macros podem ser executadas através da criação de locais confiáveis, Documentos Confiáveis , ou editores confiáveis. A opção mais portátil é a utilização de editores confiáveis , que trabalha com documentos assinados digitalmente que você distribuir. Para mais informações sobre as configurações de segurança em um determinado aplicativo Office 2010, abrir a caixa de diálogo Opções , clique em Central de Confiabilidade e , em seguida, clique em Definições do Centro .

Nota :
Alguns aplicativos do Office 2010 , como Outlook 2010, salvar macros por padrão em um modelo mestre em seu computador local. Embora essa estratégia reduz as questões de segurança locais em seu próprio computador quando você executa suas próprias macros , que exige uma estratégia de implantação , se você quiser distribuir o seu macro.
 


Gravar uma Macro
Quando você clica no botão de macro na guia Desenvolvedor , ele abre a caixa de diálogo Macros , o que lhe dá acesso a sub-rotinas ou macros VBA que você pode acessar a partir de um determinado documento ou aplicativo. O botão Visual Basic abre o Editor do Visual Basic , onde você pode criar e editar o código VBA.

Outro botão na guia Desenvolvedor no Word 2010 e Excel 2010 é o botão Gravar Macro , que gera automaticamente o código VBA que pode reproduzir as ações que você executa no aplicativo. Gravar Macro é uma ferramenta fantástica que você pode usar para aprender mais sobre VBA. Lendo o código gerado pode lhe dar uma visão em VBA e fornecer uma ponte estável entre o seu conhecimento do Office 2010 como um usuário e seu conhecimento como um programador. A única ressalva é que o código gerado pode ser confuso porque o editor de macro deve fazer algumas suposições sobre as suas intenções , e essas hipóteses não são necessariamente precisas.

Para gravar uma macro
1.Abra o Excel 2010 para uma nova pasta de trabalho e clique na guia Desenvolvedor na Faixa de Opções . Clique em Gravar Macro e aceitar todas as configurações padrão na caixa de diálogo Gravar Macro , incluindo Macro1 como o nome da macro e Esta pasta de trabalho como a localização.

2.Clique em OK para começar a gravar a macro. Note como o botão muda texto para parar a gravação. Clique nesse botão no instante em que você concluir as ações que você deseja gravar.

3.Clique na célula B1 e digite clássico primeira seqüência do programador : Olá Mundo . Pare de escrever e olhar para o botão Stop Recording ; ele fica acinzentado porque o Excel 2010 está esperando por você para terminar de digitar o valor na célula.

4.Clique na célula B2 para concluir a ação na célula B1, e , em seguida, clique em Parar gravação .

5.Clique Macros na guia Desenvolvedor , selecione Macro1 se ele não estiver selecionado, e clique em Editar para exibir o código de Macro1 no Editor do Visual Basic.

Figura 2. Código de macro no Editor do Visual Basic

 
Olhando para o código
A macro que você criou deve ser semelhante ao seguinte código .

VBCopy
 Sub Macro1()
'
' Macro1 Macro
'
'
    Range("B1").Select
    ActiveCell.FormulaR1C1 = "Hello World"
    Range("B2").Select
End Sub


Esteja ciente das semelhanças com o trecho de código anteriormente que o texto selecionado na célula A1 , e as diferenças. Neste código , a célula B1 está selecionada e , em seguida, a string " Olá Mundo" é aplicada à célula que foi feito ativo. As aspas em torno do texto especificar um valor de string ao invés de um valor numérico.

Lembre-se de como você clicou célula B2 para exibir novamente o botão Stop Recording ? Essa ação mostra-se como uma linha de código também. O gravador de macro grava todas as teclas .

As linhas de código que começam com um apóstrofo e verde colorido pelo editor são comentários que explicam o código ou lembrá-lo e outros programadores a finalidade do código. VBA ignora qualquer linha ou parte de uma linha , que começa com um apóstrofo. Escrevendo comentários claras e apropriadas no seu código é um tema importante , mas que a discussão está fora do escopo deste artigo . As referências subsequentes para este código no artigo não incluem essas quatro linhas de comentário .

Quando o gravador de macro gera o código , ele usa um algoritmo complexo para determinar os métodos e as propriedades que se destinam. Se você não reconhecer uma determinada propriedade , há muitos recursos disponíveis para ajudá-lo. Por exemplo, na macro que você gravou , o gravador de macro gerado um código que se refere à propriedade ForumulaR1C1 . Não sei o que isso significa ?

Dica:
Nota: Esteja ciente de que objeto Application está implícito em todas as macros VBA. O código que você gravou trabalhos com aplicação . no início de cada linha .
 


Usando desenvolvedor Ajuda
Selecione ForumulaR1C1 na macro e pressione F1 gravada. O sistema de Ajuda é executado uma busca rápida , determina que os sujeitos adequados se encontram na seção desenvolvedor Excel 2010 da Ajuda Excel 2010, e lista a propriedade FormulaR1C1 . Você pode clicar no link para ler mais sobre a propriedade, mas antes você fizer isso, estar ciente de que o modelo de objeto de ligação Referência Excel na parte inferior da janela. Clique no link para ver uma longa lista de objetos que o Excel 2010 usa em seu modelo de objeto para descrever a planilhas e seus componentes. Clique em qualquer um deles para ver as propriedades e métodos que se aplicam a esse objeto em particular , junto com referências cruzadas para diferentes opções relacionadas. Muitas entradas Ajuda também tem exemplos de código breves que podem ajudá-lo . Por exemplo, você pode seguir os links no objeto Fronteiras para ver como definir uma fronteira em VBA.

VBCopy
 Worksheets ( 1). Range (" A1") . Borders.LineStyle = xlDouble
Editando o código
O código de Fronteiras parece diferente da macro gravada . Uma coisa que pode ser confundindo com um modelo de objeto é que existe mais de uma maneira de abordar um determinado objeto , a célula A1 neste exemplo.

Às vezes, a melhor maneira de aprender programação é fazer pequenas alterações para algum código de trabalho e ver o que acontece como resultado. Experimente agora . Abrir Macro1 no Editor do Visual Basic e alterar o código para o seguinte.

VBCopy
 Sub Macro1 ()
    Worksheets ( 1). Range (" A1") . Value = " Uau!"
    Worksheets ( 1). Range (" A1") . Borders.LineStyle = xlDouble
End Sub
Dica:
Use copiar e colar , tanto quanto possível quando se trabalha com o código para evitar erros de digitação.
 


Você não precisa para salvar o código para testá-lo , assim que retornar ao documento Excel 2010 , clique em Macros na guia Desenvolvedor , clique em Macro1 e clique em Executar. Célula A1 agora contém o texto Wow! e tem um limite de linha dupla em torno dele.

Figura 3. Resultados da sua primeira macro
Você só combinado macro gravação , lendo a documentação do modelo de objeto e programação simples de fazer um programa VBA que faz algo . Parabéns!
Não funcionou ? Leia para a depuração de sugestões em VBA.

Dicas de Programação e Truques
Comece com exemplos
A comunidade VBA é muito grande ; uma pesquisa na Web quase sempre pode render um exemplo de código VBA que faz algo parecido com o que você quer fazer . Se você não consegue encontrar um bom exemplo, tentar quebrar a tarefa em unidades menores e pesquisar sobre cada um deles , ou tentar pensar em um problema mais comum , mas similar. Começando com um exemplo você pode economizar horas de tempo.

Isso não significa que o código livre e bem pensada é na Web esperando por você para ir junto. Na verdade, a parte do código que você encontra pode ter bugs ou erros. A idéia é que os exemplos que você encontra on-line ou na documentação VBA dar-lhe uma vantagem. Lembre-se que a programação de aprendizagem requer tempo e pensamento. Antes de entrar em uma grande corrida para usar outra solução para resolver o seu problema, pergunte a si mesmo se VBA é a escolha certa para este problema.

Faça um problema mais simples
A programação pode ficar complexo rapidamente. É fundamental , especialmente como um novato, que você dividir o problema para as menores unidades lógicas possíveis , em seguida, escrever e testar cada peça isoladamente. Se você tem muito código na frente de você e você ficar confuso ou confusa , parar e definir o problema de lado. Quando você voltar para o problema, copiar um pequeno pedaço do problema em um novo módulo , resolver essa parte , obter o código de trabalho , e testá-lo para garantir que ele funciona. Em seguida, passar para a próxima parte .

Bugs e depuração
Existem dois principais tipos de erros de programação : erros de sintaxe, que violam as regras gramaticais da linguagem de programação, e tempo de execução erros, que parecem sintaticamente corretas, mas falham quando VBA tenta executar o código.

Embora possam ser frustrante para corrigir , erros de sintaxe são fáceis de pegar ; Editor do Visual Basic emite um sinal sonoro e flashes em você se você digitar um erro de sintaxe em seu código.

Por exemplo, valores de string deve estar entre aspas duplas em VBA. Para descobrir o que acontece quando você usa aspas simples em vez disso, voltar para o Editor do Visual Basic e substitua o "Uau!" corda no exemplo de código com 'Uau ! ' (isto é , a palavra Wow entre aspas simples ) . Se você clicar na linha seguinte , o Editor do Visual Basic reage . O erro " erro de compilação : Esperado : expressão " não é útil , mas a linha que gera o erro fica vermelho para lhe dizer que você tem um erro de sintaxe nessa linha e, como resultado , este programa não será executado.

Clique em OK e mude o texto volta para "Uau!" .

Erros de execução são mais difíceis de pegar porque a sintaxe de programação parece correto , mas o código falha quando VBA tenta executá-lo.

Por exemplo, abrir o Editor do Visual Basic e mudar o nome da propriedade do valor para ValueX na sua Macro, deliberadamente introduzindo um erro de execução desde que o objeto Range não tem uma propriedade chamada Value . Volte para o documento Excel 2010 , abra a caixa de diálogo Macros e executar Macro1 novamente. Você deverá ver uma caixa de mensagem do Visual Basic que explica o erro de tempo de execução com o texto, "Objeto não suporta esta propriedade de método. " Apesar de que o texto é claro , clique em Debug para saber mais .

Quando você voltar para o Editor do Visual Basic, ele está em um modo de depuração especial que usa um destaque amarelo para mostrar-lhe a linha de código que falhou. Como era esperado , a linha que inclui o estabelecimento ValueX é realçado .

Figura 4. Visual depurador básico no trabalho

 
 

Você pode fazer alterações no código VBA que está executando , assim que mude ValueX volta ao valor e clique no botão play verde pouco abaixo do menu Debug. O programa deve ser executado normalmente.

É uma boa idéia para aprender como usar o depurador mais deliberadamente para programas mais longos e mais complexos. No mínimo, aprender como definir pontos de quebra, para parar a execução em um ponto onde você quer dar uma olhada no código , como adicionar relógios para ver os valores de diferentes variáveis e propriedades como o código é executado , e como percorrer o código linha por linha . Estas opções estão disponíveis no menu Debug e os usuários do depurador graves tipicamente memorizar os atalhos de teclado que o acompanham.

Utilizando Materiais de Referência Bem
Para abrir a Referência do desenvolvedor que está embutido no Office Help 2010, abra a Ajuda de referência a partir de qualquer aplicativo do Office 2010 , clique no ponto de interrogação no fita ou pressionando F1. Em seguida , à direita do botão de pesquisa , clique na seta suspensa para filtrar o conteúdo. Clique Referência do Desenvolvedor. Se você não ver a tabela de conteúdos no painel à esquerda , clique no ícone pequeno livro para abri-lo e , em seguida, expandir a referência de modelo de objeto de lá.

Figura 5. Filtering no desenvolvedor da Ajuda se aplicam a todos os aplicativos do Office 2010

 
 

O tempo gasto navegando na referência de modelo de objeto compensa. Depois que você compreender as noções básicas de sintaxe VBA eo modelo de objeto para o aplicativo do Office 2010 que você está trabalhando, você avança a partir de conjecturas a programação metódica.

Claro que o Microsoft Office Developer Center é um excelente portal de artigos , dicas e informação da comunidade .

Buscando fóruns e grupos
Todos os programadores ficar preso , às vezes, mesmo depois de ler todos os artigos de referência que possam encontrar e perder o sono à noite pensando sobre as diferentes maneiras de resolver um problema. Felizmente, a Internet tem promovido uma comunidade de desenvolvedores que se ajudam mutuamente a resolver problemas de programação.

Qualquer busca na Web para " fórum de desenvolvedores escritório " revela vários grupos de discussão. Você pode pesquisar sobre o "Desenvolvimento de escritório " ou uma descrição do seu problema para descobrir fóruns , posts de blogs e artigos também.

Se você tiver feito tudo o que pode para resolver um problema, não tenha medo de colocar a sua pergunta para um fórum de desenvolvedores . Estes fóruns acolher as mensagens de programadores mais novos e muitos dos desenvolvedores experientes estamos contentes de ajudar.

A seguir estão alguns pontos de etiqueta a seguir quando você postar em um fórum de desenvolvedores :

• Antes de postar , procure no site para um FAQ ou de diretrizes que os membros querem que você siga. Certifique-se que você postar conteúdo que seja consistente com essas orientações e na seção correta do fórum.

• Incluir um exemplo de código claro e completo , e considerar a edição de seu código para esclarecer isso para os outros, se é parte de uma longa seção de código .

• Descreva o seu problema de forma clara e concisa , e resumir todos os passos que você tomou para resolver o problema . Aproveite o tempo para escrever o seu post , assim como você pode, especialmente se você está confuso ou com pressa. Apresentar a situação de uma forma que faça sentido para os leitores a primeira vez que eles leram a declaração do problema .

• Seja educado e expressar sua apreciação .

Aprofundando com a programação
Embora este artigo é curto e arranhões na superfície do VBA e programação apenas , é espero que o suficiente para você começar.

Esta seção discute brevemente mais alguns temas-chave .

Variáveis
Nos exemplos simples neste artigo você manipulou objetos que o aplicativo já tinha criado. Você pode querer criar seus próprios objetos para armazenar valores ou referências a outros objetos para uso temporário em sua aplicação. Estes são chamados de variáveis.

Para usar uma variável no VBA, deve dizer VBA que tipo de objeto da variável representa usando a instrução Dim . Você, então, definir o seu valor e usá-lo para definir outras variáveis ou propriedades.

VBCopy
     Dim MyStringVariable As String
    MyStringVariable = "Uau!"
    Worksheets ( 1). Range (" A1") . Value = MyStringVariable
Desvios e ciclos
Os programas simples neste artigo executar uma linha de cada vez, de cima para baixo . O poder real na programação vem das opções que você tem para determinar quais linhas de código para executar , com base em uma ou mais condições que você especificar. Você pode estender essas capacidades ainda mais quando você pode repetir uma operação muitas vezes. Por exemplo, o código a seguir estende Macro1 .

VBCopy
 Sub Macro1 ()
    Se Worksheets ( 1). Range (" A1") . Value = "Sim!" depois
        Dim i As Integer
        Para i = 2 a 10
            Worksheets ( 1). Range (" A" & i ) . Value = " OK!" & I
        Next i
    outro
        MsgBox " Coloque Yes! Na célula A1"
    End If
End Sub
Digite ou cole o código em Editor do Visual Basic e , em seguida, executá-lo. Siga as instruções na caixa de mensagem que aparece e mudar o texto na célula A1 de Wow! a Yes! e executá-lo novamente para ver o poder de looping . Este trecho de código demonstra variáveis , ramificação e looping . Leia-o atentamente depois de vê-lo em ação e tentar determinar o que acontece à medida que cada linha é executada.

Todos os meus aplicativos do Office 2010 : Código Exemplo
Aqui estão alguns scripts para tentar ; cada resolve um problema de escritório do mundo real de 2010.

Criar um e -mail no Outlook 2010
VBCopy
 Sub MakeMessage ( )
    Dim OutlookMessage Como Outlook.MailItem
    Definir OutlookMessage = Application.CreateItem ( olMailItem )
    OutlookMessage.Subject = " Olá mundo!"
    OutlookMessage.Display
    Definir OutlookMessage = Nothing
End Sub
Esteja ciente de que há situações em que você pode querer automatizar e-mail no Outlook 2010 ; você pode usar modelos bem .

Excluir linhas vazias em uma planilha do Excel 2010
VBCopy
 Sub DeleteEmptyRows () = SelectedRange Selection.Rows.Count ActiveCell.Offset (0 , 0). Selecione For i = 1 To SelectedRange Se ActiveCell.Value = "" Then
            Selection.EntireRow.Delete Else ActiveCell.Offset (1 , 0). Select End If Next IEND Sub
Esteja ciente de que você pode selecionar uma coluna de células e executar essa macro para excluir todas as linhas da coluna selecionada , que tem uma célula em branco .

Excluir TextBoxes vazios no PowerPoint 2010
VBCopy
 Sub RemoveEmptyTextBoxes ( )
    Dim SlideObj As Slide
    Dim ShapeObj Como Forma
    Dim ShapeIndex As Integer
    Para cada SlideObj Em ActivePresentation.Slides
        Para ShapeIndex = SlideObj.Shapes.Count Para 1 Passo -1
            Definir ShapeObj = SlideObj.Shapes ( ShapeIndex )
            Se ShapeObj.Type = MsoTextbox seguida
                Se Trim ( ShapeObj.TextFrame.TextRange.Text ) = "" Then
                    ShapeObj.Delete
                End If
            End If
        Próxima ShapeIndex
    Próxima SlideObj
End Sub
Esteja ciente de que este código percorre todos os slides e apaga todas as caixas de texto que não têm qualquer texto. Os decréscimos variável de contagem em vez de incrementos , porque cada vez que o código exclui um objeto, ele remove o objeto da coleção , o que reduz a contagem .

Copiar um contato do Outlook 2010 para Word 2010
VBCopy

Sub CopyCurrentContact()
   Dim OutlookObj As Object
   Dim InspectorObj As Object
   Dim ItemObj As Object
   Set OutlookObj = CreateObject("Outlook.Application")
   Set InspectorObj = OutlookObj.ActiveInspector
   Set ItemObj = InspectorObj.CurrentItem
   Application.ActiveDocument.Range.InsertAfter (ItemObj.FullName & " from " & ItemObj.CompanyName)
End Sub

 


Esteja ciente de que este código copia o contacto aberto no Outlook 2010 para o Word aberto 2010 documento. Este código só funciona se houver um contacto atualmente aberto para consulta no Outlook.

resumo
Este artigo apresenta-lhe o poder do Visual Basic for Applications ( VBA ) no Office 2010 e como VBA pode automatizar tarefas repetitivas.

 


Aprenda tudo sobre planilhas do Aplicativo Microsoft Excel VBA(Visual Basic Application), sozinho, com baixo custo, praticando com os produtos didáticos
Escola Saberexcel VBA Estudos® - Treinamentos com Macros, Fórmulas e Funções.




 u - Procedimentos de Aquisição dos produtos Didáticos SaberExcel
 Baixe o exemplo de planilha contendo os macros acima:
  

Você está aqui: Home Excel VBA - Dicas Livre Excel VBA - Dicas Livre Excel VBA - VBE excel vba Introdução ao VBA no Office 2010