Copiar o mover filas en Google Sheets automáticamente

En este tutorial, vamos a aprender a crear una macro que copie o mueva una fila completa a otra pestaña en Google Sheets. Veremos cómo configurar una acción para copiar una fila cuando seleccionamos una casilla de verificación y, opcionalmente, mover la fila eliminándola de la pestaña original.

Video

Paso 1: Configurar los datos en Google Sheets

Configuramos nuestra hoja de cálculo con los datos de ejemplo. Supongamos que tenemos una hoja llamada “Prospectos” con los siguientes datos:

NombreApellidoFecha ContactoEstado
JuanPérez2024-06-01No
AndreaFernández2024-06-02No

Y una hoja llamada “Clientes” donde se copiarán o moverán los datos.

Paso 2: Crear el script en Google Apps Script

Abrimos el editor de secuencias de comandos desde Google Sheets y creamos una nueva función llamada onEdit para manejar la copia y el movimiento de filas.

function onEdit(e) {
  var hojaOrigen = e.source.getActiveSheet();
  var hojaDestino = e.source.getSheetByName('Clientes');
  var fila = e.range.getRow();
  var columna = e.range.getColumn();
  var valor = e.value;

  // Verificar si estamos en la hoja correcta, en la columna correcta y el valor es "Sí"
  if (hojaOrigen.getName() === 'Prospectos' && columna === 4 && valor === 'Sí') {
    var rangoOrigen = hojaOrigen.getRange(fila, 1, 1, hojaOrigen.getLastColumn());
    var valores = rangoOrigen.getValues()[0];

    // Buscar la siguiente fila vacía en la hoja de destino
    var ultimaFilaDestino = hojaDestino.getLastRow();
    var nuevaFilaDestino = ultimaFilaDestino + 1;
    var rangoDestino = hojaDestino.getRange(nuevaFilaDestino, 1, 1, valores.length);

    // Copiar los valores al destino
    rangoDestino.setValues([valores]);

    // Borrar la fila original si se desea mover en lugar de copiar
    hojaOrigen.deleteRow(fila);
  }
}

Paso 3: Configurar una casilla de verificación en Google Sheets

En la hoja “Prospectos”, configuramos una columna para las casillas de verificación. Podemos hacer esto seleccionando la columna “Estado”, y luego yendo a “Datos” -> “Validación de datos”, seleccionando “Casilla de verificación”.

Paso 4: Probar el script

Guardamos el script y volvemos a Google Sheets. Al marcar una casilla de verificación en la columna “Estado” con el valor “Sí”, la fila correspondiente se debería copiar a la hoja “Clientes” y eliminar de la hoja “Prospectos”.

Conclusión

Hemos aprendido a crear una macro en Google Sheets que copia o mueve filas basándonos en una condición específica, en este caso, la selección de una casilla de verificación. Esta funcionalidad es útil para gestionar datos de prospectos y clientes, o para cualquier situación donde necesitemos mover datos entre hojas de cálculo.

Espero que este tutorial te haya sido útil.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Pin It on Pinterest

Share This