Macro de exemplo para inserir/eliminar linhas ou colunas em várias folhas no Excel

Resumo

Este artigo contém um exemplo de macro do Microsoft Visual Basic for Applications (sub-procedimento) que pode utilizar para inserir ou eliminar linhas ou colunas em várias folhas de cálculo no Microsoft Excel.

Mais informações

A Microsoft fornece exemplos de programação apenas a título informativo, sem qualquer garantia expressa ou implícita, incluindo, sem limitações, as garantias implícitas de comercialização e/ou adequação a um fim específico. Este artigo pressupõe que o utilizador está familiarizado com a linguagem de programação demonstrada e as ferramentas utilizadas para criar e depurar procedimentos. Os engenheiros de suporte da Microsoft podem ajudar a explicar a funcionalidade de um procedimento específico. No entanto, não modificarão estes exemplos para proporcionarem funcionalidades adicionais nem criarão procedimentos adaptados às suas necessidades específicas. Para inserir ou eliminar linhas ou colunas em várias folhas, utilize um para Cada... A seguinte declaração para passar por todas as folhas necessárias ou selecionar as linhas ou colunas antes de efetuar a inserção ou eliminação.

Nota

As macros de exemplo seguintes só funcionam num intervalo contíguo de colunas ou linhas.

Macro de exemplo utilizando um ciclo para inserir linhas em várias folhas

Sub Insert_Rows_Loop()
     Dim CurrentSheet As Object

     ' Loop through all selected sheets.
     For Each CurrentSheet In ActiveWindow.SelectedSheets
        ' Insert 5 rows at top of each sheet.
        CurrentSheet.Range("a1:a5").EntireRow.Insert
     Next CurrentSheet
End Sub

Macro de exemplo para selecionar coluna e inserir nova coluna

A macro de exemplo seguinte seleciona a coluna inteira antes de inserir novas colunas:

Sub Select_Insert_Column()
    Dim MyRange as Object
    ' Store the selected range in a variable.
    Set MyRange = Selection
    ' Select the entire column.
    Selection.EntireColumn.Select
    ' Insert Columns in all selected sheets.
    Selection.Insert
    ' Reselect the previously selected cells.
    MyRange.Select
End Sub