`

DataGridView选中单元格数据复制到Excel

    博客分类:
  • C#
 
阅读更多
   这里只写方法,基本思路就是先将DataGridView选中单元格数据复制到剪切版中,然后再创建Excel对象等,再将剪切版中的内容复制到Excel中。注意在创建Excel对象时,一定要将Microsoft.Office.Interop.Excel引用到项目中。不多说了,直接上代码。

 /// <summary>
            /// DataGridView控件选中数据保存到Excel
            /// </summary>
            /// <param name="ExportDgv"></param>
            /// <param name="DgvTitle"></param>
            /// <returns></returns>
            public bool CopyToExcel(DataGridView ExportDgv, string DgvTitle)
            {
                try
                {
                    if (ExportDgv == null)
                    {
                        return false;
                    }

                    if (ExportDgv.Columns.Count == 0 || ExportDgv.Rows.Count == 0)
                    {
                        return false;
                    }

                    //Excel2003最大行是65535 ,最大列是255
                    //Excel2007最大行是1048576,最大列是16384
                    //if (ExportDgv.RowCount > 65536 || ExportDgv.ColumnCount > 256)
                    //{
                    //    return false;
                    //}

                    ExportDgv.Focus();

                    //复制数据到Clipboard
                    int I = ExportDgv.GetCellCount(DataGridViewElementStates.Selected);
                    if (I > 0)
                    {
                        Clipboard.SetDataObject(ExportDgv.GetClipboardContent());
                    }

                    //创建Excel对象
                    Microsoft.Office.Interop.Excel.Application xlApp = new Microsoft.Office.Interop.Excel.Application();
                    if (xlApp == null)
                    {
                        return false;
                    }
                    //创建Excel工作薄
                    Microsoft.Office.Interop.Excel.Workbook xlBook = xlApp.Workbooks.Add(true);
                    //创建Excel工作表
                    Microsoft.Office.Interop.Excel.Worksheet xlSheet = (Microsoft.Office.Interop.Excel.Worksheet)xlBook.Worksheets[1];//第1个工作表
                    //粘贴数据
                    xlSheet.get_Range("A1", System.Type.Missing).PasteSpecial(XlPasteType.xlPasteAll,
                        XlPasteSpecialOperation.xlPasteSpecialOperationNone,
                        System.Type.Missing, System.Type.Missing);

                    //显示工作薄区间
                    xlApp.Visible = true;
                    xlApp.Caption = DgvTitle;
                    //设置文本表格的属性
                    xlApp.Cells.EntireColumn.AutoFit();//自动列宽
                    xlApp.Cells.VerticalAlignment = Microsoft.Office.Interop.Excel.Constants.xlCenter;
                    xlApp.Cells.HorizontalAlignment = Microsoft.Office.Interop.Excel.Constants.xlLeft;
                    xlApp.ErrorCheckingOptions.BackgroundChecking = false;
                    return true;

                }
                catch 
                {
                    return false;
                }
            }
分享到:
评论

相关推荐

    像Excel一样复制DataGridView中的单元格区域数据_C#_c#excel_excel_treesfk_

    在实际应用中,根据数据源的不同,可能需要在复制数据时考虑数据的格式化和转换问题,确保数据在粘贴后仍能保持正确的格式。 以上就是如何在C#中实现`DataGridView`控件像Excel一样复制单元格区域数据的详细步骤。...

    利用剪切板将DataGridView中的数据复制并粘贴到Excel文件中

    ### 利用剪切板将DataGridView中的数据复制并粘贴到Excel文件中 #### 概述 本篇文章主要介绍如何通过.NET Framework中的C#语言,实现DataGridView中的数据复制到剪切板,然后将这些数据粘贴到Microsoft Excel文件中...

    像Excel一样复制DataGridView中的单元格区域数据.zip_datagridview_excel

    首先,我们需要获取当前选中的单元格范围,然后将这些单元格的数据合并成一个字符串或数组,存储到剪贴板中。 2. **选取单元格区域** `DataGridView`允许用户通过点击并拖动鼠标来选择一个矩形区域的单元格。在`...

    C# DataGridView复制粘贴-亲测可用源码.rar

    此压缩包文件“C# DataGridView复制粘贴-亲测可用源码.rar”提供了一套实现DataGridView控件中复制和粘贴功能的源代码,这对于开发者来说是非常实用的,特别是那些需要在应用程序中集成类似Excel操作功能的场景。...

    C#像Excel一样复制DataGridView中的单元格数据

    摘要:C#源码,控件类库,DataGridView C#像Excel一样复制DataGridView中的单元格区域的数据,如上图所示,选中任意单元格中的数据,点击右下角的“复制”按钮,即可将选中单元格中的数据复制到右侧的表格区域中,类似...

    C#控件之像Excel一样复制DataGridView中的单元格区域数据源码

    3. **复制数据**:当用户按下Ctrl+C时,我们需要将选定区域的数据存储到剪贴板。可以使用`DataObject`类的`SetData`方法将数据放入剪贴板,同时指定数据格式为文本,以便其他程序可以读取。 4. **粘贴数据**:当...

    DataGridView中实现与EXCEL相互复制粘贴控件

    本文将详细讲解如何在`DataGridView`中实现与Excel的双向复制粘贴功能,使得用户能轻松地在两者之间进行数据迁移。 首先,我们需要了解`DataGridView`的基本操作。`DataGridView`是Windows Forms应用程序中的一个...

    【C#源码】DataGridView复制粘贴

    在`DataGridView`中实现复制功能,主要涉及选区的设定以及数据的复制到剪贴板。你可以通过以下步骤实现: - **选区设定**:用户可以通过鼠标选择一个或多个单元格,或者通过键盘操作(如Ctrl+A)选择整个表格。 - *...

    C#在DataGridView控件中实现合并单元格

    摘要:C#源码,数据库应用,合并单元格,DataGridView Vs2008编程实例:在C#的DataGridView控件中实现合并单元格,因为数据库文件遗失了,所以演示效果什么也没看到,不过源代码还在,可根据源码还原出数据库,最主要的...

    C# dataGridView 复制粘贴删除功能

    在代码中,可以监听`dataGridView`的`MouseUp`事件,根据选择的范围调用`DataObject.SetData`方法复制数据到剪贴板。 ```csharp private void dataGridView1_MouseUp(object sender, MouseEventArgs e) { if (e....

    右键粘贴数据到DataGridView示例

    6. **插入数据**:使用`DataGridView.Rows.Add`方法追加新的行,然后将解析出的数据设置到对应的单元格中。如果覆盖数据,直接使用`DataGridView.Rows[rowIndex].Cells[columnIndex].Value = data`进行赋值。 7. **...

    C# Excel 导入 DataGridView.txt

    本篇文章将详细介绍如何利用 C# 读取 Excel 文件并将数据填充到 Windows Forms 应用程序中的 DataGridView 控件。 #### 一、环境配置与依赖库 为了能够实现 Excel 文件的操作,我们需要引用 Microsoft.Office....

    DatagridView, Access 数据库

    本项目聚焦于`DataGridView`与Access数据库的结合,实现数据的实时同步更新,同时具备删除记录以及导出数据到Excel的功能。以下是对这些关键知识点的详细说明: 1. **DataGridView**: - `DataGridView`控件是...

    DataGridView数据绑定及常用方法

    // 绑定数据到DataGridView dataGridView1.DataSource = dataTable; // 处理单元格点击事件 dataGridView1.CellClick += (sender, e) =&gt; { if (e.RowIndex &gt;= 0 && e.ColumnIndex &gt;= 0) { // 访问点击的单元格 ...

    c#利用Excel直接读取数据到DataGridView

    - 选中的 Excel 文件的数据将自动加载到 DataGridView 控件中。 #### 注意事项 - 确保 Excel 应用程序已安装在目标计算机上。 - 考虑到性能和资源管理问题,对于大型 Excel 文件,可以考虑分批读取数据或者使用...

    将DataGridView内容复制到剪贴板

    - 首先,你需要创建一个二维数组,用来存储`DataGridView`中的所有选中单元格的数据。可以遍历`DataGridView.SelectedCells`集合,获取选中的每个单元格的值。 - 如果你想复制所有数据,而非仅选中部分,可以遍历`...

    C# 选定单元格求和

    2. **遍历选中的单元格**:`dataGridView1.SelectedCells`属性返回一个包含所有选中单元格的列表。通过循环遍历这个列表,我们可以检查每个单元格是否含有有效的数据。 3. **转换并累加**:使用`Double.Parse()`...

    C# DataGridView 用法大全

    - 可以将`DataGridView`的数据导出为CSV、Excel或其他格式,方便数据交换和分析。 13. **扩展功能** - 通过继承`DataGridView`类或使用`DataGridView`的插件系统,可以自定义控件的行为和外观。 综上所述,`C# ...

    DataGridView控件

    10. 内置导出:DataGridView控件提供了一种简单的方式将数据导出为Excel或CSV格式,通过遍历行和列并写入文件实现。 11. 表格操作:可以添加、删除、隐藏和显示列,以及插入和删除行。例如,`dataGridView1.Columns...

Global site tag (gtag.js) - Google Analytics