Approach one.
The following code can, rather "painlessly", export an image to a BMP file.
It uses the PastePicture code from Stephen Bullen's site:
http://www.bmsltd.co.uk/Excel/Default.htm
<font face=Courier New><SPAN style="color:#00007F">Option</SPAN> <SPAN style="color:#00007F">Explicit</SPAN>
<SPAN style="color:#00007F">Private</SPAN> <SPAN style="color:#00007F">Sub</SPAN> SaveRngAsBMP(Rng <SPAN style="color:#00007F">As</SPAN> Range, FileName <SPAN style="color:#00007F">As</SPAN> <SPAN style="color:#00007F">String</SPAN>)
Rng.CopyPicture xlScreen, xlBitmap
SavePicture PastePicture(xlBitmap), FileName
<SPAN style="color:#00007F">End</SPAN> <SPAN style="color:#00007F">Sub</SPAN>
<SPAN style="color:#00007F">Sub</SPAN> TestIt()
<SPAN style="color:#00007F">Dim</SPAN> Rng <SPAN style="color:#00007F">As</SPAN> Range, Fn <SPAN style="color:#00007F">As</SPAN> <SPAN style="color:#00007F">String</SPAN>
<SPAN style="color:#00007F">Set</SPAN> Rng = Range("A1:A5")
Fn = "C:\MyFile.bmp"
SaveRngAsBMP Rng, Fn
<SPAN style="color:#00007F">End</SPAN> <SPAN style="color:#00007F">Sub</SPAN></FONT>
Approach two.
The Chart object has a .Export method that enables to save directly to a JPG file... however, this method isn't very "pretty" because it must use that object as an intermediate, to get the final result. Don't need the PastePicture code from Stephen Bullen.
<font face=Courier New><SPAN style="color:#00007F">Option</SPAN> <SPAN style="color:#00007F">Explicit</SPAN>
<SPAN style="color:#00007F">Private</SPAN> <SPAN style="color:#00007F">Sub</SPAN> SaveRngAsJPG(Rng <SPAN style="color:#00007F">As</SPAN> Range, FileName <SPAN style="color:#00007F">As</SPAN> <SPAN style="color:#00007F">String</SPAN>)
<SPAN style="color:#00007F">Dim</SPAN> Cht <SPAN style="color:#00007F">As</SPAN> Chart, bScreen <SPAN style="color:#00007F">As</SPAN> <SPAN style="color:#00007F">Boolean</SPAN>, Shp <SPAN style="color:#00007F">As</SPAN> Shape
bScreen = Application.ScreenUpdating
Application.ScreenUpdating = <SPAN style="color:#00007F">False</SPAN>
<SPAN style="color:#00007F">Set</SPAN> Cht = Workbooks.Add(xlChart).Charts(1)
Cht.ChartArea.Clear
Rng.CopyPicture xlScreen, xlPicture
Cht.Paste
<SPAN style="color:#00007F">With</SPAN> Cht.Shapes(1)
.Left = 0
.Top = 0
.Width = Cht.ChartArea.Width
.Height = Cht.ChartArea.Height
<SPAN style="color:#00007F">End</SPAN> <SPAN style="color:#00007F">With</SPAN>
Cht.Export FileName, "JPEG", <SPAN style="color:#00007F">False</SPAN>
Cht.Parent.Close <SPAN style="color:#00007F">False</SPAN>
Application.ScreenUpdating = bScreen
<SPAN style="color:#00007F">End</SPAN> <SPAN style="color:#00007F">Sub</SPAN>
<SPAN style="color:#00007F">Sub</SPAN> TestIt2()
<SPAN style="color:#00007F">Dim</SPAN> Rng <SPAN style="color:#00007F">As</SPAN> Range, Fn <SPAN style="color:#00007F">As</SPAN> <SPAN style="color:#00007F">String</SPAN>
<SPAN style="color:#00007F">Set</SPAN> Rng = Range("A1:H21")
Fn = "C:\MyFile.jpg"
SaveRngAsJPG Rng, Fn
<SPAN style="color:#00007F">End</SPAN> <SPAN style="color:#00007F">Sub</SPAN>
</FONT>