Mentre modifichi i fogli di lavoro, potresti notare che parte del tuo lavoro viene svolto in base al lavoro che hai svolto in precedenza. Ad esempio, potresti avere una riga di dati che hai inserito in una precedente sessione di Excel. In questa sessione, è necessario copiare quella riga di dati e utilizzarla come base per i nuovi dati, ma con alcune modifiche.

In una situazione del genere, sarebbe bello avere un modo rapido per inserire una riga vuota dopo la riga corrente e copiare i dati nella riga corrente nella nuova riga vuota. Non ci sono comandi intrinseci in Excel per farlo, ma una macro può farlo molto facilmente. Considera il seguente esempio:

Sub InsertCopyRow1()

ActiveCell.EntireRow.Select     Selection.Copy     Selection.Insert Shift:=xlDown End Sub

Per utilizzare la macro, tutto ciò che devi fare è selezionare una cella in qualsiasi riga. Quando la macro viene eseguita, un duplicato della riga corrente viene inserito appena sotto la riga in cui ti trovi.

L’unico problema con questa soluzione è che lascia l’interfaccia di Excel un po ‘”disordinata” (per mancanza di una parola migliore). Al termine, viene ancora selezionata una riga completa e la nuova riga ha le “formiche in marcia”

tendone intorno ad esso.

Questo problema può essere superato includendo i comandi per comprimere la selezione e spostarla nella posizione desiderata. Un altro modo è utilizzare semplicemente una macro diversa che si basa su diversi comandi VBA. Anche la seguente macro inserirà e copierà una riga, ma lascerà attiva la cella selezionata:

Sub InsertCopyRow2()

ActiveCell.Offset(1, 0).EntireRow.Insert     ActiveCell.EntireRow.Copy ActiveCell.Offset(1, 0).EntireRow End Sub

_Nota: _

Se desideri sapere come utilizzare le macro descritte in questa pagina (o in qualsiasi altra pagina dei siti ExcelTips), ho preparato una pagina speciale che include informazioni utili.

ExcelTips è la tua fonte di formazione economica su Microsoft Excel.

Questo suggerimento (2042) si applica a Microsoft Excel 97, 2000, 2002 e 2003. Puoi trovare una versione di questo suggerimento per l’interfaccia a nastro di Excel (Excel 2007 e versioni successive) qui: