Linda preguntó si hay alguna forma de calcular solo el libro activo.

Cuando Excel realiza un recalc, recalcula todos sus libros abiertos y, si son libros de trabajo muy grandes, a veces puede llevar más de quince minutos recalcar. Si puede limitar lo que se vuelve a calcular, el proceso obviamente se ejecutará más rápido.

Desafortunadamente, no existe un método directo para calcular un libro en particular. Sin embargo, puede calcular solo la hoja de trabajo activa, si lo desea. Primero, configure el modo de recálculo en manual siguiendo estos pasos:

  1. Muestra el cuadro de diálogo Opciones de Excel. (En Excel 2007, haga clic en el botón Office y luego en Opciones de Excel. En Excel 2010 y versiones posteriores, muestre la pestaña Archivo de la cinta y luego haga clic en Opciones).

  2. Haga clic en el área de fórmulas a la izquierda del cuadro de diálogo. (Ver figura 1)

  3. En la sección Opciones de cálculo del cuadro de diálogo, asegúrese de que el botón de opción Manual esté seleccionado.

  4. Haga clic en Aceptar.

Ahora, la única vez que se volverá a calcular su libro de trabajo (en realidad, todos sus libros de trabajo abiertos) es cuando presione F9. Si desea volver a calcular solo la hoja de trabajo actual, presione Mayús + F9.

Excel también proporciona funciones de macro que le permiten hacer cualquiera de estas tres cosas: calcular todos los libros abiertos, calcular una hoja de trabajo específica en un libro de trabajo o calcular un rango específico de celdas en una hoja de trabajo. Con este conocimiento, podría crear una macro que recorra todas las hojas de trabajo en un libro de trabajo y vuelva a calcular cada una de ellas.

La siguiente macro establece el modo de cálculo en manual (por lo que los otros libros de trabajo no calcularán) y luego recorre y calcula cada hoja del libro de trabajo activo.

Sub CalcBook()

Dim wks As Worksheet     Application.Calculation = xlManual     For Each wks In ActiveWorkbook.Worksheets         wks.Calculate     Next     Set wks = Nothing End Sub

Si cree que puede querer calcular diferentes partes de su libro de trabajo en diferentes momentos, puede expandir la macro para que realice cualquier tipo de cálculo que desee:

Sub CalcWhat()

Dim iAnsure As Integer

Application.Calculation = xlManual     iAnsure = InputBox("1 = Calculate A Used Range" _       & vbCrLf & _       "2 = Calculate This Worksheet" _       & vbCrLf & _       "3 = Calculate This Workbook" _       & vbCrLf & _       "4 = Calculate All Workbooks in Memory" _       & vbCrLf & vbCrLf & _       "Input Your Selection Number From Above" _       & vbCrLf & "Then Click OK", _       "Calculate What?", "Input Number Please", _       5000, 5000)



Select Case iAnsure         Case 1 'Range Only             Selection.Calculate         Case 2 'Worksheet Only             ActiveSheet.Calculate         Case 3 'Workbook Only             For Each wks In ActiveWorkbook.Worksheets                 wks.Calculate             Next         Case 4 'All Open Workbooks             Application.CalculateFull         End     End Select End Sub

Esta macro presenta un cuadro de entrada que le indica al usuario qué tipo de nuevo cálculo desea. Cuando el usuario ingresa un número del 1 al 4, se realiza el tipo de recálculo deseado.

_Nota: _

Si desea saber cómo usar las macros descritas en esta página (o en cualquier otra página de los sitios ExcelTips), he preparado una página especial que incluye información útil.

link: / excelribbon-ExcelTipsMacros [Haga clic aquí para abrir esa página especial en una nueva pestaña del navegador].

ExcelTips es su fuente de formación rentable en Microsoft Excel.

Este consejo (6752) se aplica a Microsoft Excel 2007, 2010, 2013 y 2016.

Puede encontrar una versión de este consejo para la interfaz de menú anterior de Excel aquí:

link: / excel-Calculating_Only_the_Active_Workbook [Calculando solo el libro activo].