A newer version as webapp is avaliable. For detailed information see branch web/main. A demo is avaliable here.
An Excel Addin for school to quickly create its own course plans.
The following instructions will get you a copy of the project and running on your local machine for development and testing purposes. See Deployment or Release to get the newest stable version for deployment on a live system.
To compile and run the source code of the VSTO Addin, you need to have Microsoft Visual Studio 2017 or a newer version on your computer.
As this project was created on Visual Studio 2019, we also highly recommend you using the newest version of the Visual Studio IDE (Dev 16.5).
To Get Microsoft Visual Studio, download it from Microsoft.
The Microsoft Office developer tools will be installed by default. If you already have Visual Studio on your computer but don't have the Office developer tools, make sure that Microsoft Office Developer Tools is selected during setup. If not, open Visual Studio Installer, click Modify, and select the functionality called Office/Sharepoint development.
Even though the Visual Studio Tools for Office runtime redistributable will normally be installed while the Office Developer Tools being installed, however, if you don't have it on your local machine, have a look of this Microsoft documentation about how to enable it.
Also, you need to have Microsoft Office 2016, Office 365 (Microsoft 365), or a newer version installed on your local machine.
As the next step, download the whole folder in the root called KursheftTools-CSharp
or the newest release, where you are going to download the source code of csharp as a .zip file.
Open the solution file (KursheftTools.sln) using Visual Studio.
After everything is loaded and ready to use, click Start with the green triangle on the top of your Visual Studio IDE. Make sure that your configuration is set to Debug
.
Your Excel will be opened, open or create a random workbook, you will find a tab called Kursheft Tools after the tab help.
Congratulations! The Addin is successfully installed and ready to use.
For C# VSTO Addin:
- C# 5.0
- .Net Framework 4.5
- VSTO Runtime
To test how this Addin creates a new note board, click the button called Neue Bemerkungsbogen erstellen at tab Kursheft Tools.
After that, a dialog window will open and asks you to input the periods, which are supposed to be the start of the year, the start of the second period, and the end of the half-year.
Input them, and an empty note board will be generated on a new worksheet in your opened workbook.
Please note that all of the inputted dates should be weekdays.
Also, the intervals between every inputted date should be more than two weeks.
Certainly, the date for the start of the year should not be later than the start of the second period or the end of the year.
If you have made a mistake mentioned here, the window will not close and the wrong field will be marked red. So you don't have to worry if you inputted the dates wrong.
To import the course list from a .csv
or .txt
file, click the button called Kursliste importieren. A dialog window will be opened and asks you to choose the .csv
/.txt
file.
After excel has successfully imported the course list, a message box will show up that the import was completed.
Before exporting the course plans, please go to the note board worksheet which you want to use for the export.
To export the course plans as pdf, click the button called Kurshefte generieren at tab Kursheft Tools.
A dialog window will show up. You will be asked to input the path to store the exported course plans, the grades need to be exported.
To get the example files, go to the folder called ExampleDataForTest.
Note that these example data are made up and do not contain any personal information.
The .csv
file as course list should have the following format:
[Course Number] | [Class] | [Teacher] | [Subject] | [Room] | [Weekday] | [Hour] | [Unused] | [Unused]
Note that the csv file itself does NOT contain any title line.
However, if needed, importing a csv file with title is supported on the code level.
See CSVUtils.cs method ImportCSVasDT for more details.
A course number is a number used to identify the different courses.
This will NOT be used at all for our project since one course could have different course numbers for different days.
The class of this course. A course with the same subject but different classes will be identified as two different courses.
The name (or in short form) of the teacher.
The subject of this course (in short form).
The room where this course will be held.
This property will NOT be used for this project currently.
The weekday as a number on that this course will be held.
The hour which this course will be held. This value should be 1 to 9.
If this property is between 1
to 7
, then this course will be held every week.
Otherwise, if this shows 8
, then this course will only be held on even weeks.
If this shows 9
, then this course will only be held on odd weeks.
If 8 or 9 shows up together, then this course will be held every week.
For example:
1002;"06b";"Dvd";"ChB";"10.07";3;8;;
7020;"06b";"Dvd";"ChB";"10.07";5;5;;
This example shows, the course named ChB
for class 06b
will be held every even week on the eighth and ninth hour of Wednesday.
However, this course will also be held every week on the fifth hour of Friday.
This column does not contain any useful information and will not be used at all.
A part of the course list
46;"05c";"Frk";"Eng";"7.06";1;6;;
46
: This course number will not be used at all.
05c
: The class of this course.
Frk
: The name of the teacher (in the short form).
Eng
: The subject of this course (in the short form).
7.06
: The room where this course will be held.
1
: This course will be held on Monday.
6
: This course will be held in the sixth hour of the day in every week since it is not 8
or 9
.
And multiple lines of such record shows how the course looks like:
46;"05c";"Frk";"Eng";"7.06";1;6;;
46;"05c";"Frk";"Eng";"7.06";2;8;;
47;"05c";"Frk";"Eng";"7.06";3;6;;
The note board should be generated by the program itself. The format will be set automatically and should not be changed.
The first column shows the weekday, the second the date, the third, fifth, and seventh the note inputted by the user and the fourth, sixth, and eighth the grade for the note on its left side.
To deploy this Excel Addin on a live system, you need to decide at first, which version you want to use.
You can find the installation files at "Release".
For the VSTO Addin written with C#, you need the administrator privilege of the system to allow you to install the Addin for Excel.
We recommend you to use the EXE installer, which has already bundles all of the dependencies (Internet connection required). Therefore, you will not have to install them manually. Double click the Exe file, read and agree with the agreement, and you are done!
If you choose to use the .vsto
or the .msi
installer, you have to install the Visual Studio Tools for Office runtime redistributable manually. Also, .Net 4.5 or newer version is required. These should be installed at first before you install the VSTO Addin.
Here is a Microsoft documentation explaining how to install these runtime libraries on your computer.
If you choose to compile the source code yourself, you have to install Microsoft Visual Studio 2017 or newer version. You can find a detailed instruction here.
- PDFsharp - A .Net library for processing PDF
This project is licensed under the Apache 2.0 License.
See the LICENSE file for details.
Apache 2.0
Copyright (c) 2020 Chuyang W.