Tag: winforms

从读取文件导出多行到Excel

我有一些代码正在用于从Excel电子表格中获取一行数据,并将其转换为另一个电子表格发送给我的客户。 我想要做的是让这个代码在最终的电子表格上返回多行。 现在我正在这样做: using (OleDbConnection conn = new OleDbConnection(pathConn)) { for (int i = 0; i < excelSheets.Length; i++) { OleDbDataAdapter adapter = new OleDbDataAdapter("Select * from [" + excelSheets[i] + "]", conn); System.Data.DataTable dt = new System.Data.DataTable(); adapter.Fill(dt); tring dtBrokerName = dt.Rows[0].Field<string>("ProducerName"); //[Sets numerous fields] // create final output report based on imported data […]

从Windows窗体DataGridView和TextBox导出数据到Excel

我有一个包含数量的TextBox控件和DataGridView的Form 。 我想从该表单导出数据到Excel文件。 我使用这个代码,它完美的DataGridView工作,但我不知道如何导出TextBox控件数据。 private void copyAlltoClipboard() { dataGridView1.SelectAll(); DataObject dataObj = dataGridView1.GetClipboardContent(); if (dataObj != null) Clipboard.SetDataObject(dataObj); } try { copyAlltoClipboard(); Microsoft.Office.Interop.Excel.Application xlexcel; Microsoft.Office.Interop.Excel.Workbook xlWorkBook Microsoft.Office.Interop.Excel.Worksheet xlWorkSheet; object misValue = System.Reflection.Missing.Value; xlexcel = new Microsoft.Office.Interop.Excel.Application(); xlexcel.Visible = true; xlWorkBook = xlexcel.Workbooks.Add(misValue) xlWorkSheet = (Microsoft.Office.Interop.Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1); Microsoft.Office.Interop.Excel.Range CR = (Microsoft.Office.Interop.Excel.Range)xlWorkSheet.Cells[1, 1]; CR.Select(); xlWorkSheet.PasteSpecial(CR, Type.Missing, Type.Missing, Type.Missing, […]

C#从我的winform文本框中导入文本到已经打开的Excel工作簿中的选定范围

尝试在我的winform文本框中写入一个或多个选定的单元格中的值。 场景: 打开Excel文件使用Windows资源pipe理器(所以这里没有编码) 在这个Excel文件的工作表中select一个单元格(我知道select多个单元格可能是一个问题,但我想稍后解决) 打开我的winform应用程序(让我们称之为LookApp以供参考) 在应用程序中做东西,使文本框包含一个string(让我们调用stringProductCode来引用) 按下LookApp上的一个button stringProductcode插入到所选单元格中 Excel将重点放在LookApp上 很明显,我可以处理第1步到第5步。但是我已经search了networking,并且在编码步骤6的方向上找不到一个片段。可能很容易编码第7步,一旦我知道第6步… 我是MSOffice编码的新手,或者是winform /数据库以外的人。 我已经在我的项目中取消了MS Interop,但不知道如何使用它:( 我真的希望你能帮忙!

自动将Excel文件复制到相同的目录和相同的文件名

我试图用c#导入一个Excel文件。 当我试图导入一个Excel文件正在创build一个新的Excel文件与导入文件相同的名称也新文件已损坏。 我不是为什么发生这种事。 我的代码: private void button1_Click(object sender, EventArgs e) { //database name string table = "importing"; // Excel sheet name string excelQuery = "select * from [Sheet1$]"; try { //create connection strings string connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\\New folder (2)\\importing1.xls;Extended Properties=\"Excel 8.0;HDR=Yes;\";"; string sqlConnectionstring = "Data Source=LAB-2\\SQLEXPRESS;Initial Catalog=LMS;Persist Security Info=True;User ID=smart;Password=smart"; //To clear the previous […]

如何设置EXCEL打印设置“打印整个工作表”? C#

我的程序将在同一个EXCEL文件中导出WorkSheets 。 而我正在尝试将打印默认设置设置为“打印整个工作簿”。 我尝试使用PrintOutEx来设置它,但是当我导出EXCEL时,它会立即打印出worksheets或进入预览模式。 我只想将默认设置为“ Print Entire Workbook 。 我想让用户先读取excel文件。 怎么办? 谢谢。 这是我的代码: Excel.Application oApp; Excel.Worksheet oSheet; Excel.Workbook oBook; //Check if the row records are more then the table row. if (rowCount > 19) more_than_table = true; oApp = new Excel.Application(); oBook = oApp.Workbooks.Add(); do { Debug.WriteLine("Page: " + sheet_page); oSheet = (Excel.Worksheet)oBook.Worksheets.Add(After: oBook.Sheets[oBook.Sheets.Count]); oSheet.Name […]

$符号从Excel文件中的值中删除

我有一个名为Price的专栏文件 价钱 $ 200 $ 250 €50 我正在使用下面的代码从我的Excel表格中读取数据到DataTable中。 OleDbDataAdapter adp = new OleDbDataAdapter("select * from [Sheet1$]", Connstr); adp.Fill(dt); 当我在价格列中检查我的DataTable时,我得到以下输出 价钱 200 250 空值 所以它所做的就是删除$符号和带有€符号的单元格,它完全忽略了该单元格中的数据,并且在这些单元格中我没有任何价值。 请提出一个解决办法。 提前致谢。

数据适配器填写电子表格不添加所有列

我试图通过使用OleDbDataAdapter类基于电子表格内容创build一个数据表。 我有57列,没有什么看起来不规则的第57列,但从第57列的数据不会增加。 第1-56列添加。 我已经使用这个代码多次列<57,但是当用户添加第57列时,它仍然只添加56.这是代码: using (OleDbDataAdapter oda = new OleDbDataAdapter()) { try { DataTable dt = new DataTable(); cmd.CommandText = "SELECT * FROM [" + sheetName + "] WHERE (Select Count(*) from [" + sheetName + "])>0"; cmd.Connection = conn; oda.SelectCommand = cmd; oda.Fill(dt); conn.Close(); return dt; } catch (Exception e) { Debug.Print("Error in sheet […]

像Excel的C#Datagridview

我正在开发一个使用DataGridView的软件。 我有一个Excel电子表格,我将一次复制整列。 所以,我需要点击DataGridView的第一个单元格(仅单击一次,而不是双击),然后点击Ctrl + V进行粘贴。 我需要在DataGrid中为每个粘贴的项目添加一行,并让DataGridView将每个剪贴板项目添加到一行中。 目前,我有一个从剪贴板接收文本的string和一个从剪贴板接收每一行的数组。 我需要帮助使用CTRL + V将剪贴板粘贴到每一行。 我需要我的DataGridView像Excel一样轻松地添加和删除项目。 谢谢大家。

缩放从excel插件打开的对话框中的问题

我们创build了一个exceladdin,通过点击一个自定义function区button来打开许多winform诊断图。 在更高的dpi机器上,winform对话框会失真。 作为单独项目的一部分,相同的对话框可以正常工作。 简而言之,从exceladdin打开winform对话框时不能正常工作。 到目前为止, 我们已经将AutoScalingMode设置为Dpi – 没有帮助。 我们已经看了AutoScalingDimensions&CurrentAutoScalingDimensions,他们仍然出于某种原因。 我们也可以通过在每个表单的load方法中调用下面的行来解决这个问题。 但是我们不确定它是如何工作的,因此不要相信它能在所有情况下解决我们的问题。 float width_ratio = (Screen.PrimaryScreen.Bounds.Width / 1920); float heigh_ratio = (Screen.PrimaryScreen.Bounds.Height / 1080); SizeF scale = new SizeF(width_ratio, heigh_ratio); this.Scale(scale);

VB.Net快速打印Excel模板

我正在使用VB.Net ERP应用程序,用于修改客户,产品,库存详细信息和计费产品。 要打印帐单,我使用了预定义的Excel模板。 点击打印button后,只需打开Excel并使用Excel对象传递值,之后就会从应用程序背景中打印活动工作表,而后者不知道这个过程。 打印时,我正面对着慢,完成整个打印操作需要大约1或2分钟时间。 我正在使用下面的代码: Private Function WriteDetailsInfileDOS(BillNumber As String, BillType As String, PrintCopy As Integer) As Boolean 'Define your Excel Objects Dim xlApp As New Excel.Application Dim xlWorkBook As Excel.Workbook Dim xlWorkSheet As Excel.Worksheet Try Select Case BillType 'Opens Source Workbook. Change path and filename as applicable Case "KAS" xlWorkBook = xlApp.Workbooks.Open(AppDomain.CurrentDomain.BaseDirectory.Replace("\bin\Debug", "") […]