Ejemplo de lectura de datos de una hoja de cálculo

Cree un bot que lea datos de una hoja de cálculo de Excel y los escriba en otra hoja de cálculo.

Antes de empezar

Para utilizar el paquete Excel avanzado, Microsoft Excel debe estar instalado en el dispositivo donde se ejecuta el bot de muestra.

Supongamos que un equipo de procesamiento de pedidos recibe datos de pedidos en una hoja de cálculo como parte del proceso de cumplimiento de pedidos. El equipo automatiza el proceso de creación de una lista de envío prioritaria desde la hoja de cálculo y la comparte con el Departamento de Preparación de Pedidos. El bot de muestra de este tutorial realiza las siguientes tareas:

  • Lee los datos de la hoja de cálculo que contienen una lista de pedidos mediante el paquete Excel avanzado.
  • Crea una nueva hoja de cálculo que contiene una lista de los pedidos que se deben enviar como prioridad.

Para este tutorial, puede descargar y usar un archivo Excel de muestra desde aquí.

Procedimiento

  1. Crear un nuevo bot.
    1. En el panel izquierdo, haga clic en Automatización.
    2. Haga clic en Crear nuevo > Bot de tareas.
    3. En la ventana Crear bot de tareas, introduzca Priority List en Nombre.
    4. Haga clic en Crear y editar.
  2. Para leer los datos de la hoja de cálculo que contienen la lista de pedidos, abra la hoja de Excel.
    1. Desde el panel Acciones, busque y agregue la acción Excel avanzado > Abrir al Editor de bots.
    2. Haga clic en Archivo y seleccione el archivo de Excel de muestra que descargó.
    3. Seleccione La hoja contiene un encabezado.
    4. Seleccione Nombre de hoja específico e introduzca order_list.
    5. En Crear sesión de Excel, haga clic en Sesión local e introduzca orderlist como nombre de sesión.
  3. Para la lista de pedidos prioritarios, cree una nueva hoja de cálculo.
    1. Desde el panel Acciones, busque y agregue la acción Excel avanzado > Crear libro de trabajo al Editor de bots.
    2. En Ruta de archivo, especifique una ruta de archivo para el nuevo archivo. Por ejemplo, C:\\bots\priority-orders.xlsx.
    3. En Nombre de hoja, introduzca priority orders.
    4. En Crear sesión de Excel, seleccione Sesión local e introduzca prioritylist como nombre de sesión.
    5. Guarde los cambios.
  4. Copie el encabezado de la hoja de cálculo de origen en la nueva hoja de cálculo.
    1. Desde el panel Acciones, busque y agregue la acción Excel avanzado > Obtener varias celdas al Editor de bots.‌
    2. En Seleccionar rango de celdas a devolver, seleccione Filas específicasy, a continuación, introduzca 1 en los campos De la fila y a la fila.
    3. En Nombre de sesión, introduzca orderlist.
    4. Para almacenar los valores copiados en una variable, cree y asigne una variable denominada HeaderData en Asignar valor a la variable. Los valores se almacenan en una variable de tabla de datos.
    5. Guarde los cambios.
  5. Escriba el encabezado copiado en la nueva hoja.
    1. Busque y agregue la acción Excel avanzado > Escribir desde la tabla de datos al Editor de bots.
    2. En Introducir variable de la tabla de datos, seleccione Datos del encabezado.
    3. Haga clic en Hoja de cálculo específica e introduzca priority orders.
    4. En Especificar primera celda, introduzca A1.
    5. En Nombre de sesión, introduzca prioritylist.
    6. Guarde los cambios.
  6. Antes de escribir los datos en la nueva hoja de cálculo, asegúrese de que la celda A2 está seleccionada en la nueva hoja de cálculo. Para ello, realice lo siguiente:
    1. Desde el panel Acciones, busque y agregue la acción Excel avanzado > Ir a la celda al Editor de bots.
    2. En Celda específica, introduzca A2.
    3. En Nombre de sesión, introduzca prioritylist
    4. Guarde los cambios.
  7. Recorra la lista de pedidos de la hoja de cálculo de origen.
    1. Desde el panel Acciones, busque y agregue la acción Bucle al Editor de bots.
    2. En Iterador, seleccione Para cada fila de la hoja de cálculo para Excel avanzado.
    3. En Recorrer, seleccione Todas las filas.
    4. En Nombre de sesión, introduzca orderlist
    5. En Asignar el valor actual a esta variable, seleccione Registroy, a continuación, cree una variable con el nombre order-record.
    6. Guarde los cambios.
  8. Seleccione los registros en los que ShippingType es igual a Prioridad.
    1. a. Desde el panel Acciones, busque y agregue la acción Si dentro de la acción Bucle.
    2. En Condición, seleccione la condición Cadena.
    3. En Valor de origen, introduzca $order_record[4]$ para seleccionar la quinta columna del registro actual.
    4. En Operador, seleccione Igual que(=).
    5. En Valor objetivo, introduzca Priority.
    6. Guarde los cambios.
  9. Si se encuentra un registro coincidente, escriba el registro en la nueva hoja de cálculo. Para ello, utilice la acción Establecer celda tantas veces como el número de columnas en los datos de origen. Sin embargo, este ejemplo utiliza la acción Bucle para lograr el mismo resultado.
    1. Desde el panel Acciones, busque y agregue la acción Bucle dentro de la acción Si.
    2. En Iterador, seleccione Para cada valor en el registro.
    3. En Variable de registro, seleccione pedido-registro.
    4. En Asignar el valor actual a una variable, seleccione crear una variable denominada RecordValue.
    5. Guarde los cambios.
    6. En el panel Variables, cree una variable con los siguientes detalles:
      • En Nombre, introduzca RecordValueCounter.
      • En Tipo, seleccione Number.
      • En Valor predeterminado, introduzca 0.
    7. Desde el panel Acciones, busque y agregue la acción Excel avanzado > Establecer celda.
    8. Asegúrese de que Celda activa esté seleccionada.
    9. En Valor de celda, introduzca $order-record[$recordValueCounter$]$.
    10. En Nombre de sesión, introduzca prioritylist
    11. Para mover el cursor a la siguiente celda de la fila, busque y agregue la acción Excel avanzado > Ir a celda y, a continuación, seleccione Una celda a la derecha en Celda activa.
    12. En Nombre de sesión, introduzca prioritylist
    13. Para incrementar la variable recordValueCounter, busque y agregue la acción Incrementar > Número. Seleccione recordValueCounter en los campos Escribir número y Asignar el valor de salida a una variable. En Ingrese el valor de incremento, introduzca 1.
    14. Guarde los cambios.
  10. Restablezca la variable recordValueCounter a cero.
    1. Busque y agregue la acción Disminuir > Número después del bucle interno, pero dentro de la acción Si.
    2. Seleccione recordValueCounter en los camposEscribir número y Asignar el valor resultado a una variable.
    3. En Ingresar el valor de incremento, introduzca 7.
    4. Guarde los cambios.
  11. Mueva el cursor a la siguiente fila antes de la siguiente iteración.
    1. Busque y agregue la acción Excel avanzado > Ir a la celda dentro de la acción del primer Bucle (después de la acción Disminuir).
    2. Haga clic en Celda activa y seleccione Comienzo de la fila.
    3. En Nombre de sesión, introduzca prioritylist
    4. Busque y agregue la acción Excel avanzado > Ir a la celda.
    5. Haga clic en Celda activa y seleccione Una celda hacia abajo.
    6. En Nombre de sesión, introduzca prioritylist
    7. Guarde los cambios.
  12. Ejecute el bot.