Cómo crear macros para buscar datos

¿Qué macro Excel sirve para buscar datos y cómo funciona?

En programa de Excel puedes recuperar datos de un gráfico incluso cuando los datos se encuentran en una hoja de trabajo externa o libro de trabajo. Esto es útil en situaciones donde el gráfico fue creado desde, o vinculado a otro archivo de Excel que no está disponible o ha sido dañado de alguna manera.

Cuando se pierden los datos de origen, los datos aún se pueden recuperar del gráfico en sí, utilizando la macro de Microsoft Visual Basic para Aplicaciones.

¿Cómo funciona la macro para buscar datos en Excel?

Microsoft proporciona ejemplos de programación solo para ilustración, sin garantía expresa ni implícita. Esto incluye, pero no se limita a las garantías implícitas de comerciabilidad o adecuación para un propósito particular.

En este artículo se supone que se está familiarizado con el lenguaje de programación (VBA) que se está demostrando y con las herramientas que se utilizan para crear y depurar procedimientos. Los ingenieros de soporte de Microsoft pueden ayudar a explicar la funcionalidad de un procedimiento en particular, pero no modificarán estos ejemplos para proporcionar funcionalidad adicional o crear procedimientos para cumplir con sus requisitos específicos.

La siguiente macro de Excel de ejemplo coloca los datos de origen del gráfico en una hoja de trabajo llamada “ChartData” en el libro activo, comenzando en la primera columna y la primera fila.

  • Ingresa el siguiente código de macro en una hoja de módulo:

 

Sub GetChartValues()

Dim NumberOfRows As Integer

Dim X As Object

Counter = 2

 

‘ Calculate the number of rows of data.

NumberOfRows = UBound(ActiveChart.SeriesCollection(1).Values)

 

Worksheets(“ChartData”).Cells(1, 1) = “X Values”

 

‘ Write x-axis values to worksheet.

With Worksheets(“ChartData”)

.Range(.Cells(2, 1), _

.Cells(NumberOfRows + 1, 1)) = _

Application.Transpose(ActiveChart.SeriesCollection(1).XValues)

End With

 

‘ Loop through all series in the chart and write their values to

‘ the worksheet.

For Each X In ActiveChart.SeriesCollection

Worksheets(“ChartData”).Cells(1, Counter) = X.Name

 

With Worksheets(“ChartData”)

.Range(.Cells(2, Counter), _

.Cells(NumberOfRows + 1, Counter)) = _

Application.Transpose(X.Values)

End With

 

Counter = Counter + 1

Next

 

End Sub

 

 

  • Inserta una nueva hoja de cálculo en tu libro de Excel y cambia el nombre a “ChartData” (sin las comillas).
  • Selecciona el gráfico del que deseas extraer los valores de datos subyacentes. Recuerda que el gráfico se puede incrustar en una hoja de trabajo o en una hoja de gráfico separada.
  • Ejecuta la macro GetChartValues, de tal manera los datos del gráfico se colocan en la hoja de trabajo “ChartData”.

Para que el gráfico sea interactivo con los datos recuperados debes vincular el gráfico a la nueva hoja de datos en lugar de conservar los enlaces al libro perdido o dañado.

Selecciona el gráfico y haz clic en una serie para buscar el nombre de la hoja de Excel a la que está vinculado el gráfico en el libro de trabajo dañado o perdido. El nombre de la hoja aparece en la fórmula de la serie en la barra de fórmulas.

Recuerda que el nombre de la hoja incluye solo los caracteres entre el símbolo de corchete cuadrado cerrado “]” y el signo de exclamación (o apóstrofe y signo de exclamación). Deja fuera cualquier apóstrofe si se encuentra antes del signo de exclamación, porque un apóstrofe no puede ser el último carácter en un nombre de hoja.

Haz doble clic en la pestaña de la nueva hoja llamada ChartData, escribe el nombre de la hoja original desde el paso 1 sobre el “ChartData” resaltado y presiona ENTER. Este nombre debe ser el mismo que el nombre de la hoja del libro de trabajo dañado o perdido

Si no ha guardado este archivo con el gráfico y la hoja de datos, guarda el archivo. En las versiones de Excel: Excel 2003 o Excel 2002, debes hacer clic en Enlaces en el menú Edición y luego en Cambiar fuente.

  • En Excel 2007, haz clic en la pestaña Datos, haga clic en Editar enlaces, en el grupo de Connections, y luego clic en Cambiar fuente.
  • En el cuadro Archivo de origen, selecciona el enlace para cambiar y luego haz clic en Cambiar origen.
  • En el cuadro de diálogo Cambiar vínculos, selecciona el nuevo archivo con los datos y el gráfico recuperado y haz clic en Aceptar.
  • En caso de recibir el siguiente mensaje de error: Su fórmula contiene una referencia externa no válida a una hoja de trabajo.

Es probable que el nombre de la hoja que escribiste en el paso 3 no sea el mismo que el original. Regresa al paso 1.