title: Shape.CopyPicture fails (Error 1004) when Format:=xlBitmap
body: <p>I am attempting to copy a shape group which contains some charts as a high resolution picture. To achieve the high resolution, I use the options <code>Appearance:=xlPrinter</code> and <code>Format:=xlBitmap</code>. </p>
  
  <blockquote>
    <p>Run-time error '1004' Application-defined or object-defined error</p>
  </blockquote>
  
  <p>The code I am using to do this is below</p>
  
  <pre><code>ws.Shapes.Range(Array("Chart 1", "Chart 2")).Group.Name = "temp_group"
  With ws.Shapes("temp_group")
      .CopyPicture Appearance:=xlPrinter, Format:=xlBitmap
      .Ungroup
  End With
  </code></pre>
  
  <p>If I just remove the <code>Format:=xlBitmap</code> or change it to <code>Format:=xlPicture</code>, it works fine. The MSDN help shows <code>xlBitmap</code> as an option and I have tried just using 2 but that gives the same error.</p>
  
  <p>If I try the same thing on a single chart, it works just fine.</p>
  
  <pre><code>ws.ChartObjects("Chart 1").Chart.CopyPicture Appearance:=xlPrinter, Format:=xlBitmap
  </code></pre>
  
  <p>What is the best way to copy multiple charts as a high resolution picture? I would like to avoid saving them because I need to copy/paste multiple groups of up to 30 charts for exporting to OneNote.</p>
  
  <p>Edit:</p>
  
  <p>After some additional testing, it turns out that I can use <code>xlBitmap</code> if the appearance option is set to <code>xlScreen</code> instead of <code>xlPrinter</code>. However, the resolution is still pretty terrible. This is very frustrating since just copy/pasting these same charts manually gives very nice clear pictures but for some reason VBA just ruins it. VBA is required though since this would be a very time consuming process otherwise.</p>