evento workbook.open file mensual

Solo consultas sobre macros y código VBA Excel.
Reglas del Foro 1. Antes de hacer tu pregunta intenta con el buscador de este foro (muchas preguntas ya fueron respondidas antes!)
2. Si haces una nueva pregunta, es muy recomendable que adjuntes el ejemplo Excel para poder comprenderla mejor!
3. Realiza tu pregunta de forma clara, explicando bien cada paso de lo que haces y tendrás más probabilidad de respuesta!

evento workbook.open file mensual

Notapor danippp » 04 Ene 2018 11:04

Buenas tardes.A ver si me podeis dar alguna idea sobre esto.tengo una macro que actualiza los datos de personal a dos libros mas, con esta macro:
Sub PropagarCambiosPersona()

Application.ScreenUpdating = False

'Application.Wait Now + TimeValue("00:00:5") 'temporizador
' CreateObject("wscript.shell").Popup _
' "Actualizando datos.Espere por favor....", 5, "Aviso" ' mensaje popup

'Definir objetos a utilizar
Dim wbDestino As Workbook, _
wsOrigen As Excel.Worksheet, _
wsDestino As Excel.Worksheet, _
rngOrigen As Excel.Range, _
rngDestino As Excel.Range

'Indicar el libro de Excel destino
Set wbDestino = Workbooks.Open("O:\2018\ENERO 2018.xlsm")

'Activar este libro
ThisWorkbook.Activate

'Indicar las hojas de origen y destino
Set wsOrigen = Worksheets("PERSONAL")
Set wsDestino = wbDestino.Worksheets("PERSONAL")

'Indicar la celda de origen y destino
Const celdaOrigen = "A3"
Const celdaDestino = "A3"

'Inicializar los rangos de origen y destino
Set rngOrigen = wsOrigen.Range(celdaOrigen)
Set rngDestino = wsDestino.Range(celdaDestino)

'Seleccionar rango de celdas origen
rngOrigen.Select
Range(Selection, Selection.End(xlDown)).Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Copy

'Pegar datos en celda destino
rngDestino.PasteSpecial xlPasteValues
Application.CutCopyMode = False

'Guardar y cerrar el libro de Excel destino
wbDestino.Save
wbDestino.Close

End Sub

El problema que tengo es que la hoja destino (enero) cambia cada mes, con lo que tengo que estar cambiando la linea:
Set wbDestino = Workbooks.Open("O:\2018\ENERO 2018.xlsm") al nuevo mes febrero 2018.


tengo una celda en enero que me crea el mes siguiente con el nombre correcto, pero no sé cómo referenciar el workbooks open a esa celda, con lo que creo que funcionaría.
Me podeis ayudar?
Gracias
danippp
Miembro Frecuente
Miembro Frecuente
 
Mensajes: 19
Registrado: 06 Oct 2017 12:58

Re: evento workbook.open file mensual

Notapor danippp » 04 Ene 2018 11:30

Gracias, lo tengo resuelto.
No habia caido en la funcion format
danippp
Miembro Frecuente
Miembro Frecuente
 
Mensajes: 19
Registrado: 06 Oct 2017 12:58


Volver a Macros

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 3 invitados