En otros números de ExcelTips aprenderá a utilizar la herramienta Cámara para capturar imágenes dinámicas de diferentes partes de su hoja de trabajo. Es posible que se haya estado preguntando cómo usar el mismo tipo de función desde VBA.

La documentación sobre el tema no es muy clara, pero la siguiente macro muestra el proceso general:

Sub DoCamera()

Dim MyPrompt As String     Dim MyTitle As String     Dim UserRange As Range     Dim OutputRange As Range

Application.ScreenUpdating = True

'Prompt user for range to capture     MyPrompt = "Select the range you would like to capture."

MyTitle = "User Input Required"

On Error Resume Next     Set UserRange = Application.InputBox(Prompt:=MyPrompt, _         Title:=MyTitle, Default:=ActiveCell.Address, Type:=8)

If UserRange Is Nothing Then End     On Error GoTo 0

'Copy range to Clipboard as picture     UserRange.CopyPicture

'Prompt user for range to paste to     MyPrompt = "Select the range on which you would like to paste."

MyTitle = "User Input Required"

On Error Resume Next     Set OutputRange = Application.InputBox(Prompt:=MyPrompt, _         Title:=MyTitle, Default:=ActiveCell.Address, Type:=8)

If OutputRange Is Nothing Then End     On Error GoTo 0

'Paste picture to output range     OutputRange.PasteSpecial     Selection.Formula = UserRange.Address End Sub

Esta macro le solicita que especifique un rango para copiar, luego lo copia en el Portapapeles como una imagen y le pregunta dónde pegarlo.

Cuando se pega, la línea final de la macro es la clave para hacer que la «foto» sea dinámica, tal como se hace manualmente con la herramienta Cámara. El comando PasteSpecial realmente pega la imagen y la imagen pegada permanece seleccionada. Establecer la propiedad Fórmula para la selección (la imagen) da como resultado la naturaleza dinámica del gráfico.

_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 (10521) se aplica a Microsoft Excel 2007, 2010, 2013, 2016, 2019 y Excel en Office 365. Puede encontrar una versión de este consejo para la interfaz de menú anterior de Excel aquí:

link: / excel-Using_the_Camera_in_VBA [Usando la cámara en VBA].