Copie una fila o filas a una hoja de base de datos usando VBA en Microsoft Excel

Tabla de contenido
  • Los códigos de ejemplo se copiarán en una hoja de base de datos con el nombre Hoja2.
  • Cada vez que ejecute uno de los subs, las celdas se colocarán debajo de la última fila con datos o después de la última columna con datos en sheet2.
  • Para cada ejemplo, hay una macro que hace una copia normal y otra que solo copia los valores.
  • Los subs de ejemplo utilizan las funciones siguientes (las macros no funcionarán sin las funciones).
Sub CopyRow () Atenuar sourceRange As Range Dim destrange As Range Dim Lr As Long Lr = LastRow (Sheets ("Sheet2")) + 1 Establecer sourceRange = Sheets ("Sheet1"). Rows ("1: 1") Establecer destrange = Sheets ("Sheet2"). Rows (Lr) sourceRange.Copy destrange End Sub Sub CopyRowValues ​​() Dim sourceRange As Range Dim Destrange As Range Dim Lr As Long Lr = LastRow (Sheets ("Sheet2")) + 1 Set sourceRange = Sheets ("Hoja1"). Filas ("1: 1") Establecer destrange = Hojas ("Hoja2"). Filas (Lr). _ Resize (sourceRange.Rows.Count) destrange.Value = sourceRange.Value End Sub función LastRow (sh As Worksheet) En caso de error Reanudar Next LastRow = sh.Cells.Find (What: = "*", _ After: = sh. Range ("A1"), _ Lookat: = xlPart, _ LookIn: = xlFormulas, _ SearchOrder: = xlByRows, _ SearchDirection: = xlPrevious, _ MatchCase: = False) .Row On Error GoTo 0 Fin Función Función Lastcol (sh As Hoja de trabajo) En caso de error Reanudar Siguiente Lastcol = sh.Cells.Find (What: = "*", _ After: = sh.Range ("A1"), _ Lookat: = xlPart, _ LookIn: = xlFormulas, _ SearchOrder: = xlByColumns, _ SearchDirection: = xlPrevious, _ MatchCase: = False) .Column On Error GoTo 0 End Function

Va a ayudar al desarrollo del sitio, compartir la página con sus amigos

wave wave wave wave wave