Como gravar macros no modo relativo e modo absoluto no excel 2016
Ao gravar suas ações, Excel normalmente registra referências absolutas às células. (Este é o modo de gravação padrão.) Mas, muitas vezes, esta é a errado
Conteúdo
Gravar no modo absoluto
Siga estes passos para gravar uma macro simples no modo absoluto. Esta macro simplesmente insere três nomes de meses em uma planilha:
Certifique-se de que o desenvolvedor → Código → Use o botão referências relativas é não realçado e, em seguida, escolher desenvolvedor → Código → Gravar Macro.
Digite Absoluto como o nome para esta macro.
Clique em OK para iniciar a gravação.
Ative a célula B1 e digite Jan naquela célula.
Mover a célula C1, e escreva fevereiro
Mover para a célula D1, e escreva marco
Clique na célula B1 para ativá-lo novamente.
Video: #03 - Curso de Macros e Excel VBA - Referência Relativa
Pare o gravador de macro.
Video: Microsoft Excel - Gravar Macros de Referência Relativa e Absoluta
Pressione Alt + F11 para ativar o VBE.
Examine o módulo Module1.
Excel gera o seguinte código:
Sub Absoluto () `` absoluto Macro`Range ( “B1”). SelectActiveCell.FormulaR1C1 = “Janeiro” Gama ( “C1”). SelectActiveCell.FormulaR1C1 = “Fevereiro” Gama ( “D1”). SelectActiveCell.FormulaR1C1 = “Março “Range (‘B1’). SelectEnd Sub
Quando executado, este macro seleciona a célula B1 e insere os três nomes dos meses para o intervalo B1: D1. Em seguida, a macro reativa célula B1.
Estas mesmas ações ocorrem independentemente de qual célula está ativa quando você executar a macro. A macro gravada usando referências absolutas sempre produz os mesmos resultados quando ele é executado. Neste caso, a macro sempre entra os nomes dos três primeiros meses do intervalo B1: D1 na planilha ativa.
Gravação em modo relativo
Em alguns casos, você quer a sua macro gravada para trabalhar com locais de pilha em uma relativo maneira. Você pode querer a macro para começar a inserir os nomes dos meses na célula ativa. Nesse caso, você precisa usar a gravação relativa.
Você pode alterar a maneira pela qual Excel registra suas ações, clicando no botão Usar referências relativas no grupo Código do separador Developer. Este botão é um botão de alternância. Quando o botão aparece realçado em uma cor diferente, o modo de gravação é relativo. Quando o botão aparece normalmente, você está gravando em modo absoluto.
Você pode alterar o método de gravação a qualquer momento, mesmo no meio da gravação.
Para ver como parente modo de trabalhos de gravação, apague o conteúdo do intervalo B1: D1 e, em seguida, execute os seguintes passos:
Ative a célula B1.
Escolha desenvolvedor → Código → Gravar Macro.
Nome este Relativa macro.
Clique em OK para iniciar a gravação.
Clique no botão Usar referências relativas para mudar o modo de gravação para relativo.
Quando você clica nesse botão, ele muda para uma cor diferente do resto da fita.
Digite Janeiro na célula B1.
Video: Curso de Excel Criar gravar macros VBA Visual Basic Application Avançado Referênci relativa absoluta
Mover a célula C1, e escreva fevereiro
Mover para a célula D1, e escreva marco
Selecione a célula B1.
Pare o gravador de macro.
Note-se que este procedimento é ligeiramente diferente do exemplo anterior. Neste exemplo, você ativar a célula começando antes de começar a gravar. Este é um passo importante quando você gravar macros que usam a célula ativa como base.
Esta macro sempre começa a digitação de texto na célula ativa. Tente. Movimentar o ponteiro de pilha para qualquer célula e, em seguida, executar a macro Relativa. Os nomes dos meses são sempre entrou começando na célula ativa.
Com o modo de gravação definido para parente, o código que Excel gera é bastante diferente do código gerado no modo absoluto:
Sub Relativa () `` Relativa Macro`ActiveCell.FormulaR1C1 = “Janeiro” ActiveCell.Offset (0, 1) .Range ( “A1”). SelectActiveCell.FormulaR1C1 = “Fevereiro” ActiveCell.Offset (0, 1) .Range ( “A1”). SelectActiveCell.FormulaR1C1 = “mar” ActiveCell.Offset (0, -2) .Range ( “A1”). SelectEnd Sub
Para testar esta macro, activar qualquer célula, exceto B1. Os nomes dos meses são inseridos em três células, começando com a célula que você ativado.
Notar que o código gerado pelo gravador de macro refere-se a célula A1. Isso pode parecer estranho, porque você nunca usou a célula A1 durante a gravação da macro. Isto é simplesmente um subproduto da forma como o gravador de macro funciona.