Cuadros de diálogo no deseados
Publicado por Antonio (3 intervenciones) el 15/02/2009 19:28:26
Hola a todos:
Tengo una macro que después de ejecutar un sin fin de operaciones necesita "eliminar" algunas hojas del Libro de Excel en el que estoy trabajando y "guardar como" dentro de un directorio en el que ya existe un archivo con el mismo nombre.
Al pedirle:
Sheets("Xxxx").Select
ActiveWindow.SelectedSheets.Delete
automáticamente aparece un cuadro de diálogo que dice:
"PUEDEN EXISTIR DATOS EN LAS HOJAS SELECCIONADAS PARA ELIMINAR. PARA ELIMINAR DEFINITIVAMENTE LOS DATOS, PRESIONE ELIMINAR" -- Eliminar o Cancelar
Es obvio que deseo eliminarla ya que lo estoy haciendo desde una instrucción de la macro y no porque cometí un error y presioné algo equivocadamente.
Lo que quiero es que no aparezca el cuadro de diálogo, que simplemente elimine la hoja que deseo eliminar, algo así como una instrucción anticipada a la aparición del cuadro de diálogo que acepte la eliminación.
Hay una instrucción similar que puede servir de ejemplo: si se desea cerrar un libro y que guarde, o no guarde, los cambios sin que aparezca el cuadro de diálogo, se pone:
ActiveWorkbook.Close SaveChanges:=True
Cierra el libro y guarda sin preguntar nada.
¿Hay algo semejante para el cuadro de diálogo "Eliminar"?
------------------------------------------------
El mismo problema tengo con el cuadro de diálogo que aparece cuando se quiere guardar y el archivo ya existe:
"YA EXISTE UN ARCHIVO CON NOMBRE "xx" EN ESTA UBICACIÓN. DESEA REEMPLAZAR EL ARCHIVO EXISTENTE? -- Si, No o Cancelar
Aquí deseo lo mismo que en el anterior caso: Una instrucción que reemplace el archivo existente sin más. Así se evitará también que aparezca, si el usuario en vez de apretar botón Si, aprieta el No o el Cancelar, el cuadro que indica:
"SE HA PRODUCIDO EL ERROR 1004 EN TIEMPO DE EJECUCIÓN. ERROR EN EL METODO 'SAVEAS' DE OBJETO '_WORKBOOK'
Cosa que si el usuario no conoce de macros lo dejará sin saber que hacer.
Gracias anticipadas
Antonio
Tengo una macro que después de ejecutar un sin fin de operaciones necesita "eliminar" algunas hojas del Libro de Excel en el que estoy trabajando y "guardar como" dentro de un directorio en el que ya existe un archivo con el mismo nombre.
Al pedirle:
Sheets("Xxxx").Select
ActiveWindow.SelectedSheets.Delete
automáticamente aparece un cuadro de diálogo que dice:
"PUEDEN EXISTIR DATOS EN LAS HOJAS SELECCIONADAS PARA ELIMINAR. PARA ELIMINAR DEFINITIVAMENTE LOS DATOS, PRESIONE ELIMINAR" -- Eliminar o Cancelar
Es obvio que deseo eliminarla ya que lo estoy haciendo desde una instrucción de la macro y no porque cometí un error y presioné algo equivocadamente.
Lo que quiero es que no aparezca el cuadro de diálogo, que simplemente elimine la hoja que deseo eliminar, algo así como una instrucción anticipada a la aparición del cuadro de diálogo que acepte la eliminación.
Hay una instrucción similar que puede servir de ejemplo: si se desea cerrar un libro y que guarde, o no guarde, los cambios sin que aparezca el cuadro de diálogo, se pone:
ActiveWorkbook.Close SaveChanges:=True
Cierra el libro y guarda sin preguntar nada.
¿Hay algo semejante para el cuadro de diálogo "Eliminar"?
------------------------------------------------
El mismo problema tengo con el cuadro de diálogo que aparece cuando se quiere guardar y el archivo ya existe:
"YA EXISTE UN ARCHIVO CON NOMBRE "xx" EN ESTA UBICACIÓN. DESEA REEMPLAZAR EL ARCHIVO EXISTENTE? -- Si, No o Cancelar
Aquí deseo lo mismo que en el anterior caso: Una instrucción que reemplace el archivo existente sin más. Así se evitará también que aparezca, si el usuario en vez de apretar botón Si, aprieta el No o el Cancelar, el cuadro que indica:
"SE HA PRODUCIDO EL ERROR 1004 EN TIEMPO DE EJECUCIÓN. ERROR EN EL METODO 'SAVEAS' DE OBJETO '_WORKBOOK'
Cosa que si el usuario no conoce de macros lo dejará sin saber que hacer.
Gracias anticipadas
Antonio
Valora esta pregunta
0