Excel vba – inserire una nuova row per le celle attive

Ho un problema con inserire una nuova row sotto la cella. Devo inserire una nuova row sotto each cella triggers. Con questo codice Excel si blocca. Grazie per l'aiuto

Sub CopyRow() Dim cel As Range Dim selectedRange As Range Set selectedRange = Application.Selection For Each cel In selectedRange.Cells cel.Offset(1, 0).Insert Shift:=xlDown, CopyOrigin:=xlFormatFromRightOrBelow 'copy data cel.Offset(1, 0 ).Value = cel.Value Next cel End Sub 

  • HLOOK UP SUM con valore di visualizzazione refence nel text
  • Come eliminare le righe in modo efficace in base a un confronto
  • path del file di riferimento dalla casella di text vba
  • Raggruppamento e denominazione di forms in Excel con vba
  • Leggere oltre 254 colonne da un file di Excel 2010 utilizzando il server ACE SQL
  • Collegamenti ipertestuali di file .mpg alle celle in excel
  • Errore di Excel, smette di eseguire la macro
  • Aggiorna il model di dati di Excel 2013 da vbscript non riesce a causa del problema di formato del numero negativo
  • One Solution collect form web for “Excel vba – inserire una nuova row per le celle attive”

    Questo prende un'istantanea dell'intervallo selezionato, quindi funziona all'indietro sulla UseRange:


     Option Explicit Public Sub CopyRows() Dim sRng As Range, sRow As Long, sr As Variant Dim r As Long, lb As Long, ub As Long Set sRng = Application.Selection sRow = sRng.Row If sRng.CountLarge = 1 Then With ActiveSheet.UsedRange .Rows(sRow + 1).EntireRow.Insert Shift:=xlShiftDown .Rows(sRow + 1).Value2 = .Rows(sRow).Value2 End With Else sr = sRng lb = LBound(sr) ub = UBound(sr) Application.ScreenUpdating = False With ActiveSheet.UsedRange For r = ub To lb Step -1 .Rows(r + sRow).EntireRow.Insert Shift:=xlShiftDown .Rows(r + sRow).Value2 = .Rows(r + sRow - 1).Value2 Next .Rows(lb + sRow - 1 & ":" & ub * 2 + sRow - 1).Select End With Application.ScreenUpdating = True End If End Sub 
    Microsoft Office Excel Spreadsheet è il miglior software di Office, Excel VBA e formule Excel rendono il foglio di calcolo più veloce.