Verwenden der Kamera in VBA (Microsoft Excel)
In anderen Ausgaben von ExcelTips erfahren Sie, wie Sie mit dem Kamera-Tool dynamische Bilder verschiedener Teile Ihres Arbeitsblatts aufnehmen. Möglicherweise haben Sie sich gefragt, wie Sie dieselbe Funktion in VBA verwenden können.
Die Dokumentation zu diesem Problem ist nicht besonders klar, aber das folgende Makro zeigt den allgemeinen Prozess:
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
Dieses Makro fordert Sie auf, einen zu kopierenden Bereich anzugeben, kopiert ihn dann als Bild in die Zwischenablage und fordert Sie auf, wo Sie ihn einfügen möchten.
Beim Einfügen ist die letzte Zeile des Makros der Schlüssel, um das „Foto“ dynamisch zu machen, genau wie dies manuell mit dem Kamera-Werkzeug erfolgt. Der Befehl PasteSpecial fügt das Bild tatsächlich ein, und das eingefügte Bild bleibt ausgewählt. Das Festlegen der Formula-Eigenschaft für die Auswahl (das Bild) führt zur Dynamik der Grafik.
_Hinweis: _
Wenn Sie wissen möchten, wie die auf dieser Seite (oder auf einer anderen Seite der ExcelTips-Websites) beschriebenen Makros verwendet werden, habe ich eine spezielle Seite vorbereitet, die hilfreiche Informationen enthält.
ExcelTips ist Ihre Quelle für kostengünstige Microsoft Excel-Schulungen.
Dieser Tipp (2207) gilt für Microsoft Excel 97, 2000, 2002 und 2003. Eine Version dieses Tipps für die Multifunktionsleistenschnittstelle von Excel (Excel 2007 und höher) finden Sie hier: