title: c# interop excel: Write 1D array to excel range
body: <p>I want to copy an 1D array to a column range in excel. I'm using <code>interop</code> for this purpose.</p>
  
  <p>I have already tried these things:</p>
  
  <ul>
  <li><code>range.get_Resize(Ary.Length, 1).Value2 = Ary;</code></li>
  <li><code>range.set_Value(Excel.XlRangeValueDataType.xlRangeValueDefault, Ary);</code></li>
  <li>and as simple as <code>range.Value = Ary;</code></li>
  </ul>
  
  <p>I have tried using even <code>range.value2</code>, but these things copy the very first index value in the array to the entire range.</p>
  
  <p>So say suppose, if there are 200 rows in the range and the array contains integers 101-300, than only 101 is copied throughout the range with the above tried methods.</p>
  
  <p>Can anyone please help me with this? It would be more helpful if someone can explain me this strange behavior! Thanks in advance.</p>
  
  <blockquote>
    <p>Note: I know I can do it through a <em>for loop</em>, but that takes time. I would surely like to know a method which takes less than a minute to iterate a million rows.</p>
  </blockquote>