Buenas, estoy liado con una hoja de excel, siguiendo los pasos descritos en esta web: http://smallbusiness.chron.com/add-zoom-scroll-excel-chart-41823.html Y me atoro en el paso "Create a Dynamic Named Range" Busco poder hacer zoom en un gráfico de cotizaciones, y para ello, por lo que veo, necesito que la serie histórica sea un rango nombrado, de tal manera que ese rango crezca o decrezca usando un scroll y que el gráfico se adapte en tamaño. Como lo veis?
Pfff, sé cómo hacerlo pero no sabría explicarlo, yo lo haría mediante una macro de VB para que no se vea tan "manual" y engorroso: Aquí hay un ejemplo: Para automatizar este procedimiento por medio de una macro damos clic derecho sobre el nombre de la hoja y damos clic en Ver código para abrir el editor de VBA donde pegaremos el siguiente código: Modifiquemos manualmente estos valores dejando como límite inferior el valor 80 y como límite superior el valor 120: Ahora es mucho más clara la dinámica de cada vendedor al observar las líneas tan de cerca. Para automatizar este procedimiento por medio de una macro damos clic derecho sobre el nombre de la hoja y damos clic en Ver código para abrir el editor de VBA donde pegaremos el siguiente código: Public Sub Aumentar() ActiveSheet.ChartObjects("Gráfico 4").Activate ActiveChart.Axes(xlValue).MinimumScale = 80 ActiveChart.Axes(xlValue).MaximumScale = 100 End Sub Es importante que al aplicar este código en sus trabajos personales, en la línea 2, es decir ActiveSheet.ChartObjects("Gráfico 4").Activate, se ajuste el nombre del gráfico ya que este puede variar de un libro a otro. Para identificar el nombre del gráfico, este aparece en la barra de Nombre de la hoja Excel al seleccionarlo. La tercera línea estamos asignando el valor mínimo para el eje vertical. Como este ejemplo establece una alerta roja por debajo de 80 entonces ese es el valor que estoy asignando asi que en sus trabajos personales dependiendo del valor mínimo establecido, es en esta línea donde lo deben asignar. La cuarta línea es para asignar el valor 100 al límite superior del eje vertical. Ahora insertamos una imagen de una lupa y le asignamos la macro que acabamos de crear: Ahora al dar clic sobre la imagen, automáticamente se ajusta el eje para ver mas de cerca las líneas: Para completar el ejercicio agregaremos otras líneas de código para quitar el zoom: Public Sub Disminuir() ActiveSheet.ChartObjects("Gráfico 4").Activate ActiveChart.Axes(xlValue).MinimumScaleIsAuto = True ActiveChart.Axes(xlValue).MaximumScaleIsAuto = True End Sub Insertamos otra imagen en la hoja Excel para indicar la disminución del zoom y le asignamos esta nueva macro: En esta página viene la descarga del módulo, huelga decir que como sea una versión de excel 2003 o anterior, el código cambia algo, es más, metería logicamente un UseForm
Hostia Choche, muchísimas gracias . Pero ya me lo soluciono @juan.demeer. Me toca ahora dejar bonito lo que me hizo el, y lo mismo uso algo de lo que me has puesto.