想不明白怎么解决的鱼 2022-05-19 07:02 采纳率: 56.3%
浏览 315
已结题

c# 想要将一个excel中数据转移到另外一个excel中,应该怎么做

c# 想要将一个excel中数据转移到另外一个excel中,应该怎么做?最好有完整一点代码

img

  • 写回答

3条回答 默认 最新

  • 码老头 2022-05-19 09:29
    关注

    源Excel:

    img

    目标Excel:

    img

    示例程序结构:

    img

    安装 EPPlus NuGet程序包:

    img

    示例程序源码:

    using OfficeOpenXml;
    using System;
    using System.IO;
    
    namespace ConsoleApp2
    {
        internal class Program
        {
            static void Main(string[] args)
            {
                var baseDirectory = AppDomain.CurrentDomain.BaseDirectory;
                var sourceExcel = Path.Combine(baseDirectory, "files", "source.xlsx");
                var disExcel = Path.Combine(baseDirectory, "files", "dist.xlsx");
                ExcelPackage.LicenseContext = LicenseContext.NonCommercial;
    
                using var packageSource = new ExcelPackage(new FileInfo(sourceExcel));
                using var packageDist = new ExcelPackage(new FileInfo(disExcel));
                var sheetSource = packageSource.Workbook.Worksheets[0];
                var sheetDist = packageDist.Workbook.Worksheets[0];
                for (var row = 2; row <= sheetDist.Dimension.End.Row; row++)
                {
                    if (sheetDist.Cells[row, 1].Value.ToString() == sheetSource.Cells[row, 1].Value.ToString())
                    {
                        sheetDist.Cells[row, 3].Value = sheetSource.Cells[row, 2].Value;
                    }
                }
                packageDist.Save();
                Console.WriteLine("数据处理完成.");
                Console.ReadKey();
            }
        }
    }
    

    运行结果:

    img

    评论 编辑记录

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 5月19日
  • 修改了问题 5月19日
  • 赞助了问题酬金10元 5月19日
  • 创建了问题 5月19日