From 07961754b02838f84918b99894c14611d31e0ac8 Mon Sep 17 00:00:00 2001 From: KARTHIKASANTHANAKRISHNAN-SF4773 Date: Fri, 7 Aug 2026 17:37:44 +0530 Subject: [PATCH] 1046485-AddReadMe --- .../.NET/Replace/{ => Replace}/README.md | 0 .../Set Cell Values/Set Cell Values/README.md | 76 ++++++++++++++++++ .../.NET Core/MergeExcel/README.md | 42 ++++++++++ .../.NET/MergeExcel/MergeExcel.sln | 25 ++++++ .../MergeExcel/MergeExcel/Data/First.xlsx | Bin 0 -> 16801 bytes .../MergeExcel/MergeExcel/Data/Second.xlsx | Bin 0 -> 10562 bytes .../MergeExcel/MergeExcel/Data/Third.xlsx | Bin 0 -> 12675 bytes .../MergeExcel/MergeExcel/MergeExcel.csproj | 35 ++++++++ .../MergeExcel/MergeExcel/Output/.gitkeep | 0 .../MergeExcel/Output/MergedExcel.xlsx | Bin 0 -> 54492 bytes .../.NET/MergeExcel/MergeExcel/Program.cs | 70 ++++++++++++++++ .../.NET/MergeExcel/MergeExcel/README.md | 42 ++++++++++ .../SplitExcelDocument/SplitExcelDocument.sln | 25 ++++++ .../SplitExcelDocument/Data/Report.xlsx | Bin 0 -> 17571 bytes .../SplitExcelDocument/Output/.gitkeep | 0 .../SplitExcelDocument/Output/Budget.xlsx | Bin 0 -> 8048 bytes .../SplitExcelDocument/Output/Data.xlsx | Bin 0 -> 5723 bytes .../Output/Employee Details.xlsx | Bin 0 -> 6351 bytes .../SplitExcelDocument/Program.cs | 54 +++++++++++++ .../SplitExcelDocument/README.md | 40 +++++++++ .../SplitExcelDocument.csproj | 34 ++++++++ .../SplitExcelDocument/README.md | 40 +++++++++ 22 files changed, 483 insertions(+) rename Editing Excel cells/Replace/.NET/Replace/{ => Replace}/README.md (100%) create mode 100644 Editing Excel cells/Set Cell Values/.NET/Set Cell Values/Set Cell Values/README.md create mode 100644 Real Time Examples in Excel/Merge Excel Documents/.NET Core/MergeExcel/README.md create mode 100644 Real Time Examples in Excel/Merge Excel Documents/.NET/MergeExcel/MergeExcel.sln create mode 100644 Real Time Examples in Excel/Merge Excel Documents/.NET/MergeExcel/MergeExcel/Data/First.xlsx create mode 100644 Real Time Examples in Excel/Merge Excel Documents/.NET/MergeExcel/MergeExcel/Data/Second.xlsx create mode 100644 Real Time Examples in Excel/Merge Excel Documents/.NET/MergeExcel/MergeExcel/Data/Third.xlsx create mode 100644 Real Time Examples in Excel/Merge Excel Documents/.NET/MergeExcel/MergeExcel/MergeExcel.csproj create mode 100644 Real Time Examples in Excel/Merge Excel Documents/.NET/MergeExcel/MergeExcel/Output/.gitkeep create mode 100644 Real Time Examples in Excel/Merge Excel Documents/.NET/MergeExcel/MergeExcel/Output/MergedExcel.xlsx create mode 100644 Real Time Examples in Excel/Merge Excel Documents/.NET/MergeExcel/MergeExcel/Program.cs create mode 100644 Real Time Examples in Excel/Merge Excel Documents/.NET/MergeExcel/MergeExcel/README.md create mode 100644 Real Time Examples in Excel/SplitExcelDocument/.NET/SplitExcelDocument/SplitExcelDocument.sln create mode 100644 Real Time Examples in Excel/SplitExcelDocument/.NET/SplitExcelDocument/SplitExcelDocument/Data/Report.xlsx create mode 100644 Real Time Examples in Excel/SplitExcelDocument/.NET/SplitExcelDocument/SplitExcelDocument/Output/.gitkeep create mode 100644 Real Time Examples in Excel/SplitExcelDocument/.NET/SplitExcelDocument/SplitExcelDocument/Output/Budget.xlsx create mode 100644 Real Time Examples in Excel/SplitExcelDocument/.NET/SplitExcelDocument/SplitExcelDocument/Output/Data.xlsx create mode 100644 Real Time Examples in Excel/SplitExcelDocument/.NET/SplitExcelDocument/SplitExcelDocument/Output/Employee Details.xlsx create mode 100644 Real Time Examples in Excel/SplitExcelDocument/.NET/SplitExcelDocument/SplitExcelDocument/Program.cs create mode 100644 Real Time Examples in Excel/SplitExcelDocument/.NET/SplitExcelDocument/SplitExcelDocument/README.md create mode 100644 Real Time Examples in Excel/SplitExcelDocument/.NET/SplitExcelDocument/SplitExcelDocument/SplitExcelDocument.csproj create mode 100644 Real Time Examples in Excel/SplitExcelDocument/SplitExcelDocument/README.md diff --git a/Editing Excel cells/Replace/.NET/Replace/README.md b/Editing Excel cells/Replace/.NET/Replace/Replace/README.md similarity index 100% rename from Editing Excel cells/Replace/.NET/Replace/README.md rename to Editing Excel cells/Replace/.NET/Replace/Replace/README.md diff --git a/Editing Excel cells/Set Cell Values/.NET/Set Cell Values/Set Cell Values/README.md b/Editing Excel cells/Set Cell Values/.NET/Set Cell Values/Set Cell Values/README.md new file mode 100644 index 00000000..33663119 --- /dev/null +++ b/Editing Excel cells/Set Cell Values/.NET/Set Cell Values/Set Cell Values/README.md @@ -0,0 +1,76 @@ +# Edit Excel document using C# + +The [.NET Excel Library](https://www.syncfusion.com/document-sdk/net-excel-library) enables you to create, read, and edit Excel documents programmatically without Microsoft Excel or interop dependencies. + +## Steps to edit an Excel document programmatically + +Step 1: Create a new C# Console Application project. + +Step 2: Name the project. + +Step 3: Install the [Syncfusion.XlsIO.Net.Core](https://www.nuget.org/packages/Syncfusion.XlsIO.Net.Core) NuGet package as reference to your .NET Standard applications from [NuGet.org](https://www.nuget.org). + +Step 4: Include the following namespaces in the **Program.cs** file. +```csharp +using System.IO; +using Syncfusion.XlsIO; +``` +Step 5: Include the below code snippet in **Program.cs** to edit an Excel document. +```csharp +using (ExcelEngine excelEngine = new ExcelEngine()) +{ + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Xlsx; + + IWorkbook workbook = application.Workbooks.Open(Path.GetFullPath(@"Data/Input.xlsx")); + IWorksheet sheet = workbook.Worksheets[0]; + + sheet.Range["D1"].Text = "In Stock"; + sheet.Range["E1"].Text = "Total Price"; + sheet.Range["F1"].Text = "Discount (10%)"; + sheet.Range["G1"].Text = "Final Price"; + + sheet.Range["D2"].Boolean = true; + sheet.Range["D3"].Boolean = true; + + sheet.Range["A4"].Text = "Bag"; + sheet.Range["B4"].Number = 500; + sheet.Range["C4"].Number = 5; + sheet.Range["D4"].Boolean = false; + + sheet.Range["A5"].Text = "Bottle"; + sheet.Range["B5"].Number = 100; + sheet.Range["C5"].Number = 10; + sheet.Range["D5"].Boolean = true; + + sheet.Range["E2"].Formula = "B2*C2"; + sheet.Range["F2"].Formula = "E2*0.1"; + sheet.Range["G2"].Formula = "E2-F2"; + + sheet.Range["E3"].Formula = "B3*C3"; + sheet.Range["F3"].Formula = "E3*0.1"; + sheet.Range["G3"].Formula = "E3-F3"; + + sheet.Range["E4"].Formula = "B4*C4"; + sheet.Range["F4"].Formula = "E4*0.1"; + sheet.Range["G4"].Formula = "E4-F4"; + + sheet.Range["E5"].Formula = "B5*C5"; + sheet.Range["F5"].Formula = "E5*0.1"; + sheet.Range["G5"].Formula = "E5-F5"; + + sheet.Range["A6"].Text = "Totals"; + sheet.Range["E6"].Formula = "SUM(E2:E5)"; + sheet.Range["F6"].Formula = "SUM(F2:F5)"; + sheet.Range["G6"].Formula = "SUM(G2:G5)"; + + sheet.Range["A1:G1"].CellStyle.Font.Bold = true; + sheet.Range["A1:G6"].CellStyle.HorizontalAlignment = ExcelHAlign.HAlignCenter; + + IListObject table = sheet.ListObjects.Create("SalesTable", sheet.Range["A1:G6"]); + table.BuiltInTableStyle = TableBuiltInStyles.TableStyleMedium23; + + workbook.SaveAs(Path.GetFullPath(@"Output/Output.xlsx")); + workbook.Close(); +} +``` diff --git a/Real Time Examples in Excel/Merge Excel Documents/.NET Core/MergeExcel/README.md b/Real Time Examples in Excel/Merge Excel Documents/.NET Core/MergeExcel/README.md new file mode 100644 index 00000000..25b4c25c --- /dev/null +++ b/Real Time Examples in Excel/Merge Excel Documents/.NET Core/MergeExcel/README.md @@ -0,0 +1,42 @@ +# Merge Multiple Excel Files into One Excel File in C# + +The [.NET Excel Library](https://www.syncfusion.com/document-sdk/net-excel-library) enables you to create, read, and edit Excel documents programmatically without Microsoft Excel or interop dependencies. Using this library, you can **merge multiple Excel files into one Excel file** using C#. + +## Steps to Merge Multiple Excel Files into One Excel File + +Step 1: Create a new C# Console Application project. + +Step 2: Name the project. + +Step 3: Install the [Syncfusion.XlsIO.Net.Core](https://www.nuget.org/packages/Syncfusion.XlsIO.Net.Core) NuGet package as reference to your .NET Standard applications from [NuGet.org](https://www.nuget.org). + +Step 4: Include the following namespaces in the **Program.cs** file. +```csharp +using System.IO; +using Syncfusion.XlsIO; +``` +Step 5: Include the below code snippet in **Program.cs** to merge multiple Excel files into one Excel file +```csharp +using (ExcelEngine excelEngine = new ExcelEngine()) +{ + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Xlsx; + IWorkbook workbook = application.Workbooks.Create(0); + + //Loop through each Excel document and add the worksheets to the new workbook + foreach (Stream stream in streams) + { + stream.Position = 0; + IWorkbook tempWorkbook = application.Workbooks.Open(stream); + workbook.Worksheets.AddCopy(tempWorkbook.Worksheets); + tempWorkbook.Close(); + } + + //Save the workbook to a memory stream + MemoryStream memoryStream = new MemoryStream(); + workbook.Version = ExcelVersion.Xlsx; + workbook.SaveAs(memoryStream); + + return memoryStream; +} +``` \ No newline at end of file diff --git a/Real Time Examples in Excel/Merge Excel Documents/.NET/MergeExcel/MergeExcel.sln b/Real Time Examples in Excel/Merge Excel Documents/.NET/MergeExcel/MergeExcel.sln new file mode 100644 index 00000000..61033c22 --- /dev/null +++ b/Real Time Examples in Excel/Merge Excel Documents/.NET/MergeExcel/MergeExcel.sln @@ -0,0 +1,25 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.9.34310.174 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MergeExcel", "MergeExcel\MergeExcel.csproj", "{B68720C9-71D9-4706-B1E2-7C207699EF1D}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {B68720C9-71D9-4706-B1E2-7C207699EF1D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {B68720C9-71D9-4706-B1E2-7C207699EF1D}.Debug|Any CPU.Build.0 = Debug|Any CPU + {B68720C9-71D9-4706-B1E2-7C207699EF1D}.Release|Any CPU.ActiveCfg = Release|Any CPU + {B68720C9-71D9-4706-B1E2-7C207699EF1D}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {C8553F0E-B638-4BC4-9E5B-2FC2C818FB4A} + EndGlobalSection +EndGlobal diff --git a/Real Time Examples in Excel/Merge Excel Documents/.NET/MergeExcel/MergeExcel/Data/First.xlsx b/Real Time Examples in Excel/Merge Excel Documents/.NET/MergeExcel/MergeExcel/Data/First.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..876c6e05eec4c079478ea041f6d94f684d0aa6b6 GIT binary patch literal 16801 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 literal 0 HcmV?d00001 diff --git a/Real Time Examples in Excel/Merge Excel Documents/.NET/MergeExcel/MergeExcel/Data/Second.xlsx b/Real Time Examples in Excel/Merge Excel Documents/.NET/MergeExcel/MergeExcel/Data/Second.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..e3952d07e21d19d0fba7460302eb60b411d83dbe GIT binary patch literal 10562 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 P2>$qhmAj1Uw{QOkEnsxJ literal 0 HcmV?d00001 diff --git a/Real Time Examples in Excel/Merge Excel Documents/.NET/MergeExcel/MergeExcel/Data/Third.xlsx b/Real Time Examples in Excel/Merge Excel Documents/.NET/MergeExcel/MergeExcel/Data/Third.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..2ea0162bb61531d59daa0a282c37fd26bd3fdb32 GIT binary patch literal 12675 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 + + + Exe + net8.0 + enable + enable + + + + + + + + + + + + + + Always + + + Always + + + + + + + + + + + diff --git a/Real Time Examples in Excel/Merge Excel Documents/.NET/MergeExcel/MergeExcel/Output/.gitkeep b/Real Time Examples in Excel/Merge Excel Documents/.NET/MergeExcel/MergeExcel/Output/.gitkeep new file mode 100644 index 00000000..e69de29b diff --git a/Real Time Examples in Excel/Merge Excel Documents/.NET/MergeExcel/MergeExcel/Output/MergedExcel.xlsx b/Real Time Examples in Excel/Merge Excel Documents/.NET/MergeExcel/MergeExcel/Output/MergedExcel.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..48a3eddd69f0df303971baa0677031b0e87a28c6 GIT binary patch literal 54492 zcmV)QK(xP5O9KQH0000800UWdR}1;jl#m7h0PQ~j01W^D0C;RKb98xZWpgfgZEWmY zTaTMY6#grSjjC2^mWwf$?RulN*H-hAM$JA{%0?B2v5f+Z3pla!>pL@mVQj{XF*shy zepq1kob#RA+|I!LyLI3T-#`?5FdT@=tt<*4bfD{n^MSZZW^YYVh!Z<>Z6AhUAZ|b` zzI(WjlZ_8PEdWRaBp{6M0%ssDl4N-&NwKp4fgRt%B?!?!XD|xv1U*J`DX^ojtL0k< z21`5frk?L58%dRAT@(W6?)^N3kv;Vh%v#ZGN6ciChduFu=R`1uv*Z?uli+OTIY5e+ z5wP7DD;D@zvL#v4RuYejdlGb{wHJyH_u(p-1W7D7a1|y4(bzT#>E*qP9H?uekct~Y z7a8))e=C^$@g}|8{C;yI-^$3xQYCMn=EdYUELxqW{r6W2=|!l+GHCvnHwV#7n%Z@x zAdoib$6~N(21Jc`4lo!p&G7ke;C^|bjUpPp{6-{5Su`H*XD}>+qFQ3wf>QK{@Xhv- zXeEWT1CTb1Y~Pzk9%*$Jb`+x|CjUr%C8g|FAuOLvaZ4-Sr6r-B(~=~!y@)%|hmqig zE?5JUr)sYa(Q*qyPzP&CMrvX-pCVehM}DnEqU^+O5O#g}7?q+PKVyR*1WGgxqUNtjz8RiOv6Ko(CyfpKC zf4ek8sg$-n+@r;R0-|t&9)#@vd9y^Tz7Xv(Fx7lSPrGq$1p=RzClV|jQs zPmYc8aAKSbt!MS0th3oR(w~g+xUS=Rz~bC@Y7@qmc_5KBq8pQDr6{Ky@*1 zdbsz&EW!MdH(!vO1TF~~3^YFG-j(hv8x% zq^Uk!^oa1n)Gpk}#hKEcta+Xg+?wYMybjOl%MRya*fWreE2pk;MgUxI6&&S`I+lHh z)Nxd}q>hEB*SgppnG^zW)i!`)5|vGx7RtJu4OENJ%c--l9P%yG`X} z4-%V8VRPBbrN4Rfy?Gb_jGi|Q2~qLOAFamp{s|kIdtu1*Kr7shFY)H*>!?MH5{Tf41XD#kTc+m&_ulyO~`rhB`A`e z(5I>xg(_-U6$LGY?OY9E0VD4R;=pxI2Q`35#IH;wo>OkYEA91+6Rp<`np_E{b!1w< z60P3}TFEk#5j3@1EGlFjV^I<77^~kkmSQy9JeG7+cKBFI;w?0P0vjweg^hN+`RI({ zC+%RQ@-{!+^pl$gJDc^aK49#e%Ggz7-(qFQVuc#v70S|c4_&$1y{2l@Ve7~kuF)zt zrGGII;F=e6wUt*Gft@itH$}gc2ym?xa;?=@7=WF{L2in6DFNVHh~{d`uO$LH!<6zY z!m{LS8P7A-ReNuLKcROawxnxm{h%KdTJ62V8aEVvIH?XU>q>}58L_vE$k!V=OSMNr z9Vgs8I?rn|J6*@()1CC-x3<%9E5j8c?G)3F>cXrAJAMZry~p*}HY~N944t>@9niUM zps7`Ym2g`7xy_H&%0%})vX{?by&bH0v(Y*|8+*LcPR>Sh^4et1V;S5i7F=DXwGcEO zofwN6vm388Tg4pIv{aJ3a80#WqA6$5CtJ~)jmtl|1gq<5sMbmjCC#5cIx%C>=TWlA zng(?+?iyRBNRN9g=TBbl{g`o-s{Da%T~*C`Et=9!<w|�R#A@S#G-W{KN~hCuyH!1Oxn0P0E0` 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 WHkMc streams = new List(); + + foreach (FileInfo file in files) + { + streams.Add(file.OpenRead()); + } + + Stream mergedStream = MergeExcelDocuments(streams); + + FileStream fileStream = new FileStream(outputPath + "MergedExcel.xlsx", FileMode.Create, FileAccess.Write); + mergedStream.Position = 0; + mergedStream.CopyTo(fileStream); + fileStream.Close(); + } + + ///

+ /// Merge Excel documents from the list of Excel streams + /// + /// List of Excel document stream to be merged + /// + public static Stream MergeExcelDocuments(List streams) + { + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Xlsx; + IWorkbook workbook = application.Workbooks.Create(0); + + //Loop through each Excel document and add the worksheets to the new workbook + foreach (Stream stream in streams) + { + stream.Position = 0; + IWorkbook tempWorkbook = application.Workbooks.Open(stream); + workbook.Worksheets.AddCopy(tempWorkbook.Worksheets); + tempWorkbook.Close(); + } + + //Save the workbook to a memory stream + MemoryStream memoryStream = new MemoryStream(); + workbook.Version = ExcelVersion.Xlsx; + workbook.SaveAs(memoryStream); + + return memoryStream; + } + } + } +} + + + + + + + diff --git a/Real Time Examples in Excel/Merge Excel Documents/.NET/MergeExcel/MergeExcel/README.md b/Real Time Examples in Excel/Merge Excel Documents/.NET/MergeExcel/MergeExcel/README.md new file mode 100644 index 00000000..25b4c25c --- /dev/null +++ b/Real Time Examples in Excel/Merge Excel Documents/.NET/MergeExcel/MergeExcel/README.md @@ -0,0 +1,42 @@ +# Merge Multiple Excel Files into One Excel File in C# + +The [.NET Excel Library](https://www.syncfusion.com/document-sdk/net-excel-library) enables you to create, read, and edit Excel documents programmatically without Microsoft Excel or interop dependencies. Using this library, you can **merge multiple Excel files into one Excel file** using C#. + +## Steps to Merge Multiple Excel Files into One Excel File + +Step 1: Create a new C# Console Application project. + +Step 2: Name the project. + +Step 3: Install the [Syncfusion.XlsIO.Net.Core](https://www.nuget.org/packages/Syncfusion.XlsIO.Net.Core) NuGet package as reference to your .NET Standard applications from [NuGet.org](https://www.nuget.org). + +Step 4: Include the following namespaces in the **Program.cs** file. +```csharp +using System.IO; +using Syncfusion.XlsIO; +``` +Step 5: Include the below code snippet in **Program.cs** to merge multiple Excel files into one Excel file +```csharp +using (ExcelEngine excelEngine = new ExcelEngine()) +{ + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Xlsx; + IWorkbook workbook = application.Workbooks.Create(0); + + //Loop through each Excel document and add the worksheets to the new workbook + foreach (Stream stream in streams) + { + stream.Position = 0; + IWorkbook tempWorkbook = application.Workbooks.Open(stream); + workbook.Worksheets.AddCopy(tempWorkbook.Worksheets); + tempWorkbook.Close(); + } + + //Save the workbook to a memory stream + MemoryStream memoryStream = new MemoryStream(); + workbook.Version = ExcelVersion.Xlsx; + workbook.SaveAs(memoryStream); + + return memoryStream; +} +``` \ No newline at end of file diff --git a/Real Time Examples in Excel/SplitExcelDocument/.NET/SplitExcelDocument/SplitExcelDocument.sln b/Real Time Examples in Excel/SplitExcelDocument/.NET/SplitExcelDocument/SplitExcelDocument.sln new file mode 100644 index 00000000..4b36f583 --- /dev/null +++ b/Real Time Examples in Excel/SplitExcelDocument/.NET/SplitExcelDocument/SplitExcelDocument.sln @@ -0,0 +1,25 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.9.34310.174 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SplitExcelDocument", "SplitExcelDocument\SplitExcelDocument.csproj", "{F84710FF-A205-4540-8A1F-8C05813225DD}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {F84710FF-A205-4540-8A1F-8C05813225DD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {F84710FF-A205-4540-8A1F-8C05813225DD}.Debug|Any CPU.Build.0 = Debug|Any CPU + {F84710FF-A205-4540-8A1F-8C05813225DD}.Release|Any CPU.ActiveCfg = Release|Any CPU + {F84710FF-A205-4540-8A1F-8C05813225DD}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {6FCE571C-9967-4868-B912-EC01287A7610} + EndGlobalSection +EndGlobal diff --git a/Real Time Examples in Excel/SplitExcelDocument/.NET/SplitExcelDocument/SplitExcelDocument/Data/Report.xlsx b/Real Time Examples in Excel/SplitExcelDocument/.NET/SplitExcelDocument/SplitExcelDocument/Data/Report.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..b312aada8dba8fd0585058a16118e0e828bbd2fe GIT binary patch literal 17571 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 literal 0 HcmV?d00001 diff --git a/Real Time Examples in Excel/SplitExcelDocument/.NET/SplitExcelDocument/SplitExcelDocument/Output/.gitkeep b/Real Time Examples in Excel/SplitExcelDocument/.NET/SplitExcelDocument/SplitExcelDocument/Output/.gitkeep new file mode 100644 index 00000000..e69de29b diff --git a/Real Time Examples in Excel/SplitExcelDocument/.NET/SplitExcelDocument/SplitExcelDocument/Output/Budget.xlsx b/Real Time Examples in Excel/SplitExcelDocument/.NET/SplitExcelDocument/SplitExcelDocument/Output/Budget.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..9833d6db16c37d4abdafdce9aa8142092a95d949 GIT binary patch literal 8048 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

>1MrWZ#$Q0 zZ}>;QUl<5V%fWn>h6ey(dzv2`zaM^^fgE=7gL}={0 zt=Hkw$>w#qaZP08@Gx(lV~Y+Riw>F9M}$!RwHIrsZBFKfj4WR#BJEpfdD$Y;kl2Mx z3Z}MLN8{XCibaHqr4B}lxgRXVFg$DoJnMW&q5I-=f>yM~=%HFWi<9z>6n>jy_%2yJRpXKR4{2uy!Ap zwr%<$i-Lxs^;~diyI*X|9;zdvK(T#4Yv6DWKCPc=z2N%{X)#`#(vN?Pdd$o`;Vf(f z2#Y$=uc-ejv46+@XOWe}wb-_?V}uxWY<%R~G)`2jdu`}Fe+u8JwLIL;8$ZJe5~&iG z%}ONo#*H623(%Rp9^xxR$30^tvW5`hNx$|b7euhKS^SczV}If#JOBe zi|-^=(?pUNNAgJ8&K*vsPqUY>PvMPqwVK`*xOUH6aJ;zTX1Ln?^AmN_W;g*T^7vWe zp~%j7ZF8H1%liEsp|IgeNqVd>wajDzJcQ%0??yHdail!**%CvWHcrenE~_N{TkhNI zyo(lGC|j1xR$ixz(CkLzi+z7sx&3!%O?=y5R{;yf4(!B%o#r63r!F8TS2hzTryrH5 z7^8v?Pl+S*DZ&#}6BOnYor#scg=f%_&eB5Kk(&L{PwQlz@0d&^Lw6yBq3kIGjs05v zh#CMojwDob)Ou~rid4}y*bzM3EBNY}UKJao#1epJ3!ug{)bEvrcfo}blNM1CFPzlk z{G?AV?;|$ZmmVWzQLP81R%nhGQ)0m0MKPO!$LoYmD>LRm$q6jh2(#SX!NP!ZZtQ(e z!3-X6$ajVFt0?Hp85G!`|F3&UY0;=ZD3u46@%#UF&kW>Z@x#B|xB=xhcAQ`%+M_2G z33!NF@njKvs;J@e6pqQwa?H!*)2ud&Wb~TwVGDfc%NLf_Rr(Gpwz9%4UN+$9qo_OhOj-gU4yW4<1t`VfZ7l^cy*1Vaz z&_Pc!rb*(VNyT&4gEatIsAy~+d(n37wkAl!^OeVcJ>5$ zVIxY|!%~~V?cr#24>)tiXMuUc2;hs0cU}7-+By?4sRR+o%5Df~IXTYZ3D1>$-HG zkdo^N^@rHbp{_Wzo9{OrbDiQ@@}GP%!MDhNDvplFDV3J6;z)(P`uO39z68h-Y~ctt z((rP!a5ebhNJ(PfkMfWTpgnp>>!?c+oaPQ^pM`rBSV14H*;Ol)AbgV{2gMQBM6lIT z=5*bEl4{MVzeDuefg%g@Bi@)P73YBf;kI_3bx|+5R7h@3P^sfbHINiLt z-?i^;k32eOCbGCT0ze%TuQ^ClS9e4Zv%TywM#$?VQgUmB0+2T_LtA5aJsSuyzuK|` z+0?@rrlH?NH%=!5d#LrrsRYZB)}2UkuSBk^57VKyaV%=qj{a*e2J*nuw|eV;7O?fW zr)?LobS%N^4~@>{Nng-5bJb%@`+ zqrjMN-sD$Rn+bZOxhzE*g^PEN#}lR?U$+zmnC%tABjvI6l{hj=Bs_ImeaMk?L1Vyp zYQ8!p{Cc~Dqf^}VYjU6mZun)!0>z(&^PZj>x^ls1jm(34TFW5ZzQwRDk!rgA{Z-gw^Jo`(^ z{HHg27v*kSgCH{Y9!(HpU>+o;unTP+f{(DuvYkqgh`EAY$dmZqPW-T+B?vm1PfEbvP{1-(%RX~DG0ssIDc0gcT@N(iGzy1%6=k_rG literal 0 HcmV?d00001 diff --git a/Real Time Examples in Excel/SplitExcelDocument/.NET/SplitExcelDocument/SplitExcelDocument/Output/Data.xlsx b/Real Time Examples in Excel/SplitExcelDocument/.NET/SplitExcelDocument/SplitExcelDocument/Output/Data.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..98eb2f7bc372ef8fb92b48d2217e365e037db55e GIT binary patch literal 5723 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 Gum1zX`bCZa literal 0 HcmV?d00001 diff --git a/Real Time Examples in Excel/SplitExcelDocument/.NET/SplitExcelDocument/SplitExcelDocument/Program.cs b/Real Time Examples in Excel/SplitExcelDocument/.NET/SplitExcelDocument/SplitExcelDocument/Program.cs new file mode 100644 index 00000000..d8c58d7a --- /dev/null +++ b/Real Time Examples in Excel/SplitExcelDocument/.NET/SplitExcelDocument/SplitExcelDocument/Program.cs @@ -0,0 +1,54 @@ +using Syncfusion.XlsIO; + + +namespace SplitExcel +{ + class Program + { + private static string inputPath = @"../../../Data/"; + + private static string outputPath = @"../../../Output/"; + static void Main(string[] args) + { + string fileName = "Report.xlsx"; + + //Split the Excel document + SplitExcelDocument(inputPath + fileName); + } + ///

+ /// Split the Excel document from the given path + /// + /// Excel file path + private static void SplitExcelDocument(string filePath) + { + FileStream inputData = new FileStream(filePath, FileMode.Open, FileAccess.ReadWrite); + + using (ExcelEngine excelEngine = new ExcelEngine()) + { + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Xlsx; + IWorkbook workbook = application.Workbooks.Open(inputData); + IWorksheets worksheets = workbook.Worksheets; + + workbook.Version = ExcelVersion.Xlsx; + + //Loop through each Excel worksheet and save it as a new workbook + foreach (IWorksheet worksheet in worksheets) + { + IWorkbook newBook = application.Workbooks.Create(0); + newBook.Worksheets.AddCopy(worksheet); + + FileStream outputData = new FileStream(outputPath + worksheet.Name + ".xlsx", FileMode.Create, FileAccess.ReadWrite); + newBook.SaveAs(outputData); + outputData.Close(); + } + } + } + } +} + + + + + + diff --git a/Real Time Examples in Excel/SplitExcelDocument/.NET/SplitExcelDocument/SplitExcelDocument/README.md b/Real Time Examples in Excel/SplitExcelDocument/.NET/SplitExcelDocument/SplitExcelDocument/README.md new file mode 100644 index 00000000..c7a4b0f4 --- /dev/null +++ b/Real Time Examples in Excel/SplitExcelDocument/.NET/SplitExcelDocument/SplitExcelDocument/README.md @@ -0,0 +1,40 @@ +# Split an Excel File into Multiple Excel Files in C# + +The [.NET Excel Library](https://www.syncfusion.com/document-sdk/net-excel-library) enables you to create, read, and edit Excel documents programmatically without Microsoft Excel or interop dependencies. Using this library, you can **split an Excel file into multiple Excel files** using C#. + +## Steps to Split an Excel File into Multiple Excel Files + +Step 1: Create a new C# Console Application project. + +Step 2: Name the project. + +Step 3: Install the [Syncfusion.XlsIO.Net.Core](https://www.nuget.org/packages/Syncfusion.XlsIO.Net.Core) NuGet package as reference to your .NET Standard applications from [NuGet.org](https://www.nuget.org). + +Step 4: Include the following namespaces in the **Program.cs** file. +```csharp +using System.IO; +using Syncfusion.XlsIO; +``` +Step 5: Include the below code snippet in **Program.cs** to split an Excel file into multiple Excel files +```csharp +using (ExcelEngine excelEngine = new ExcelEngine()) +{ + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Xlsx; + IWorkbook workbook = application.Workbooks.Open(inputData); + IWorksheets worksheets = workbook.Worksheets; + + workbook.Version = ExcelVersion.Xlsx; + + //Loop through each Excel worksheet and save it as a new workbook + foreach (IWorksheet worksheet in worksheets) + { + IWorkbook newBook = application.Workbooks.Create(0); + newBook.Worksheets.AddCopy(worksheet); + + FileStream outputData = new FileStream(outputPath + worksheet.Name + ".xlsx", FileMode.Create, FileAccess.ReadWrite); + newBook.SaveAs(outputData); + outputData.Close(); + } +} +``` \ No newline at end of file diff --git a/Real Time Examples in Excel/SplitExcelDocument/.NET/SplitExcelDocument/SplitExcelDocument/SplitExcelDocument.csproj b/Real Time Examples in Excel/SplitExcelDocument/.NET/SplitExcelDocument/SplitExcelDocument/SplitExcelDocument.csproj new file mode 100644 index 00000000..673cebc1 --- /dev/null +++ b/Real Time Examples in Excel/SplitExcelDocument/.NET/SplitExcelDocument/SplitExcelDocument/SplitExcelDocument.csproj @@ -0,0 +1,34 @@ + + + + Exe + net8.0 + enable + enable + + + + + + + + + + + + + Always + + + Always + + + + + + + + + + + diff --git a/Real Time Examples in Excel/SplitExcelDocument/SplitExcelDocument/README.md b/Real Time Examples in Excel/SplitExcelDocument/SplitExcelDocument/README.md new file mode 100644 index 00000000..c7a4b0f4 --- /dev/null +++ b/Real Time Examples in Excel/SplitExcelDocument/SplitExcelDocument/README.md @@ -0,0 +1,40 @@ +# Split an Excel File into Multiple Excel Files in C# + +The [.NET Excel Library](https://www.syncfusion.com/document-sdk/net-excel-library) enables you to create, read, and edit Excel documents programmatically without Microsoft Excel or interop dependencies. Using this library, you can **split an Excel file into multiple Excel files** using C#. + +## Steps to Split an Excel File into Multiple Excel Files + +Step 1: Create a new C# Console Application project. + +Step 2: Name the project. + +Step 3: Install the [Syncfusion.XlsIO.Net.Core](https://www.nuget.org/packages/Syncfusion.XlsIO.Net.Core) NuGet package as reference to your .NET Standard applications from [NuGet.org](https://www.nuget.org). + +Step 4: Include the following namespaces in the **Program.cs** file. +```csharp +using System.IO; +using Syncfusion.XlsIO; +``` +Step 5: Include the below code snippet in **Program.cs** to split an Excel file into multiple Excel files +```csharp +using (ExcelEngine excelEngine = new ExcelEngine()) +{ + IApplication application = excelEngine.Excel; + application.DefaultVersion = ExcelVersion.Xlsx; + IWorkbook workbook = application.Workbooks.Open(inputData); + IWorksheets worksheets = workbook.Worksheets; + + workbook.Version = ExcelVersion.Xlsx; + + //Loop through each Excel worksheet and save it as a new workbook + foreach (IWorksheet worksheet in worksheets) + { + IWorkbook newBook = application.Workbooks.Create(0); + newBook.Worksheets.AddCopy(worksheet); + + FileStream outputData = new FileStream(outputPath + worksheet.Name + ".xlsx", FileMode.Create, FileAccess.ReadWrite); + newBook.SaveAs(outputData); + outputData.Close(); + } +} +``` \ No newline at end of file