Limpiar los datos de una hoja de excel

No he podido realizar la limpieza de datos de una hoja de excel. He realizado varias opciones.

Option A:
$Presscontrol= $Click.Press(17);
$PressShift= $Click.Press(16);
$PressDerecha= $Click.Press(39);
$PressAbajo= $Click.Press(40);
$PressClear= $Click.Press(12);
$Resultado = $Presscontrol.$PressShift.$PressDerecha.$PressAbajo.$PressClear;

Option B:
$Click.Press(17);
$Click.Press(16);
$Click.Press(39);
$Click.Press(40);
$Click.Press(12);

Option C:
$Click.Press(17 . $Click.Press(16).$Click.Press(39).$Click.Press(40);$Click.Press(12);

Option D:Comando delete.column
Option E: Comando delete.row
Option F: Comando delete. Sheet

Las opciones A,B,C funcionan sin embargo se presiona un botón a la vez, pero yo necesito que presione todos los botones al tiempo (17,16,39,40,12), estoy utilizando solamente developer.

Las opciones D,E,F NO funcionan. Aparece un error que no reconoce esos comandos, o son de lectura.

Agradezco su colaboración.

Hola, una opción podría ser primero dar clic en la zona de la celda A1, y asegurarse que no está maximizada la ventana.
la otra que se me ocurre es que hagas una macro que haga la labor dentro del libro, y luego la invoques con el objeto de Excel.

Saludos

Hola @juliantorres1, te has complicado mucho para tratar con una hoja Excel. Excel es muy sencillo de usar desde cualquier lenguaje de programación, Microsoft lo diseñó con una interfaz ActiveX que lo hace muy simple. No necesitas enviar pulsaciones de teclas ni clicks de ratón, ni nada parecido. Puedes consultar la Interfaz ActiveX de Excel en Google, serán cinco minutos.

image

Por otra parte, si deseas hacerlo directamente en Cartes Script, dispones de la clase Excel. Tienes toda la clase documentada en la pestaña “classes” de la ayuda de la derecha del RPA Developer. En la imagen se ve dónde, selecciona y despliga el nodo del árbol. Otra cosa, también tiene un ejemplo para manejar el Excel.

@rmagdalene No es necesario lo que indicas. La manera de resolverlo es mucho más sencilla, tal como le comento arriba a @juliantorres1 . Usa la clase Excel de Cartes Script o si estás utilizando un lenguaje de terceros , como C#, la interfaz ActiveX del propio Excel

Un saludo

una disculpa por mi sugerencia…no era mi intención crear confusión o complicar la respuesta.

por otro lado me surge la duda de cómo puedo utilizar los comandos del ActiveX como Range, Select, Find, etc…, ya que al utilizar la librería de cartes $Excel.Cell solo se limita a direcciones, pero no tengo algo así como $Excel.Range(“A1:A2”).Select; o similar como el ActiveX lo lee.

Gracias.

@rmagdalene para funciones “avanzadas” de Excel (no hay nada avanzado en Excel, solo poco usado) deberías usar el propio vba de Excel e invocar a Cartes desde ahí si te hiciera falta, o el lenguaje con el que suelas programar: no Cartes Script. La frase que mencionas

se refiere a ello. Recuerda, porque es parte del curso de certificación que cursaste, que Cartes está diseñado para formar parte de tu lenguaje de programación, no al revés. La frase va dirigida a un estudiante de certificación, así que también debería comprenderla en el contexto adecuado. Es de lo primero que enseñamos en el curso. Todos en este foro sabemos programar con Cartes, o están en ello. No lo olvides, en este foro las preguntas y respuestas son siempre en ese contexto, y no serán bienvenidas las que no lo estén.

Espero haber aclarado tu duda.