Tag: winforms

保存Excel文件正在将文件访问权限更改为只读

我试图保存Excel文件,当一个checkbox被点击。 这是我的代码: Private Sub CheckBox_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBox1.CheckedChanged 'MsgBox(CType(sender, CheckBox).Name) Dim objExcel, objWorkbook, fileLocation fileLocation = "C:\Users\batman\Desktop\test3" objExcel = CreateObject("Excel.Application") objWorkbook = objExcel.Workbooks.Open _ (fileLocation) Dim strArray() As String strArray = CType(sender, CheckBox).Name.Split(",") objWorkbook.WorkSheets(CInt(strArray(0))).Activate() objExcel.Cells(CInt(strArray(1)), 3).Value = "From Windows Form" objWorkbook.Application.DisplayAlerts = False objWorkbook.SaveAs(fileLocation) objWorkbook.Close(SaveChanges:=False) End Sub 当我点击所需的checkbox,我可以看到Excel值正在更新。 但是文件test3访问现在变成了Read-Only模式。 […]

将DataTable导出到dotx中的MS词表

我一直在试图将数据导出到Excel表,但现在我想导出数据表到Word表。 我有一个单词模板文件,其中包含我想用数据表填充该对象的Excelembedded对象。 这里的代码我一直用来导出自定义值到word文件。 Object oMissing = System.Reflection.Missing.Value; Object oTemplatePath = "D:\\Mujahid.dotx"; Application wordApp = new Application(); Document wordDoc = new Document(); wordDoc = wordApp.Documents.Add(ref oTemplatePath, ref oMissing, ref oMissing, ref oMissing); foreach (Field myMergeField in wordDoc.Fields) { Range rngFieldCode = myMergeField.Code; String fieldText = rngFieldCode.Text; // ONLY GETTING THE MAILMERGE FIELDS if (fieldText.StartsWith(" MERGEFIELD")) { […]

如何保存工作表选项卡的名称导出c#

我有以下代码如何保存sheetname Excel文件请参阅下面的图像和代码,我想添加发票没有,但其显示错误 Microsoft.Office.Interop.Excel.Application app = new Microsoft.Office.Interop.Excel.Application(); // app.Visible = true; app.Workbooks.Add(@"E:\Excel Single Sheet\Invoice-INV68.xls"); app.Workbooks.Add(@"E:\Excel Single Sheet\Invoice-INV67.xls"); string path = @"E:\E:\Excel Single Sheet\New folder\"; int InvoiceNo = 221; for (int i = 2; i <= app.Workbooks.Count; i++) { InvoiceNo++; for (int j = 1; j <= app.Workbooks[i].Worksheets.Count; j++) { Microsoft.Office.Interop.Excel.Worksheet ws = app.Workbooks[i].Worksheets[j]; ws.Copy(app.Workbooks[1].Worksheets[1] + […]

间接代码执行/ C#

背景 我们目前有一个基于Excel的系统来创build声音和照明租赁公司的规格。 其中一部分是excel表格中的一个名为“autospec”的列,它由各个库存项目的Excel公式组成(例如,您指定一个扬声器,然后自动列表中的公式计算您需要的电缆并添加它们自动进入规格。 样品配方 10米麦克风电缆可能有如下公式: =IF([loudspeakers]>0,[loudspeakers]*2,0)+([mixing desk]*4) 我们现在正转向一个C#前端的正确数据库。 题 我想要的是能够将每个库存项目的autospec公式存储在表格中,并且当用户将一个项目指定为前端时,程序应该find相关的公式,执行它,并适当地改变规格数量。 底线:我需要执行一个string中包含的代码。 我是否以错误的方式去做这件事? 有没有更好的办法?

“没有给出一个或多个必需参数的值”访问Excel电子表格

它是我第一次访问和读取Excel文件(XLSX)与C#..我有问题,错误是:没有给出一个或多个所需的参数值 下面是我的代码: private void button5_Click(object sender, EventArgs e) { string ConnectionString = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Class Schedules.xlsx;Extended Properties=""Excel 12.0;HDR=NO;"""; string ExcelQuery; ExcelQuery = "SELECT A1 FROM [Sheet1$]"; OleDbConnection ExcelConnection = new OleDbConnection(ConnectionString); ExcelConnection.Open(); OleDbCommand ExcelCommand = new OleDbCommand(ExcelQuery, ExcelConnection); OleDbDataReader ExcelReader; ExcelReader = ExcelCommand.ExecuteReader(); //error happens here while (ExcelReader.Read()) { MessageBox.Show((ExcelReader.GetValue(0)).ToString()); } ExcelConnection.Close(); } 因为这是我第一次,我只是想读取A1的内容,下面是我的Excel文件: 但运行代码会给我一个错误:没有给出一个或多个所需的参数值。

Excel数据到TreeView C#

我正在寻找创build一个窗体,其中包含我在Excel中的数据树视图。 我有Windows窗体,我只是想弄清楚如何将Excel数据导出到数据树。 任何链接?

无法加载文件或程序集“Microsoft.Office.Interop.Excel”

我在WinForm应用程序中使用Excel时遇到问题。 当我在几台计算机上尝试它时,它工作得很好,但是当我在另一台计算机上尝试时,它给了我'System.IO.FileLoadException:无法加载文件或程序集'错误。 我在我的项目('Microsoft.Office.Interop.Excel')中添加了一个引用,甚至将“Copy Local”设置为true。 我不知道为什么会发生这种情况,因为所有计算机都使用相同的Office版本(Office 2007 =版本12)。 任何人有一个想法? 谢谢,Udi

Datagridview到一个特定的Excel单元格

我有2个datgridviews,试图复制标题和它的值到Excel工作表。 第一个循环对第一个datagirdview工作正常 for (int i = 1; i < dataGridView1.Columns.Count + 1; i++) { worksheet.Cells[7, i] = dataGridView1.Columns[i – 1].HeaderText; } // storing Each row and column value to excel sheet for (int i = 0; i < dataGridView1.Rows.Count – 1; i++) { for (int j = 0; j < dataGridView1.Columns.Count; j++) { worksheet.Cells[i + […]

在.xlsxm文件上导出

在我的WinApp中,我将数据导出到Excel电子表格的特定选项卡中,其中有macros(文件扩展名为.xlxm)。 在此工作簿中,数据总是在同一个单元格中的空单元格中插入,但是可能会发生以前已经存在的条目,因此您必须检索已经存在的单元格之后的第一个可用空单元格插入了数据。 单元格中的条目顺序类似于以下内容:在单元格A1:A3,然后如A10:A15中,将单元格A4到A9放置,因为它们是具有公式的单元格。 我想补充一点,我必须控制工作簿的每一个单元来填写winApp的数据。 我希望能够解释这种情况。

将DataTables导出到多个Excel工作表中

我有一大堆的DataTables,我想导出到几个Excel工作表(在一个新的电子表格/ Excel文件)。 我已经存在的代码中的“解决scheme”是两个嵌套for循环,遍历所有行和列,逐个单元格插入数据。 这并不理想,因为这个过程需要十多分钟。 由于生成的电子表格的数据量相当大,为8.5MB,但肯定会有一个更快的方法? 我正在使用Office Interop库来执行此操作; 我想我记得有些地方可以用CSV导入。 如果是这样的话,把DataTables变成CSV然后再导入到Excel中会更快吗?如果是这样,怎么办?