title: C# Interop Non-invocable member 'Microsoft.Office.Interop.Excel.Range.End' cannot be used like a method
body: <p>I'm using C# Interop to get some values from a Worksheet and I get the following error:</p>
  
  <blockquote>
    <p>Non-invocable member 'Microsoft.Office.Interop.Excel.Range.End' cannot be used like a method.</p>
  </blockquote>
  
  <p>This is my code:</p>
  
  <pre><code>var wb = (Excel.Workbook)Globals.ThisAddIn.Application.ActiveWorkbook;
  var wsEvars = wb.Sheets["Evars"];
  var wsProps = wb.Sheets["Props"];
  var wsEvents = wb.Sheets["Events"];
  var wsListVars = wb.Sheets["List Vars"];
  
  var sheetList = new Excel.Worksheet[] { wsEvars, wsProps, wsEvents, wsListVars };
  
  for (var i = 0; i &lt; sheetList.Length; i++)
  {
      // I get the error on the line below
      var rowLast = sheetList[i].Range["I" + sheetList[i].Rows.Count].End(Excel.XlDirection.xlUp).Row;
  }
  </code></pre>
  
  <p>The thing is that is works if I try as follows:</p>
  
  <pre><code>for (var i = 0; i &lt; sheetList.Length; i++)
  {
      var rowLast = wsEvars .Range["I" + wsEvars .Rows.Count].End(Excel.XlDirection.xlUp).Row;
  }
  </code></pre>
  
  <p>Am I missing something?</p>