簡體   English   中英

將文本文件中的數據添加到Excel工作表並保存

[英]Add datafrom textfile to excel worksheet and save

您好,我正在嘗試從文本輸入數據到excel並將其保存在特定的工作表名稱下。 如果只有1個工作表,它將起作用,但是當我再次調用相同的代碼時,它將覆蓋excel文件,因此它將不起作用。 我想知道是否可以從文本復制數據並將其添加到工作表中。 我已經使用剪貼板方法,但是會拋出STA錯誤。 我一次又一次地重復將文本文件復制到工作表。 這是我的代碼:非常感謝您的幫助。

 a_Books.OpenText(reportloc + ".txt", Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, 1,
  Microsoft.Office.Interop.Excel.XlTextParsingType.xlDelimited, Microsoft.Office.Interop.Excel.XlTextQualifier.xlTextQualifierDoubleQuote,
  false, true, false, false, false, false, a_Opt, a_Opt, a_Opt, a_Opt, a_Opt);

  a_Book = a_Excel.Workbooks.Add(a_Opt);

                    a_Book.Sheets.Add();

                   Microsoft.Office.Interop.Excel.Worksheet worksheet = (Microsoft.Office.Interop.Excel.Worksheet)a_Book.ActiveSheet;
                   worksheet.Activate();
                    worksheet.Name = reportname;

                    FormatRaw_Data(worksheet);
                    a_Book.SaveAs(reportloc + ".xls", Microsoft.Office.Interop.Excel.XlFileFormat.xlWorkbookNormal, a_Opt, a_Opt, a_Opt, a_Opt, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlExclusive, a_Opt, a_Opt, a_Opt, a_Opt, a_Opt);

我不確定如何插入新數據,但是如果您要寫入同一工作表並寫入相同的單元格,則可以,它將始終覆蓋它。

解決方案:添加一個新的工作表,或更改您寫入的范圍,以避免數據丟失。

編輯:在代碼上添加工作表時,選擇活動的工作表,這就是為什么它總是寫入同一工作表的原因,因此您必須選擇新的工作表,如下所示:

a_Book.Sheets.Add();
Microsoft.Office.Interop.Excel.Worksheet worksheet = a_Book.Sheets[a_Book.Sheets.Count - 1];
worksheet .Name = "You can put a name";

使用下面的代碼:閱讀excel。 確保它存在:

a_Book = a_Excel.Workbooks.Open(reportloc + ".xls", 0, false, 5, "", "", false, XlPlatform.xlWindows, "\t", true, false, 0, true, false, false);

使用TexttoColumns屬性:

for (int i = 0; i < range.Rows.Count; i++)
{
    range.Rows[i].Value = lines[i];
    range.Rows[i].TextToColumns(
        range.Rows[i],
        Microsoft.Office.Interop.Excel.XlTextParsingType.xlDelimited,
        Microsoft.Office.Interop.Excel.XlTextQualifier.xlTextQualifierNone,
        false,
        true
    );          
}

暫無
暫無

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

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