title: How to read a empty cell value using EXCEL interop api in C#.net?
body: <p>I am getting a System.com_object error if I am trying to read the EXCEL cell which is empty. My code is : </p>
  
  <pre><code>public static List&lt;OrderPC&gt; getFilters(string fileCheckout)
      {
          List&lt;OrderPC&gt; orderPCs = new List&lt;OrderPC&gt;();
          XLDoc sldoc = new XLDoc();
  
          string localPath = @"C:\Temp\PCs.xlsx";
  
          Microsoft.Office.Interop.Excel.Application oXL=null;
          Microsoft.Office.Interop.Excel.Workbook mWorkBook=null;
          Microsoft.Office.Interop.Excel.Worksheet mWSheet1=null;
          Microsoft.Office.Interop.Excel.Range xlRange=null;
          try
          {
              oXL = new Microsoft.Office.Interop.Excel.Application();
  
              mWorkBook = oXL.Workbooks.Open(localPath);
  
              mWSheet1 = mWorkBook.Sheets[1];
  
              xlRange = mWSheet1.UsedRange;
  
              foreach (Microsoft.Office.Interop.Excel.Hyperlink hl in xlRange.Hyperlinks)
              {
  
                 int y = hl.Range.Column;
  
                  int z = hl.Range.Row;
  
                  string vFilter = mWSheet1.Cells[z, y + 1].Value2.Trim();
  
                  if (vFilter.CompareTo("Weekly") == 0)
                  {
                      String baseUri = "http://xxx.yyy.net?";
                      int followUpIndex = baseUri.Length;
                      OrderPC orderPc = new OrderPC();
                      orderPc.ProductClass = hl.TextToDisplay.Trim();
                      orderPc.HyperLink = hl.Address.Trim().Substring(followUpIndex);
                      orderPc.SpecType = mWSheet1.Cells[z, y - 1].Value2.Trim();
                       if (mWSheet1.Rows[z].Cells[y + 3] != null || mWSheet1.Rows[z].Cells[y + 3].Value2 != string.Empty)
                          {
                              orderPc.ManufactureDate = mWSheet1.Cells[z, y + 3].Value2.ToString(); //Here is the error**
                          }
                      //Console.WriteLine(orderPc.ProductClass+"----"+orderPc.HyperLink);
  
                      orderPCs.Add(orderPc);
                  }
              }
          }
          catch (Exception ex)
          {
          }
          finally
          {
              GC.Collect();
              GC.WaitForPendingFinalizers();
  
              Marshal.FinalReleaseComObject(xlRange);
              Marshal.FinalReleaseComObject(mWSheet1);
  
              mWorkBook.Close(Type.Missing, Type.Missing, Type.Missing);
              Marshal.FinalReleaseComObject(mWorkBook);
  
              oXL.Quit();
              Marshal.FinalReleaseComObject(oXL);
          }
          return orderPCs;
      }
  </code></pre>
  
  <p>This excel file has 10 columns and I suppose I'm reading a valid cell. The error is **"</p>
  
  <p><code>{Microsoft.CSharp.RuntimeBinder.RuntimeBinderException: Cannot perform runtime binding on a null reference</code><br>
     <code>at CallSite.Target(Closure , CallSite , Object )</code> <br>
     <code>at System.Dynamic.UpdateDelegates.UpdateAndExecute1[T0,TRet](CallSite site, T0 arg0)</code></p>
  
  <p>"** I don't have any clue since its COM. Help is much appreciated.</p>