snipplrCallback({"id":54755,"title":"vba-export-excel-range-as-image-and-save-as-file","source":"
  1. ''' Set Range you want to export to file<\/span><\/div><\/li>
  2. Dim<\/span> rgExp As<\/span> Range: Set<\/span> rgExp = Range("B5:H14"<\/span>)<\/div><\/li>
  3. ''' Copy range as picture onto Clipboard<\/span><\/div><\/li>
  4. rgExp.CopyPicture Appearance:=xlScreen, Format:=xlBitmap<\/div><\/li>
  5. ''' Create an empty chart with exact size of range copied<\/span><\/div><\/li>
  6. With<\/span> ActiveSheet.ChartObjects.Add(Left:=rgExp.Left, Top:=rgExp.Top, _<\/div><\/li>
  7. Width:=rgExp.Width, Height:=rgExp.Height)<\/div><\/li>
  8. .Name = "ChartVolumeMetricsDevEXPORT"<\/span><\/div><\/li>
  9. .Activate<\/div><\/li>
  10. End<\/span> With<\/span><\/div><\/li>
  11. ''' Paste into chart area, export to file, delete chart.<\/span><\/div><\/li>
  12. ActiveChart.Paste<\/div><\/li>
  13. ActiveSheet.ChartObjects("ChartVolumeMetricsDevEXPORT"<\/span>).Chart.Export "C:\\testmeExportChart.jpg"<\/span><\/div><\/li>
  14. ActiveSheet.ChartObjects("ChartVolumeMetricsDevEXPORT"<\/span>).Delete<\/div><\/li><\/ol><\/pre>","link":"https:\/\/snipplr.com\/view\/54755\/vba-export-excel-range-as-image-and-save-as-file"});