Quiero que al ingresar un número en una celda me traiga datos de otra hoja

Hola,

Tengo una hoja que está llena de funciones que buscan datos en otras hojas y los muestran dependiendo del número de pedido que ingrese.

Mi problema es que uno de esos datos lo va a buscar a una hoja que tiene una tabla dinámica, como estás no se actualizan automáticamente le puse una rutina de actualizar, pero sólo se actualiza cada vez que pincho esa hoja, la idea es que al ingresar el número de pedido se actualicen todos los datos, sin botones con macros asociados

No sé si lo indicado sería ingresar otra sub rutina en la macro de actualizar, si es así favor proporcionármelo.

Gracias

Saludos

Marco

1 respuesta

Respuesta
1

Te mando mi solución: Con esta macro-evento grabada en el objeto hoja1 te controlará los cambios de la celda A1. Si esa celda cambia de valor, lanzará la macro que actualizará TODAS las tablas dinámicas que tengas en tu libro activo.

Recuerda que esta macro no se pone en un módulo, sino en el objeto hoja donde queramos que actúe. En mi ejemplo la he ubicado en la hoja1

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$1" Then
For Each hoja In ActiveWorkbook.Sheets
hoja.Select
totaltd = ActiveSheet.PivotTables.Count
For x = 1 To totaltd
ActiveSheet.PivotTables(x).PivotCache.Refresh
Next
Next
End If
End Sub

recuerda finalizar y puntuar

Me da un error, en hoja.Select ... al parecer falta algo

La macro la he probado y funciona perfectamente. Insisto, es un evento, por lo que tiene que estar grabada en el objeto hoja que deseemos (no en un módulo) y en esa hoja si alteramos el valor de la celda A1 se dispara la macro.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas