簡體   English   中英

如何從excel單元格中提取字符串?

[英]How can I extract a string from an excel cell?

我知道如何寫入單元格,但是如何將excel文件中單元格內已寫入的字符串寫入字符串對象中,以便我可以使用它在其他單元格中生成數據?

我的代碼到目前為止:

        Excel.ApplicationClass excelApp = new Excel.ApplicationClass();

        excelApp.Visible = true;

        Excel.Workbook excelWorkbook = excelApp.Workbooks.Open("C:\\Users\\user\\Desktop\\list.xls", 0, false, 5, "", "",
        false, Excel.XlPlatform.xlWindows, "", true, false, 0, true, false, false);

        Excel.Sheets excelSheets = excelWorkbook.Worksheets;

        string currentSheet = "Sheet1";
        Excel.Worksheet xlws = (Excel.Worksheet)excelSheets.get_Item(currentSheet);

我可以使用以下方法操作單元格內容:

xlws.Cells[1,1] = "foo";

但是我正在做相反的事情,那就是在我的程序中將單元格內容讀入一個字符串。

任何幫助,將不勝感激。

string myString = xlws.Cells[1, 1].Value as string;

string myString = ((Excel.Range)workSheet.Cells[1, 1]).Value2.ToString();

要避免NullReferenceException ,請不要直接對可以為null的類型( objectdynamicstring等)使用.ToString() )。 以下是將對象轉換為字符串的幾種更安全的方法:

xlws.Cells [1,1] .Value有類型對象 所以你應該指明類型為例子:

xlws.Cells[1,1].Value.ToString();

有兩種方法可以從excel docuemnt獲取值,但我認為您正在尋找的方式是:

Range range = xlws.get_range("A1", "A1");
object[] data = range.get_Value(XlRangeValueDataType.xlRangeValueDefault);
string str = (string)data[0];

一個很好的文章,解釋了其他方面也可在這里

希望有所幫助。

string val = sheet.Cells [1,6] .Text;

這是從單元格獲取文本的最佳方法。 我可以得到相同的文本,沒有任何變化。

I can suggest one more way is (If you need to read string from row 3 column "I":
    Excel.Application objExcel = new Excel.Application();
    objExcel.Visible = true;
    Excel.Workbook objBook = o     objExcel.Workbooks.Open("C:\\myexcel.xlsx");
    Excel.Worksheet objsheet =  objBook.Worksheets["Sheet1"];
    string a = Convert.ToString(objsheet.Cells.get_Item(3,"I").Value);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM