Todoexpertos.com
http://www.todoexpertos.com
La respuesta está en Internet
Información de la pregunta
Título: Fecha automatica en el nombre del file
Experto: elsamatilde
Valoración: 5
Fecha: 09/07/2008


Fecha automatica en el nombre del file
Hola, queria saber si era posible hacer que al guardar el archivo el mismo antes de confirmar traiga la fecha que figura en una  celda de la hoja de calculo. Sè que es algo rebuscado pero me seria de gran utilidad. Saludos, Brenda

Fecha automatica en el nombre del file
Hola Brenda: Si lo que estás intentando obtener es que se guarde tu archivo con la fecha de cierta celda estos son los pasos: Entrar el Editor (con Alt + F11), seleccionar con doble clic el objeto ThisWorkBook (del panel a tu izquierda) y allí escribí esta rutina que ya te explico lo que hace: Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) ruta = ThisWorkbook.Path [b]nombre = Range("D2") & ActiveWorkbook.Name[/b] ActiveWorkbook.SaveAs ruta & "\" & nombre & ".xls" End Sub La variable [i]ruta [/i]guarda la carpeta donde se ubicará el archivo. Con ThisWorkbook.path lo guardará en la misma que el libro activo. [i]nombre[/i]: aquí se arma una cadena con la fecha y el nombre actual del libro (incluyendo su extensión, por eso coloqué la fecha delante) Pero si la fecha tendrá barras como separadores, te dará error. Tendrás que cambiarlo antes, por ej, por guiones: [b]nombre = format(Range("D2"), "dd-mm-yy") & activeworkbook.name[/b] Cuando no mencionan referencias solo se puede hacer una rutina aproximada.... espero puedas adaptarla a tus necesidades. Sinó escribime nuevamente con todos tus datos. Saludos Elsa [url=http://es.geocities.com/lacibelesdepunilla/macros]http://es.geocities.com/lacibelesdepunilla/macros[/url]

Fecha automatica en el nombre del file
Hola Elsa antes que nada gracias por tu respuesta, sinceramente no pense que se podria realizar lo q te pregunte. Te comento que lo probe pero me salio un error q dice: Run-Time error 1004 Microsoft Excel cannot access the file C:/Documents and settings/bl69422/desktop/mejoras/10/07. There are several possible reasons: The file name or path name does not exist. The file you´re trying to open is being used by another program. Close the document in the other program and try again. Lo probe con la fecha del 10/07/2008 y con la primer formula que me indicastes. Tambien cuando la escribo en Visual Basic el siguiente renglon me lo marca en amarillo. ActiveWorkbook.SaveAs ruta & "\" & nombre & ".xls" Muchas Gracias, Brenda

Fecha automatica en el nombre del file
La fecha no puede llevar barras como separadores, por eso te indiqué que utilizaras la expresión format(...), fijate en mi respuesta . La cadena que tenés que armar a continuación del [b]ActiveWorkbook.SaveAs ....... [/b]tiene que ser tal como lo verás en tu barra de dirección, es decir yo agregué una barra (ruta & "\" & nombre) pero si ya incluiste la barra en la variable ruta no hará falta que la agregues aquí..... Sin referencias o nombres concretos no puedo explicarte más de lo que te escribí.... tendrás que poner un poco de tu parte para armar el nombre del archivo y su ruta, tal como lo ves en cualquiera de tus carpetas.... Sinó decime exactamente cuál será la carpeta donde guardarás el archivo, y cómo se llamará el libro, además de la fecha. Saludos Elsa

Fecha automatica en el nombre del file
Hola Elsa, Disculpa mi tardanza entre preg y respuesta, bueno te comento que modifique un par de cosas de la rutina que me pasastes para que la fecha me figure al final del file y no al principio. Lo ultimo q necesitaria para poder darle un cierre seria que cuando pongo la rutina, me aparecer el nombre del file .xls y despues la fecha. Yo necesitaria que quede el nombre del file la fecha y desp xls. Te copio la rutina que estoy utilizando. Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) ruta = ThisWorkbook.Path nombre = ActiveWorkbook.Name & Format(Range("D2"), "yyyymmdd") ActiveWorkbook.SaveAs ruta & "\" & nombre & ".xls" End Sub Muchas Gracias, Brenda

Fecha automatica en el nombre del file
[b]ActiveWorkbook.Name[/b] contiene también la extensión. Entonces tenés que tomar la parte del nombre solamente con esto: [b]nbre = left(activeworkbook.Name, len(activeworkbook.name) -4)[/b] Entonces la cadena te queda: nombre = [b]nbre [/b]& Format(.........) Saludos Elsa [url=http://es.geocities.com/lacibelesdepunilla]http://es.geocities.com/lacibelesdepunilla[/url]

Pregunta finalizada. Valoración: 5
Elsa Muchisima Gracias por tu ayuda !! En primer lugar pregunte algo que no sabia q se podia hacer y luego de tu respuesta clara y rapida lo pude resolver. La verdad me has solucionado el dilema. Muchisimas Gracias !!


Volver al mensaje
http://www.todoexpertos.com/categorias/tecnologia-e-internet/software-y-aplicaciones/microsoft-excel/respuestas/1876110/fecha-automatica-en-el-nombre-del-file