{"id":22343580,"url":"https://github.com/datajuggler/exceleratewinapp","last_synced_at":"2025-03-26T09:43:47.902Z","repository":{"id":183198845,"uuid":"669743396","full_name":"DataJuggler/ExcelerateWinApp","owner":"DataJuggler","description":"This WinForms project makes it simple to create a C# Excel project using NuGet package DataJuggler.Excelerate and Blazor Excelerate https://excelerate.datajuggler.com","archived":false,"fork":false,"pushed_at":"2023-09-11T19:41:53.000Z","size":356,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-31T11:16:29.507Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/DataJuggler.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-07-23T09:34:21.000Z","updated_at":"2023-07-23T09:34:26.000Z","dependencies_parsed_at":"2024-03-31T14:01:10.921Z","dependency_job_id":null,"html_url":"https://github.com/DataJuggler/ExcelerateWinApp","commit_stats":null,"previous_names":["datajuggler/exceleratewinapp"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DataJuggler%2FExcelerateWinApp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DataJuggler%2FExcelerateWinApp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DataJuggler%2FExcelerateWinApp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DataJuggler%2FExcelerateWinApp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DataJuggler","download_url":"https://codeload.github.com/DataJuggler/ExcelerateWinApp/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245631747,"owners_count":20647187,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-12-04T08:16:26.220Z","updated_at":"2025-03-26T09:43:47.871Z","avatar_url":"https://github.com/DataJuggler.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n8.14.2023 New Video\n\nCreate a Stock Predictor With C# and ML.NET Part I\nhttps://youtu.be/hF8LkvwOXQY\n\n7.24.2023: New Video\n\nThe Best C# Excel Library In The Galaxy\nhttps://youtu.be/uWXiz52cqlg\n\n# DataJuggler.ExcelerateWinApp\nExcelerateWinApp is a WinForms app designed to make it easy to load and save Excel objects \nthat were created using\u003cbr\u003e\u003cbr\u003e\n\nBlazor Excelerate\u003cbr\u003e\n\nhttps://excelerate.datajuggler.com\u003cbr\u003e\nCode Generate C# Classes From Excel Header Rows\n\n# Instructions to run this project:\n\nTo Install Via Nuget and DOT NET CLI, navigate to the folder you wish to create your project in\n\n    cd c:\\Projects\\ExcelerateWinApp\n    dotnet new install DataJuggler.ExcelerateWinApp\n    dotnet new DataJuggler.ExcelerateWinApp\n\nor\n\nClone this project from GitHub https://github.com/DataJuggler/ExcelerateWinApp\n\n# Setup Instructions\n\n1. Create one or more classes from Excel Header Rows at\u003cbr\u003e\u003cbr\u003e\n\nBlazor Excelerate\u003cbr\u003e\nhttps://excelerate.datajuggler.com\u003cbr\u003e\n\nDownload the file MemberData.xlsx from the above site to see an example.\nUse ExcelerateWinApp.Objects for the namespace or rename this project to your liking\n \n2. Copy the classes created into the Objects folder of ExcelerateWinApp\n\n3. Load Excel Worksheet(s) - Example is included in the UpdateButton_Click event\n\t\n       // load your object(s)\n       string workbookPath = FileSelector.Text;\n\n       // Example WorksheetInfo objects           \n       WorksheetInfo info = new WorksheetInfo();\n       info.LoadColumnOptions = LoadColumnOptionsEnum.LoadAllColumnsExceptExcluded;\n       info.Path = workbookPath;\t\n\n       // Set your SheetName\n       info.SheetName = \"Address\";\n\n       // Example WorksheetInfo objects           \n       WorksheetInfo info2 = new WorksheetInfo();\n       info2.LoadColumnOptions = LoadColumnOptionsEnum.LoadAllColumnsExceptExcluded;\n       info2.Path = workbookPath;\n\n       // Set the SheetName for info2\n       info2.SheetName = 'States\";\n\n       // Example load Worksheets\n       Worksheet addressWorksheet = ExcelDataLoader.LoadWorksheet(workbookPath, info);\n       Worksheet statesWorksheet = ExcelDataLoader.LoadWorksheet(workbookPath, info2);\n\n5. Load your list of objects\n \n        // Examples loading the Address and States sheet from MemberData.xlsx\n        List\u003cAddress\u003e addresses = Address.Load(addressWorksheet);\n        List\u003cStates\u003e states = States.Load(statesWorksheet);\n\n6. Perform updates on your List of objects\n\n   For this example, I inserted a column StateName into the Address sheet in Excel and\n   added a few state names manually. You must add a few entries so the data type can be\n   attempted to be determined. Then I code generated Address and States classes using\n   Blazor Excelerate\u003cbr\u003e\n   https://excelerate.datajuggler.com\n\n   This method set the Address.StateName for each row by looking up the State Name by StateId\n\t\n       /// \u003csummary\u003e\n       /// Lookup the StateName for each Address object by StateId\n       /// \u003c/summary\u003e\n       public void FixStateNames(ref List\u003cAddress\u003e addresses, List\u003cStates\u003e states)\n       {\n           // verify both lists exists and have at least one item\n           if (ListHelper.HasOneOrMoreItems(addresses, states))\n           {\n              // Iterate the collection of Address objects\n              foreach (Address address in addresses)\n              {\n                  // get a local copy\n                  int stateId = address.StateId;\n\n                  // set the stateName\n                  address.StateName = states.Where(x =\u003e x.Id == stateId).FirstOrDefault().Name;\n\n                  // Increment the value for Graph\n                  Graph.Value++;\n\n                  // update the UI every 100\n                  if (Graph.Value % 100 == 0)\n                  {\n                      Refresh();\n                      Application.DoEvents();\n                   }\n              }\n           }\n        }\n\t\n7. Save your worksheet back to Excel\n\n       // resetup the graph                    \n       Graph.Maximum = addresses.Count;\n       Graph.Value = 0;\n\n       // change the text\n       StatusLabel.Text = \"Saving Addresses please wait...\";\n\n       // you must convert the list objects to List\u003cIExcelerateObject\u003e before it can be saved\n       List\u003cIExcelerateObject\u003e excelerateObjectList = addresses.Cast\u003cIExcelerateObject\u003e().ToList();\n\n       // Now save the worksheet\n       SaveWorksheetResponse response = ExcelHelper.SaveWorksheet(excelerateObjectList, addressWorksheet, info, SaveWorksheetCallback, 500);\n\n8. (Optional) Leave a Star on DataJuggler.Excelerate, Blazor Excelerate or this project on GitHub\n\n    DataJuggler.Excelerate\n    https://github.com/DataJuggler/Excelerate\n\n    Blazor Excelerate\n    https://github.com/DataJuggler/Blazor.Excelerate\n\t\n    Excelerate Win App\n    https://github.com/DataJuggler/ExcelerateWinApp\n\n9. (Optional) Subscribe to my YouTube channel\n    https://youtube.com/DataJuggler\n\n# News\n\n1.0.5:\n7.24.203: Some bug fixes were found when I made this video. The project seems pretty stable.\n\n7.24.2023: New Video\n\nThe Best C# Excel Library In The Galaxy\nhttps://youtu.be/uWXiz52cqlg\n\nAlso, NuGet package DataJuggler.Excelerate was updated with links to this project.\n\n1.0.0\n7.23.2023: First Working Version Released\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdatajuggler%2Fexceleratewinapp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdatajuggler%2Fexceleratewinapp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdatajuggler%2Fexceleratewinapp/lists"}