title: Python/Openpyxl copy and paste columns with formula
body: <p>I have a workbook with a worksheet, named sheet #1. I want to copy some columns from sheet #1 and change column orders a little bit.
  First, I create a new worksheet, named sheet #2. I can copy and paste from sheet #1 to sheet #2, but I find <code>openpyxl</code> copies formulas exactly as is, so I have a problem. For example, column <code>O</code> in sheet #1 has some formula like: </p>
  
  <blockquote>
    <p>O3=(M3*1)+(N3*1)</p>
  </blockquote>
  
  <p>I move column <code>M</code> in sheet #1 to column H in sheet #2 and move column <code>N</code> in sheet #1 to column I in sheet #2. When I move column O in sheet #1 to column <code>M</code> in sheet #2, I have problems. Firstly, column <code>M</code> in sheet #2's formula is still: </p>
  
  <blockquote>
    <p>M3=(M3*1)+(N3*1)</p>
  </blockquote>
  
  <p>I have a circular reference issue since I try to use myself to calculate myself. Secondly, if I move column <code>O</code> in sheet #1 to column <code>J</code> in sheet #2, I don't have this circular reference problem, but my formula is still messed up.</p>
  
  <p>I use the following way to copy and paste:</p>
  
  <pre class="lang-py prettyprint-override"><code>for i in range(0, 1000):
  
       sheet_#2.cell(row=i,column=12).value = sheet_#1.cell(row=i,column=14).value
  </code></pre>
  
  <p>I have tried <code>data_only</code> with <code>true</code> and <code>false</code> when I call <code>load_workbook</code> as follows.    </p>
  
  <pre class="lang-py prettyprint-override"><code>  my_workbook = openpyxl.load_workbook(args.input_file, data_only=False)
  </code></pre>
  
  <p>Neither works for me. <code>True</code> gets me all zeros in both sheet #1 and sheet #2. <code>False</code> gets me the circular reference problem as described above. </p>
  
  <p>Is there a way to use <code>openpyxl</code> package to solve my problem? I think as long as when copying and pasting, if worksheet name can be added to specify the cells in the formula, my problem is solved, something like this:</p>
  
  <blockquote>
    <p>M3=("Sheet #1"M3*1)+("Sheet #1"N3*1)</p>
  </blockquote>
  
  <p>If <code>openpyxl</code> doesn't do the job, is there a better package to solve this problem? <code>pandas</code>? </p>