# How to Make Automatic Marksheet in Excel (with Easy Steps)

Sheet1 contains the personal details, numbers, and grading of each student.

Sheet2 contains the mark sheet template. We inserted a bold outside border.

### Step 1 – Insert Personal Details

• Insert a roll number in Cell E8. We inserted 1.
• Insert the following formula in Cell E9 to get the corresponding student name:
`=VLOOKUP(E8,Sheet1!B2:L10,2)`
• Hit the Enter button for the output.

• Apply a similar formula using the VLOOKUP function again in Cell G8 and G9 to return the date of birth and fatherâ€™s name.

### Step 2 – Insert the Obtained Marks

• In Cell F12, use the following formula to get the obtained marks in English:
`=VLOOKUP(\$E\$8,Sheet1!\$B\$2:\$L\$10,6)`
• Hit Enter.

• Repeat and modify the VLOOKUP formula to get the numbers in the other subjects. Change the column index number according to the subject name in the array of Sheet1.

### Step 3 – Apply Conditional Formatting

• Select the cells and go to Conditional Formatting,Â choose Highlight Cells Rules, then select Less Than.

• Insert the minimum passing number in the first box and select your desired highlight color from the second dropdown box.
• Press OK.

• The numbers are highlighted with our selected color.

### Step 4 – Insert Grades

• Apply the following formula in Cell G12:
`=IF(F12>80,"A",IF(F12>60,"B",IF(F12>50,"C",IF(F12>35,"D","F"))))`
• Hit the Enter button.

• Use the Fill Handle tool to copy the formula for the other cells.

• You will get all the grades for roll number 1.

### Step 5 – Calculate the Total Marks

• Insert the following formula in Cell E18
`=SUM(D12:D16)`
• Hit Enter.

• Find out the total passing marks and total obtained marks using the SUM formula.

### Step 6 – Calculate the Result

• Insert the following formula in Cell G19:
`=G18/E18`
• Hit Enter.

• To determine if the student passed or failed, apply the following formula in E20.
`=IF(G19>=35%,"Passed","Fail")`
• Press the Enter button.

`=IF(G19>80%,"A",IF(G19>60%,"B",IF(G19>50%,"C",IF(G19>35%,"D","F"))))`
• Hit Enter.

• If we insert any roll number, the sheet will show the corresponding detailed result of the student.

## Related Articles

Get FREE Advanced Excel Exercises with Solutions!
Md. Sourov Hossain Mithun

Md. Sourov Hossain Mithun, an Excel and VBA Content Developer at Softeko's ExcelDemy project, joined in October 2021. Holding a Naval Architecture & Marine Engineering degree from BUET, Mithun showcases expertise during his two-year tenure. With over 200 published articles on Excel topics, he earned a promotion to Team Leader, excelling in leading diverse teams. Mithun's passion extends to Advanced Excel, Excel VBA, Data Analysis, and Python programming, contributing significantly to the innovative and dynamic environment of ExcelDemy... Read Full Bio

1. How to make marksheets for all roll numbers at at a click of a button in excel

Bishawajit Chakraborty Apr 3, 2023 at 12:16 PM

Thank you, SIDDHARTH, for your wonderful question.

Here is the solution to your question. Please take a look at the below steps.

• Create a table with columns for Roll Number, Name, and Marks in Excel.
• Enter the Roll Number, Name, and Marks for each student in the table.
• Create a new sheet in Excel and name it “Marksheets”.
• In cell A1 of the “Marksheets” sheet, enter the text “Roll Number”.
• In cell B1, enter the text “Name”.
• In cell C1, enter the text “Marks”.
• Select cell A2 on the “Marksheets” sheet.

• Go to the “Data” tab in the Excel ribbon and click on “Data Validation”.
• In the “Data Validation” window, select “List” as the validation criteria.
• In the “Source” field, enter the range of Roll Numbers from the table you created earlier.
• Click “OK” to close the “Data Validation” window.
• Repeat steps for cells B2 and C2, but select the range of Names and Marks respectively.
• Now, select the Roll Number, Name, and Marks here.

Here is ourÂ  VBA code. Therefore, you can apply this code to solve your problem.

``````Sub Generate_Marksheet()
Dim roll_number As String
Dim name As String
Dim marks As Integer
Dim i As Integer
i = 2 'Starting at row 2 of the Marksheets sheet
Do While Worksheets("Marksheets").Cells(i, 1) <> "" 'Loop until the Roll Number column is empty
roll_number = Worksheets("Marksheets").Cells(i, 1).Value
name = Worksheets("Marksheets").Cells(i, 2).Value
marks = Worksheets("Marksheets").Cells(i, 3).Value
'Creating a new sheet for each Roll Number
'Adding the Name and Marks to the sheet
Worksheets(roll_number).Range("A1").Value = "Name"
Worksheets(roll_number).Range("B1").Value = "Marks"
Worksheets(roll_number).Range("A2").Value = name
Worksheets(roll_number).Range("B2").Value = marks
i = i + 1 'Moving to the next row
Loop
End Sub``````

Here, you will see the final result in another sheet with names and marks.

I hope this may solve your issue.Â

Bishawajit, on behalf of ExcelDemy

Advanced Excel Exercises with Solutions PDF