Tag: .net

Excel通过c#加载

尝试使用下面的代码加载一个Excel文件给我这个错误 Microsoft Access数据库引擎找不到对象的“工作表名称”。 确保对象存在,并且正确拼写其名称和path名称。 如果“工作表名称”不是本地对象,请检查您的networking连接或联系服务器pipe理员。 我确定图纸名称是正确的。 有什么build议么? if (strFile.Trim().EndsWith(".xlsx")) { strConnectionString = string.Format("Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0};Extended Properties=\"Excel 12.0 Xml;HDR=YES;IMEX=1\";", strFile); } else if (strFile.Trim().EndsWith(".xls")) { strConnectionString = string.Format("Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};Extended Properties=\"Excel 8.0;HDR=Yes;IMEX=1\";", strFile); } OleDbConnection SQLConn = new OleDbConnection(strConnectionString); SQLConn.Open(); OleDbDataAdapter SQLAdapter = new OleDbDataAdapter(); string sql = "SELECT * FROM [" + sheetName + "]"; OleDbCommand selectCMD […]

如何按名称select特定工作表而不循环

有没有办法select一个工作簿中的工作表的名称直接而不是做一些像… For Each sheet As Worksheet In workbook.Sheets …. Next 我认为这会和打字一样简单 Dim sheet as Worksheet = workbook.Sheets("mySheetName") 显然这不是那么容易,但… 我也有这个问题的线… Dim myWorksheets As Worksheets = myWorkbook.Worksheets 上面的代码行说我正在做一个从表格到工作表的隐式转换。 那里有什么问题?

excel互操作exception0x8002000B

我有以下代码来打开工作簿,并保留一张表: //Get a new workbook. oWB = app.Workbooks.Add(Missing.Value); int len = oWB.Sheets.Count; for (int i = 1; i < len; i++) { ((Worksheet)oWB.Sheets[i]).Delete(); } oSheet = (Microsoft.Office.Interop.Excel.Worksheet)oWB.ActiveSheet; 这个代码在许多客户端configuration中工作了很多年。 出于某种原因,我有一个客户与Excel 2013(在希伯来语),在他的机器上我得到以下例外: System.Runtime.InteropServices.COMException (0x8002000B): Invalid index. (Exception from HRESULT: 0x8002000B (DISP_E_BADINDEX)) at Microsoft.Office.Interop.Excel.Sheets.get__Default(Object Index) at IOSIGHT.Win.ActiveReports.ExcelHelper.StartExcel() 如果我了解情况,似乎由于某种原因,工作簿中没有任何工作表,所以对oWb.ActiveSheet的调用将引发exception。 任何想法是什么造成这个? 是的,我看到了同样的例外其他职位,但我的代码不符合他们的情况。 感谢您的帮助,奥默

我如何正确地格式化文本从C#粘贴到Excel?

我有我的C#应用​​程序中的button,应格式化和复制来自less数来源的数据。 我有一个问题,我的文本从剪贴板粘贴到Excel。 在excel中1.12.1之类的所有文本都转换为01.12.2001 datetime格式! 而我不想这样做! foreach (var data in collection) { sb.Append(data.Column1+ "\t"); sb.Append(data.Column2+ "\t"); sb.Append(data.Column33+ "\t"); sb.AppendLine(); } var clipboardResults = new DataObject(); clipboardResults.SetData(DataFormats.Text, sb.ToString()); Clipboard.SetDataObject(clipboardResults); 是否可以格式化我的文本,所以Excel会明白,复制的数据是文本,而不是date时间!

使用Windows系统上的默认应用程序打开Excel文件

以编程方式创buildExcel文件( *.xlsx )后,我想使用*.xlsx文件的默认系统应用程序打开它。 问题是, 获取该默认应用程序,无论是Microsoft Office Excel还是可以打开*.xlsx文件的第三方软件。 考虑到,通常用户可以设置默认应用程序来在Windows(版本7,8或8.1)中打开特定的文件, 现在检查应用程序是否已经在系统上运行,如果是,请使用或打开一个新的实例来打开*.xlsx文件。 这个问题也可以概括为在Windows系统中使用为其设置的默认应用程序打开任何文件,并在没有任何应用程序可以在本地系统上打开该文件的情况下向用户发送消息。

将用户input从c#表格导出到Excel工作表

好吧,或许这是一个愚蠢的问题,但我似乎无法find答案的任何地方(可能是因为我不是措辞正确) 我有这个(真的)简单的应用程序,我不得不为一个项目。 基本上,用户把信息放入我要输出的excel表格中。 这是我正在努力的部分, 其中一个领域是食品杂货(这是一种预算应用程序),我希望能够每月添加几次杂货,例如一周一次左右,然后将其导出为Excel电子表格,可以通过用户。 在月底,它将采取最后的金额,并从工资中扣除。 所以问题是,如何在每次添加杂货后将其保存在excel中,并将下一个input保存在同一个字段中而不覆盖第一个input? 例如。 食品杂货40美元,然后下周杂货20美元,接下来的一周15美元。 最后,所有上述内容将在不同的时间段被input到相同的文本框中,在Excel中,我希望能够看到所有3个数量。 从那里我可以看到,本月在杂货上花费的总额是75美元。 我希望这是有道理的, 提前致谢

使用Excel数据读取器开源

如果要安装MS Excel以使用开源API Excel Data Reader( https://exceldatareader.codeplex.com/ )

使用C#在Excel单元格中创build和设置样式?

如何使用C#在Excel单元格中创build和设置样式? 我想用st作为上标来写“ 4月1日 ”。 我会使用string格式而不是date格式。 我已经尝试http://msdn.microsoft.com/en-us/library/f1hh9fza.aspx但获取名称'Globals'不存在当前上下文错误。 我已经添加组件Microsoft.Office.Interlop.Excel。 我是否缺less其他assembly? Excel.Style style = Globals.ThisWorkbook.Styles.Add("NewStyle");

通过Excel打开WinForm

我有一个操作Excel文件的WinForm。 现在它是一个.exe ,它有一个硬编码的文件加载或创build方法(仅用于testing)。 我需要能够通过Excel文件打开.exe文件,然后将该文件(可能作为发件人通过某个事件?)添加到窗体进行操作。 下面是一个如何将Excel文件加载到表单中的例子。 public Excel.Application EXCEL_FILE; public frmMain() { InitializeComponent(); this.EXCEL_FILE = new Excel.Application(); this.EXCEL_FILE.SheetSelectionChange += new Excel.AppEvents_SheetSelectionChangeEventHandler(activeCellChanged); ExcelHandling.LoadExcelFile(); } public static void LoadExcelFile() { frmMain._frmMain.EXCEL_FILE.Workbooks.Open(@"F:\dsa.xlsx", 0, false, 5, "", "", true, Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0); frmMain._frmMain.EXCEL_FILE.Visible = true; } 总结我需要build立的工作stream程是:打开一些Excel文件 – >调用WinForm(通过加载项或其他东西?) – >加载调用WinForm的Excel文件。

如何创build一个将读取/编辑不同的Excel文件的Windows应用程序?

我的目标是为Windows环境创build一个简单的(一个文件)可执行文件,将打开一个非常简单的forms。 表单将从excel文件中读取数据,并在用户填写表单并提交后 – 应用程序将数据写入不同的excel文件。 这将由共享驱动器中的不同用户使用。 我有C / C ++ / C#/ .Net / Python和其他语言编程经验,但从来没有真正创build一个Windows程序。 任何想法,我应该从哪里开始? (相关教程将不胜感激) 谢谢!