Use macros no Excel no Mac para economizar tempo e fazer mais

Saiba como aumentar a produtividade da sua planilha com macros no Excel no Mac.

Saiba como aumentar a produtividade da sua planilha com macros no Excel no Mac.
Propaganda

O Excel no Mac nem sempre foi o mesmo que o Windows. As macros realmente não funcionariam, a menos que fossem criadas exclusivamente para o Mac.

A partir de 2013, a Microsoft trouxe de volta as macros. Existem dois tipos de macros: aquelas que você pode criar gravando rapidamente suas ações e aquelas que usam o VBA para projetar automações mais avançadas. Com o Office 2016, o Excel está usando a mesma base de código em todas as plataformas. Essa alteração facilitará o trabalho das macros nas plataformas.

Então, vamos dar uma olhada em como isso funciona atualmente no macOS.

Ativando Macros no Excel no Mac

Trabalhar com macros no Excel no Mac pode não estar ativado por padrão. Essa configuração se deve ao fato de as macros poderem ser um possível vetor de malware Como se proteger do Microsoft Word Malware Como se proteger do Microsoft Word Malware Você sabia que seu computador pode estar infectado por documentos mal-intencionados do Microsoft Office ou que poderia ser enganado? as configurações que eles precisam para infectar seu computador? Consulte Mais informação . A maneira mais fácil de saber é ver se você tem a guia Desenvolvedor disponível na Faixa de Opções no Excel. Se você não vê, é simples de ativar.

macros em excel no mac para economizar tempo

Clique no Excel na barra de menus e selecione Preferências na lista suspensa. No menu, clique em Ribbon & Toolbar . Na lista à direita, o desenvolvedor deve estar na parte inferior, clique na caixa de seleção. Por fim, clique em Salvar e você verá a guia Desenvolvedor aparecer no final da Faixa de Opções.

Depois de criar cada pasta de trabalho com macros, salve-a em um novo formato .xlsm para usar as macros após reabrir o arquivo. Se você esquecer, o Excel o lembrará toda vez que você tentar salvar. Você também precisará habilitar macros toda vez que abrir o arquivo.

Gravando manualmente uma macro no Excel no Mac

Embora você possa codificar macros 4 erros que você pode evitar quando programando macros do Excel com VBA 4 erros que você pode evitar ao programar macros do Excel com VBA Código simples e macros são as chaves para superpoderes do Microsoft Excel. Mesmo os não-programadores podem facilmente adicionar funcionalidades impressionantes às suas planilhas com Virtual Basics for Applications (VBA). Apenas evite esses erros iniciantes de programação! Leia mais, isso pode não ser para todos. Se você não estiver pronto para começar a trabalhar com o VBA, o Excel permite que você registre as etapas da macro em uma planilha existente. Clique na guia Desenvolvedor para ver suas opções.

macros em excel no mac para economizar tempo

Você está procurando a terceira opção na faixa de opções, Gravar Macro . Clique aqui, e uma caixa de diálogo aparece permitindo que você nomeie sua macro e defina um atalho de teclado. Você pode escopo sua macro para a pasta de trabalho atual, uma nova pasta de trabalho ou na sua pasta de trabalho macro pessoal . A pasta de trabalho macro pessoal está em seu perfil de usuário e permite que você use suas macros entre seus arquivos.

Depois de gravar suas ações, elas estão disponíveis nesta mesma guia. Clicar em macros exibirá as macros salvas em sua pasta de trabalho. Clique no nome da macro e clique em Executar para executar suas ações gravadas.

Exemplo 1: Total de vendas diárias e média por hora

Para uma macro de exemplo, você executará uma folha de vendas diária, com as vendas divididas por totais por hora. Sua macro adicionará um total de vendas diárias e, em seguida, adicionará uma média na última coluna de cada período de hora em hora. Se você trabalha no varejo ou em outra posição de vendas, essa é uma planilha útil para acompanhar a receita.

Precisamos configurar a primeira folha. Usar esse primeiro espaço em branco como modelo para copiar em uma nova guia a cada dia pode economizar algum tempo. Na primeira coluna / linha coloque hora / data. Na parte superior, adicione de segunda a sexta.

