Utilizzo della fotocamera in VBA (Microsoft Excel)
In altri numeri di ExcelTips si impara a utilizzare lo strumento Fotocamera per acquisire immagini dinamiche di diverse parti del foglio di lavoro. Forse ti starai chiedendo come utilizzare lo stesso tipo di funzionalità da VBA.
La documentazione sulla questione non è molto chiara, ma la seguente macro mostra il processo generale:
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
Questa macro richiede di specificare un intervallo da copiare, quindi lo copia negli Appunti come immagine e richiede dove incollarlo.
Quando incollata, la riga finale della macro è la chiave per rendere dinamica la “foto”, proprio come si fa manualmente con lo strumento Fotocamera. Il comando PasteSpecial incolla effettivamente l’immagine e rimane selezionata l’immagine incollata. L’impostazione della proprietà Formula per la selezione (l’immagine) determina la natura dinamica del grafico.
_Nota: _
Se desideri sapere come utilizzare le macro descritte in questa pagina (o in qualsiasi altra pagina dei siti ExcelTips), ho preparato una pagina speciale che include informazioni utili.
ExcelTips è la tua fonte di formazione economica su Microsoft Excel.
Questo suggerimento (2207) si applica a Microsoft Excel 97, 2000, 2002 e 2003. Puoi trovare una versione di questo suggerimento per l’interfaccia a nastro di Excel (Excel 2007 e versioni successive) qui: