Ver Mensaje Individual
  #2  
Antiguo 09-06-2004
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Reputación: 29
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Smile Simulación de teclazos ESC

¡Buen día a todos!

Después de haber realizado algunas pruebas con diferentes versiones y métodos de TExcelApplication, como SendKeys y Activate (los cuales no me fueron útiles en este caso), llegué a la determinación de implementar una solución al viejo estilo : El cada vez más típico truco de cambiar de hilo y simular presión de teclas programáticamente.

Código:
Uses
  GHTareas, GHVentan, GHTecl, Windows;
...  
{ Si Excel está abierto y hay una celda activa (probablemente
  esa celda se encuentra en estado de edición) }
If AEAplicacion.Visible [Localidad] And
   (AEAplicacion.ActiveCell <> Nil) Then
Begin
  ActivHiloVent(VentaClas ('XLMAIN'));  { Activar Excel }
  SimulTecl (vk_Escape);  { Simular la presión de la tecla Esc }

  { Esperar a que Excel la procese.  Cierra posible caja de
    diálogo o... }
  Sleep (250);

  { Dos Esc más }
  SimulTecl (vk_Escape);  { Segunda caja de diálogo o... }
  Sleep (250);
  SimulTecl (vk_Escape);  { ...cancela edición de la celda }
End;
De cualquier forma, sería conveniente encontrar una solución más segura y elegante.

Espero esto sea de utilidad. Seguimos en contacto.

Al González .

Última edición por Al González fecha: 09-06-2004 a las 21:28:16.
Responder Con Cita