hi,
i need to open already existing excel 2007 file, and add new ,by collecting data from textboxes.but while opening it ,an error has occured as:
Excel cannot open the file 'Copy of New Microsoft Office Excel Worksheet_using.xlsx' because the file format or file extension is not valid. Verify that the file has not been corrupted and that the file extension matches the format of the file.
and my code is:
<pre lang="c#">using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;
using Excel=Microsoft.Office.Interop.Excel;
namespace Hand_Held_Data_Transporter
{
public partial class AddAccount : Form
{
private static Microsoft.Office.Interop.Excel.Workbook mWorkBook;
private static Microsoft.Office.Interop.Excel.Sheets mWorkSheets;
private static Microsoft.Office.Interop.Excel.Worksheet mWSheet1;
private static Microsoft.Office.Interop.Excel.Application oXL;
object Missing = System.Reflection.Missing.Value;
public AddAccount()
{
InitializeComponent();
}
private void btnsave_Click(object sender, EventArgs e)
{
oXL = new Microsoft.Office.Interop.Excel.Application();
oXL.Visible = true;
oXL.DisplayAlerts = false;
mWorkBook = oXL.Workbooks.Open(txtbrowse.Text, 0, false, 5, "", "", false, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "", true, false, 0, true, false, false);
mWorkSheets = mWorkBook.Worksheets;
mWSheet1 = (Microsoft.Office.Interop.Excel.Worksheet)mWorkSheets.get_Item("Sheet1");
Microsoft.Office.Interop.Excel.Range range = mWSheet1.UsedRange;
int colCount = range.Columns.Count;
int rowCount = range.Rows.Count;
mWSheet1.Cells[rowCount + 1, 1] = txtid.Text;
mWSheet1.Cells[rowCount + 1, 2] = txtname.Text;
mWSheet1.Cells[rowCount + 1, 3] = txtplace.Text;
mWSheet1.Cells[rowCount + 1, 8] = txtdue.Text;
mWorkBook.SaveAs(txtbrowse.Text, Microsoft.Office.Interop.Excel.XlFileFormat.xlWorkbookNormal,
Missing, Missing, Missing, Missing, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlExclusive,
Missing, Missing, Missing,
Missing, Missing);
oXL.DisplayAlerts = true;
GC.WaitForPendingFinalizers();
GC.Collect();
GC.WaitForPendingFinalizers();
GC.Collect();
}
private void btnbrowse_Click(object sender, EventArgs e)
{
OpenFileDialog fdlg = new OpenFileDialog();
fdlg.Filter = "All Files(*.*)|*.*";
if (fdlg.ShowDialog() == DialogResult.OK)
{
txtbrowse.Text = fdlg.FileName;
File.ReadAllText(txtbrowse.Text);
}
}
}
}