diff --git a/What-If Analysis/Apply Scenario/NET Standard/Apply Scenario/Apply Scenario.sln b/What-If Analysis/Apply Scenario/NET Standard/Apply Scenario/Apply Scenario.sln
new file mode 100644
index 00000000..30595ee9
--- /dev/null
+++ b/What-If Analysis/Apply Scenario/NET Standard/Apply Scenario/Apply Scenario.sln
@@ -0,0 +1,25 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.5.33516.290
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Apply Scenario", "Apply Scenario\Apply Scenario.csproj", "{F380A41E-6685-477D-9009-25CCA7A67887}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {F380A41E-6685-477D-9009-25CCA7A67887}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {F380A41E-6685-477D-9009-25CCA7A67887}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {F380A41E-6685-477D-9009-25CCA7A67887}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {F380A41E-6685-477D-9009-25CCA7A67887}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {752640F0-7359-486C-800B-806D15A22152}
+ EndGlobalSection
+EndGlobal
diff --git a/What-If Analysis/Apply Scenario/NET Standard/Apply Scenario/Apply Scenario/Apply Scenario.csproj b/What-If Analysis/Apply Scenario/NET Standard/Apply Scenario/Apply Scenario/Apply Scenario.csproj
new file mode 100644
index 00000000..adaf156d
--- /dev/null
+++ b/What-If Analysis/Apply Scenario/NET Standard/Apply Scenario/Apply Scenario/Apply Scenario.csproj
@@ -0,0 +1,15 @@
+
+
+
+ Exe
+ net7.0
+ Apply_Scenario
+ enable
+ enable
+
+
+
+
+
+
+
diff --git a/What-If Analysis/Apply Scenario/NET Standard/Apply Scenario/Apply Scenario/Data/WhatIfAnalysisTemplate.xlsx b/What-If Analysis/Apply Scenario/NET Standard/Apply Scenario/Apply Scenario/Data/WhatIfAnalysisTemplate.xlsx
new file mode 100644
index 00000000..64604f0a
Binary files /dev/null and b/What-If Analysis/Apply Scenario/NET Standard/Apply Scenario/Apply Scenario/Data/WhatIfAnalysisTemplate.xlsx differ
diff --git a/What-If Analysis/Apply Scenario/NET Standard/Apply Scenario/Apply Scenario/Program.cs b/What-If Analysis/Apply Scenario/NET Standard/Apply Scenario/Apply Scenario/Program.cs
new file mode 100644
index 00000000..8d7ddb3c
--- /dev/null
+++ b/What-If Analysis/Apply Scenario/NET Standard/Apply Scenario/Apply Scenario/Program.cs
@@ -0,0 +1,50 @@
+using System.IO;
+using Syncfusion.XlsIO;
+using System;
+using static System.Net.Mime.MediaTypeNames;
+
+namespace Apply_Scenario
+{
+ class Program
+ {
+ static void Main(string[] args)
+ {
+ using (ExcelEngine excelEngine = new ExcelEngine())
+ {
+ IApplication application = excelEngine.Excel;
+ application.DefaultVersion = ExcelVersion.Xlsx;
+
+ FileStream inputStream = new FileStream("../../../Data/WhatIfAnalysisTemplate.xlsx", FileMode.Open, FileAccess.Read);
+ IWorkbook workbook = application.Workbooks.Open(inputStream, ExcelOpenType.Automatic);
+ inputStream.Dispose();
+
+ IWorksheet worksheet = workbook.Worksheets[0];
+
+ //Access the collection of scenarios in the worksheet
+ IScenarios scenarios = worksheet.Scenarios;
+
+ for (int pos = 0; pos < scenarios.Count; pos++)
+ {
+ //Apply scenarios
+ scenarios[pos].Show();
+
+ IWorkbook newBook = excelEngine.Excel.Workbooks.Create(0);
+
+ IWorksheet newSheet = newBook.Worksheets.AddCopy(worksheet);
+
+ newSheet.Name = scenarios[pos].Name;
+
+ //Saving the new workbook as a stream
+ using (FileStream stream = new FileStream(scenarios[pos].Name + ".xlsx", FileMode.Create, FileAccess.ReadWrite))
+ {
+ newBook.SaveAs(stream);
+ }
+
+ //To restore the cell values from the previous scenario results
+ scenarios["Current % of Change"].Show();
+ scenarios["Current Quantity"].Show();
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/What-If Analysis/Create Scenarios/NET Standard/Create Scenarios/Create Scenarios.sln b/What-If Analysis/Create Scenarios/NET Standard/Create Scenarios/Create Scenarios.sln
new file mode 100644
index 00000000..7c17285f
--- /dev/null
+++ b/What-If Analysis/Create Scenarios/NET Standard/Create Scenarios/Create Scenarios.sln
@@ -0,0 +1,25 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.5.33516.290
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Create Scenarios", "Create Scenarios\Create Scenarios.csproj", "{7D535C40-18F4-438A-B8BD-47F41D3A826B}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {7D535C40-18F4-438A-B8BD-47F41D3A826B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {7D535C40-18F4-438A-B8BD-47F41D3A826B}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {7D535C40-18F4-438A-B8BD-47F41D3A826B}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {7D535C40-18F4-438A-B8BD-47F41D3A826B}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {099D2397-528B-4ADE-89B0-7F198AFD3DB5}
+ EndGlobalSection
+EndGlobal
diff --git a/What-If Analysis/Create Scenarios/NET Standard/Create Scenarios/Create Scenarios/Create Scenarios.csproj b/What-If Analysis/Create Scenarios/NET Standard/Create Scenarios/Create Scenarios/Create Scenarios.csproj
new file mode 100644
index 00000000..716df41e
--- /dev/null
+++ b/What-If Analysis/Create Scenarios/NET Standard/Create Scenarios/Create Scenarios/Create Scenarios.csproj
@@ -0,0 +1,15 @@
+
+
+
+ Exe
+ net7.0
+ Create_Scenarios
+ enable
+ enable
+
+
+
+
+
+
+
diff --git a/What-If Analysis/Create Scenarios/NET Standard/Create Scenarios/Create Scenarios/Data/WhatIfAnalysisTemplate.xlsx b/What-If Analysis/Create Scenarios/NET Standard/Create Scenarios/Create Scenarios/Data/WhatIfAnalysisTemplate.xlsx
new file mode 100644
index 00000000..df5aa45c
Binary files /dev/null and b/What-If Analysis/Create Scenarios/NET Standard/Create Scenarios/Create Scenarios/Data/WhatIfAnalysisTemplate.xlsx differ
diff --git a/What-If Analysis/Create Scenarios/NET Standard/Create Scenarios/Create Scenarios/Program.cs b/What-If Analysis/Create Scenarios/NET Standard/Create Scenarios/Create Scenarios/Program.cs
new file mode 100644
index 00000000..5856ca9d
--- /dev/null
+++ b/What-If Analysis/Create Scenarios/NET Standard/Create Scenarios/Create Scenarios/Program.cs
@@ -0,0 +1,59 @@
+using System.IO;
+using Syncfusion.XlsIO;
+using System;
+
+namespace Create_Scenarios
+{
+ class Program
+ {
+ static void Main(string[] args)
+ {
+ using (ExcelEngine excelEngine = new ExcelEngine())
+ {
+ IApplication application = excelEngine.Excel;
+ application.DefaultVersion = ExcelVersion.Xlsx;
+
+ FileStream inputStream = new FileStream("../../../Data/WhatIfAnalysisTemplate.xlsx", FileMode.Open, FileAccess.Read);
+ IWorkbook workbook = application.Workbooks.Open(inputStream, ExcelOpenType.Automatic);
+ inputStream.Dispose();
+
+ IWorksheet worksheet = workbook.Worksheets[0];
+
+ // Access the collection of scenarios in the worksheet
+ IScenarios scenarios = worksheet.Scenarios;
+
+ //Initialize list objects with different values for scenarios
+ List