2017-03-20 7 views
0

C#.NETでSeleniumを使用しているときに、Excelシートからユーザー名とパスワードを読み取ろうとしています。セレンでExcelからデータを読むC#

using excel = Microsoft.Office.Interop.Excel; 

public void TestMethod1() 
{ 
     excel.Application xlApp = new excel.Application(); 
     excel.Workbook xlWorkbook = xlApp.Workbooks.Open(@"D:\Test\TestData.xlsx"); 
     excel._Worksheet xlWorksheet = **xlWorkbook.Sheets[1];** 
     excel.Range xlRange = xlWorksheet.UsedRange; 
} 

私は上記のコードで太字で記されているテキストで、次のエラーを取得しています:私はこの問題を解決してください

Error CS0656 Missing compiler required member 'Microsoft.CSharp.RuntimeBinder.Binder.Convert' Read Data From Excel_Office c:\users\tabish.khan\documents\visual studio 2015\Projects\Read Data From Excel_Office\Read Data From Excel_Office\OfficeReadExcel.cs 18 Active

以下のコードです。

+0

エラーメッセージはGoogleに送られましたか?あなたは何を見つけましたか?何を修正しようとしましたか? – JeffC

+0

@マーク、はい私はエラーをグーグルで試してみました。いずれのソリューションも機能しませんでした。ソリューションの1つでは、Microsoft.CSharp.dllファイルの追加を求められました。これも機能しませんでした。 –

答えて

0

私はC#クラスライブラリプロジェクトで同じエラーがあります。私は、.NET Framework 4.6を使用していると私は、Microsoft.Office.Interop.ExcelアセンブリをインストールするNuGetを使用:

using MSExcel = Microsoft.Office.Interop.Excel; 

namespace ProjectReader 
{ 
    public class ExcelExport 
    { 

     public ExcelExport() 
     { 
      xlApp = new MSExcel.Application(); 
      xlWorkBook = xlApp.Workbooks.Add(System.Reflection.Missing.Value); 
     } 

     public void CreateFile() 
     { 
      object missingValue = System.Reflection.Missing.Value; 

      foreach (MSExcel.Worksheet sht in xlWorkBook.Sheets) 
      { 
       if (xlWorkBook.Worksheets.Count > 1) 
       { 
        sht.Delete(); 
       } 
      } 

      **xlWorkSheet = (MSExcel.Worksheet)xlWorkBook.Sheets[1];** 
     } 

     private MSExcel.Application xlApp; 
     private MSExcel.Workbook xlWorkBook; 
     private MSExcel.Worksheet xlWorkSheet; 
    } 
} 
:ここ

PM> Install-Package Microsoft.Office.Interop.Excel 

は、このエラーの原因となるコードの簡易版であります

興味深いことに、問題のある行のすぐ上のforeachループのワークシートを参照する問題はありません。

関連する問題