vba - otro - macro para obtener ruta de un archivo
VBA para generar un nombre de archivo predeterminado cuando se selecciona Guardar como en Word 2016 (1)
Gracias por informar esto Tengo una posible solución que espero que ayude.
¿Podría utilizar el método SendKeys ( https://msdn.microsoft.com/en-us/library/office/gg278655.aspx ) para enviar el atajo de teclado (F12 para el diálogo Guardar como, lista completa: http: // aka .ms / Tf6yv0 ) a la aplicación, por ejemplo
App.SendKeys("{F12}")
cuando necesita que se muestre el cuadro de diálogo Guardar como?
Espero que esto ayude. Gracias de nuevo por llamarnos la atención sobre este tema, estudiaremos más a fondo la raíz del problema.
Tengo VBA que, en Word 2010, establecerá un nombre de archivo predeterminado en la pantalla Guardar como cuando el usuario selecciona la opción Guardar como archivo. Word 2016 (Office 365) tiene una interfaz diferente con una pantalla para seleccionar una ubicación de guardado (OneDrive, Esta PC, etc.) antes de que aparezca el cuadro de diálogo Guardar como "estándar" que parece haber roto el código para generar un archivo predeterminado especificado nombre.
El código (con título simplificado) es
Sub FileSaveAs()
With Dialogs(wdDialogFileSaveAs)
.Name = "MyTitle"
.Show
End With
End Sub
Si ejecuto el código en Developer to Debug, funciona bien, aparece la pantalla Guardar como y el nombre de archivo es el predeterminado, pero no funciona en el entorno en vivo donde el nombre del archivo predeterminado es el nombre del documento anterior.
Con base en la investigación web, he intentado con un código adicional para cambiar las propiedades del documento colocar el nombre en el título, ya que se supone que está predeterminado cuando se selecciona Guardar como, pero eso tampoco funciona.
Cualquier sugerencia o recomendación sobre cómo resolver esto sería apreciada.
¡Gracias!
Actualización 1/11/16: He podido acercarme más utilizando lo siguiente: Ejemplo de evento Application.DocumentBeforeSave aquí https://msdn.microsoft.com/en-us/library/office/ff838299.aspx relacionado con Using Eventos con el ejemplo de objeto de aplicación aquí https://msdn.microsoft.com/en-us/library/office/ff821218.aspx
Tuve que agregar
Cancel=True
al final del código de procedimiento de evento o el cuadro Guardar como diálogo se abrirá dos veces. Todavía es un poco torpe y parece estar limitado para ejecutarse solo antes del primer evento guardado generado por el usuario pero casi realizable.
Quería compartir lo que encontré en caso de que ayude a otros, pero cualquier otra sugerencia de mejora sería apreciada, ya que aún no parece ser la mejor solución. ¡Gracias de nuevo!