I recently discovered something pretty cool. Sometimes you need to take a screenshot of your worksheet and you can do that by pressing the PrintScreen key on your keyboard. (Alt + Printscreen takes a screenshot of the active window or a dialog box) Paste it to your favorite image editing software and you are done.
What if you want to take a screenshot of a large dashboard or a data table. Yes, you can zoom out to a certain extent but I would not recommend that unless you have really nice thick glasses.
Believe it or not, Excel allows you to take a screenshot of your selected cell range, whatever size. These instructions applies to excel 2010.
- Select the range you want to capture a screenshot of
- Go to "Home" tab on the ribbon
- Click the black arrow near the copy button
- Click "Copy as picture"
- Here you can select if you want it "as shown on screen" or "as shown when printed".
- Click OK
If you enable , "As shown on screen" you can choose from "Picture" or a "Bitmap". The "Picture" setting returns a terrible image, shown here:
The "Bitmap" setting returns a much nicer looking image:
and the "As shown when printed" setting returns a really large image and I am not going to show it to you here.
Include row and column headings
It is possible to include headings but you need to select "As shown when printed" and then resize the picture in your image editing software.
- Go to tab "Page Setup" on the ribbon
- Enable check boxes for Print "Grid lines" and Print "Headings"
- Go to tab "Home"
- Click arrow near the copy button
- Click "Copy as Picture"
- Select "As shown when printed"
- Click OK
- Paste the picture in your image editing software
What does the macro recorder spit out while capturing a screenshot?
Selection.CopyPicture Appearance:=xlScreen, Format:=xlBitmap
Selection.CopyPicture Appearance:=xlScreen, Format:=xlPicture
Selection.CopyPicture Appearance:=xlPrinter, Format:=xlPicture
This macro takes a screenshot of your currently selected cell range and saves the image to c:\temp\temp.gif.
Sub SavePicToFile() Selection.CopyPicture xlScreen, xlBitmap Application.DisplayAlerts = False Set tmp = Charts.Add With tmp .SeriesCollection(1).Delete .Paste .Export Filename:="C:\temp\temp.gif", Filtername:="gif" .Delete End With End Sub