Em seguida, na primeira coluna, coloque uma divisão dos totais por hora de 8 a 5. Eu usei o tempo de 24 horas, mas você pode usar a notação AM / PM, se preferir. Sua folha deve coincidir com a imagem acima.

macros em excel no mac para economizar tempo

Adicione uma nova guia e copie seu modelo para ela. Em seguida, preencha seus dados de vendas para o dia. (Se você não tiver dados para preencher esta planilha, poderá inserir = RandBetween (10, 1000) em todas as células para criar dados simulados.) Em seguida, clique em Desenvolvedor na Faixa de Opções.

Em seguida, clique em Gravar Macro . Na caixa de diálogo, insira o nome como AverageandSum e deixe-o armazenado em This Workbook . Você pode definir uma tecla de atalho, se quiser. Você pode inserir uma descrição se precisar de mais detalhes sobre o que a macro faz. Clique em OK para começar a configurar a macro.

Na parte inferior das listagens por hora, insira Totais diários . Na célula ao lado, insira = SUM (B2: B10) . Em seguida, copie e cole isso no restante das colunas. Em seguida, no cabeçalho, adicione Média após a última coluna. Então, na próxima célula abaixo, digite = Média (B2: F2) . Em seguida, cole isso nas células no restante da coluna.

Em seguida, clique em Parar gravação . Sua macro agora pode usar em cada nova planilha adicionada à sua pasta de trabalho. Depois de ter outra folha de dados, volte ao desenvolvedor e clique em Macros . Sua macro deve estar destacada, clique em executar para adicionar suas somas e médias.

Este exemplo pode poupar algumas etapas, mas para ações mais complexas que podem ser adicionadas. Se você fizer as mesmas operações em dados com formatação idêntica, use macros gravadas.

Macros VBA no Excel no Mac

Macros gravadas manualmente no Excel ajudam com dados que estão sempre no mesmo tamanho e forma. Também é útil se você deseja executar ações na planilha inteira. Você pode usar sua macro para provar o problema.

macros em excel no mac para economizar tempo

Adicione outra hora e dia à planilha e execute a macro. Você verá a macro sobrescrevendo seus novos dados. A maneira como contornamos isso é usando código para tornar a macro mais dinâmica usando o VBA, que é uma versão enxuta do Visual Basic 4 Grandes sites para torná-lo um Guru Visual Basic 4 Grandes sites para torná-lo um guru do Visual Basic Visual básico? Aqui estão alguns ótimos recursos para você começar. Consulte Mais informação . A implementação se concentra na automação do Office.

macros em excel no mac para economizar tempo

Não é tão fácil pegar como Applescript Aprenda a Automatizar seu Mac com AppleScript [Parte 1: Introdução] Aprenda a Automatizar seu Mac com AppleScript [Parte 1: Introdução] Leia Mais, mas a automação do Office é inteiramente construída em torno do Visual Basic. Então, quando você trabalha com isso aqui, você pode rapidamente se virar e usá-lo em outros aplicativos do Office. (Também pode ser uma grande ajuda se você estiver preso a um PC com Windows no trabalho.)

Ao trabalhar com o VBA no Excel, você tem uma janela separada. A imagem acima é nossa macro gravada como aparece no editor de código. O modo de janela pode ser útil para brincar com o código enquanto você está aprendendo. Quando sua macro é desligada, existem ferramentas de depuração para examinar o estado de suas variáveis ​​e dados da planilha.

O Office 2016 agora vem com o editor completo do Visual Basic. Ele permite que você use o Pesquisador de objetos e as ferramentas de depuração que costumavam ser limitadas à versão do Windows. Você pode acessar o Pesquisador de Objetos indo em Exibir> Navegador de Objetos ou apenas pressionar Shift + Comando + B. Você pode então navegar por todas as classes, métodos e propriedades disponíveis. Foi muito útil na construção do código na próxima seção.

Exemplo 2: Total de vendas diárias e média por hora com código

Antes de começar a codificar sua macro, vamos começar adicionando um botão ao modelo. Essa etapa facilita muito para um usuário iniciante acessar sua macro. Eles podem clicar em um botão para chamar a macro, em vez de acessarem as guias e menus.

macros em excel no mac para economizar tempo

Volte para a folha de modelo em branco que você criou na última etapa. Clique no desenvolvedor para voltar à guia. Quando estiver na guia, clique no botão . Em seguida, clique em algum lugar da planilha no modelo para colocar o botão. O menu macros aparece, nomeie sua macro e clique em Novo .

A janela do Visual Basic será aberta; você o verá listado como Module2 no navegador do projeto. O painel de código terá Sub AverageandSumButton () na parte superior e algumas linhas abaixo End Sub . Seu código precisa ir entre esses dois, pois é o começo e o fim da macro.

Etapa 1: declarando variáveis

Para começar, você precisará declarar todas as suas variáveis ​​- Variáveis ​​e DataTypes Tendo introduzido e falado um pouco sobre Programação Orientada a Objetos antes e de onde vem o seu homônimo, Eu pensei que é hora de passarmos pelos fundamentos absolutos da programação de uma maneira não específica da linguagem. Isso ... Leia Mais. Estes estão no bloco de código abaixo, mas uma nota sobre como eles são construídos. Você deve declarar todas as variáveis ​​usando Dim antes do nome e depois com o tipo de dados.

Sub AverageandSumButton() Dim RowPlaceHolder As Integer Dim ColumnPlaceHolder As Integer Dim StringHolder As String Dim AllCells As Range Dim TargetCells As Range Dim AverageTarget As Range Dim SumTarget As Range 

Agora que você tem todas as suas variáveis, você precisa usar algumas das variáveis ​​de intervalo imediatamente. Os intervalos são objetos que contêm seções da planilha como endereços. A variável Todas as Células será definida para todas as células ativas na planilha, o que inclui os rótulos de coluna e linha. Você obtém isso chamando o objeto ActiveSheet e, em seguida, a propriedade UsedRange .

O problema é que você não deseja que os rótulos sejam incluídos nos dados médios e de soma. Em vez disso, você usará um subconjunto do intervalo AllCells. Este será o intervalo de TargetCells. Você manualmente declara seu intervalo. Seu endereço inicial será a célula na segunda linha da segunda coluna do intervalo.

Você chama isso chamando seu intervalo AllCells, usando sua classe Cells para obter essa célula específica usando (2, 2) . Para obter a célula final no intervalo, você ainda chamará AllCells . Desta vez usando o método SpecialCells para obter a propriedade xlCellTypeLastCell . Você pode ver ambos no bloco de código abaixo.

 Set AllCells = ActiveSheet.UsedRange Set TargetCells = Range(AllCells.Cells(2, 2), AllCells.SpecialCells(xlCellTypeLastCell)) 

Etapa 2: para cada loop

As próximas duas seções de código são para cada um O básico absoluto da programação para iniciantes (parte 2) Os princípios básicos da programação para iniciantes (parte 2) Na parte 2 do nosso guia para principiantes absolutos de programação, eu estarei cobrindo o básico de funções, valores de retorno, loops e condicionais. Certifique-se de ter lido a parte 1 antes de abordar isso, onde eu expliquei o ... Leia Mais loops. Esses loops passam por um objeto para atuar em cada subconjunto desse objeto. Nesse caso, você está fazendo dois deles, um para cada linha e um para cada coluna. Como eles são quase exatamente iguais, apenas um deles está aqui; mas ambos estão no bloco de código. Os detalhes são praticamente idênticos.

Antes de iniciar o loop para cada linha, você precisa definir a coluna de destino em que o loop grava a média de cada linha. Você usa a variável ColumnPlaceHolder para definir esse destino. Você o define igual à variável Count da classe Cells de AllCells . Adicione um a ele para movê-lo para a direita dos seus dados, adicionando +1 .

Em seguida, você vai iniciar o loop usando For Each . Então você quer criar uma variável para o subconjunto, neste caso, subRow . Depois do In, definimos o objeto principal que estamos analisando TargetCells . Anexar. Linhas no final para limitar o loop a apenas cada linha, em vez de todas as células no intervalo.

Dentro do loop, você usa o método ActiveSheet.Cells para definir um destino específico na planilha. As coordenadas são definidas usando subRow.Row para obter a linha na qual o loop está atualmente. Em seguida, você usa ColumnPlaceHolder para a outra coordenada.

Você usa isso nas três etapas. O primeiro você adiciona .value após os parênteses e define igual a WorksheetFunction.Average (subRow) . Isso escreve a fórmula da média da linha na sua célula de destino. Na próxima linha, você anexa .Style e define isso como "Currency" . Este passo corresponde ao resto da sua planilha. Na última linha, você acrescenta .Font.Bold e define igual a True . (Observe que não há aspas em torno desta, como é o valor booleano.) Essa linha em negrito a fonte para tornar as informações de resumo destacadas do resto da planilha.

Ambas as etapas estão no exemplo de código abaixo. O segundo loop troca linhas por colunas e altera a fórmula para Soma . Usar esse método vincula seus cálculos ao formato da planilha atual. Caso contrário, seu vinculado ao tamanho no momento em que você grava a macro. Então, quando você trabalha mais dias ou horas, a função cresce com seus dados.

 ColumnPlaceHolder = AllCells.Columns.Count + 1 For Each subRow In TargetCells.Rows ActiveSheet.Cells(subRow.Row, ColumnPlaceHolder).Value = WorksheetFunction.Average(subRow) ActiveSheet.Cells(subRow.Row, ColumnPlaceHolder).Style = "Currency" ActiveSheet.Cells(subRow.Row, ColumnPlaceHolder).Font.Bold = True Next subRow RowPlaceHolder = AllCells.Rows.Count + 1 For Each subColumn In TargetCells.Columns ActiveSheet.Cells(RowPlaceHolder, subColumn.Column).Value = WorksheetFunction.Sum(subColumn) ActiveSheet.Cells(RowPlaceHolder, subColumn.Column).Style = "Currency" ActiveSheet.Cells(RowPlaceHolder, subColumn.Column).Font.Bold = "True" Next subColumn 

Etapa 3: rotule seus resumos

Em seguida, rotule a nova linha e coluna, defina RowPlaceHolder e ColumnPlaceHolder novamente. Primeiro, use AllCells.Row para obter a primeira linha no intervalo e AllCells.Column + 1 para obter a última coluna. Em seguida, você usará o mesmo método do loop para definir o valor como “Average Sales” . Você também usará a mesma propriedade .Font.Bold para negrito seu novo rótulo.

macros em excel no mac para economizar tempo

Em seguida, inverta-o, definindo os marcadores para a primeira coluna e a última linha para adicionar "Total de vendas" . Você quer negrito isso também.

Ambas as etapas estão no bloco de código abaixo. Este é o final da macro anotada por End Sub . Agora você deve ter toda a macro 5 Recursos para macros do Excel para automatizar suas planilhas 5 Recursos para macros do Excel para automatizar suas planilhas Procurando por macros do Excel? Aqui estão cinco sites que têm o que você está procurando. Leia mais e seja capaz de clicar no botão para executá-lo. Você pode colar todos esses blocos de código na ordem em sua planilha de excel se você quiser enganar, mas onde está a diversão nisso?

 ColumnPlaceHolder = AllCells.Columns.Count + 1 RowPlaceHolder = AllCells.Row ActiveSheet.Cells(RowPlaceHolder, ColumnPlaceHolder).Value = "Average Sales" ActiveSheet.Cells(RowPlaceHolder, ColumnPlaceHolder).Font.Bold = True ColumnPlaceHolder = AllCells.Column RowPlaceHolder = AllCells.Rows.Count + 1 ActiveSheet.Cells(RowPlaceHolder, ColumnPlaceHolder).Value = "Total Sales" ActiveSheet.Cells(RowPlaceHolder, ColumnPlaceHolder).Font.Bold = True End Sub 

O que vem a seguir para macros no Excel no Mac?

As macros gravadas são ótimas para usar para uma repetição previsível. Mesmo que seja algo tão simples quanto redimensionar todas as células e cabeçalhos em negrito, isso pode economizar tempo.

O Visual Basic abre as portas para os usuários do Mac Excel mergulharem profundamente na automação do Office. O Visual Basic estava tradicionalmente disponível apenas no Windows. Ele permite que suas macros se adaptem aos dados dinamicamente, tornando-os mais versáteis. Se você tiver paciência, isso pode ser a porta para uma programação mais avançada.

In this article