diff --git a/src/main/java/org/olat/modules/grading/manager/GraderToIdentityDAO.java b/src/main/java/org/olat/modules/grading/manager/GraderToIdentityDAO.java
index 2f0de04694ceb40486e4ad25d008fa3082739e53..a770b64178b1e7603258e6f06529ea3525469ee2 100644
--- a/src/main/java/org/olat/modules/grading/manager/GraderToIdentityDAO.java
+++ b/src/main/java/org/olat/modules/grading/manager/GraderToIdentityDAO.java
@@ -253,6 +253,9 @@ public class GraderToIdentityDAO {
 		  .append(" inner join record.grader as rel")
 		  .append(" inner join rel.identity as ident")
 		  .append(" inner join rel.entry as refEntry");
+		if(searchParams.getClosedFromDate() != null && searchParams.getClosedToDate() != null) {
+			sb.append(" left join record.assignment as assignment");
+		}
 
 		applyGradersSearchParameters(sb, searchParams, false);
 		if(searchParams.getGradingFrom() != null) {
@@ -261,6 +264,15 @@ public class GraderToIdentityDAO {
 		if(searchParams.getGradingTo() != null) {
 			sb.and().append("record.dateOfRecord<=:gradingToDate");
 		}
+		
+		if(searchParams.getClosedFromDate() != null && searchParams.getClosedToDate() != null) {
+			sb.and().append("assignment.closingDate>=:closedFromDate and assignment.closingDate<=:closedToDate");
+		} else if(searchParams.getClosedFromDate() != null) {
+			sb.and().append("assignment.closingDate>=:closedFromDate");
+		} else if(searchParams.getClosedToDate() != null) {
+			sb.and().append("assignment.closingDate<=:closedToDate");
+		}
+		
 		sb.append(" group by refEntry.key");
 
 		TypedQuery<Object[]> query = dbInstance.getCurrentEntityManager()
@@ -288,6 +300,9 @@ public class GraderToIdentityDAO {
 			sb.append(" inner join rel.entry as refEntry")
 			  .append(" inner join refEntry.olatResource as refResource");
 		}
+		if(searchParams.getClosedFromDate() != null && searchParams.getClosedToDate() != null) {
+			sb.append(" left join record.assignment as assignment");
+		}
 
 		applyGradersSearchParameters(sb, searchParams, false);
 		if(searchParams.getGradingFrom() != null) {
@@ -296,6 +311,15 @@ public class GraderToIdentityDAO {
 		if(searchParams.getGradingTo() != null) {
 			sb.and().append("record.dateOfRecord<=:gradingToDate");
 		}
+		
+		if(searchParams.getClosedFromDate() != null && searchParams.getClosedToDate() != null) {
+			sb.and().append("assignment.closingDate>=:closedFromDate and assignment.closingDate<=:closedToDate");
+		} else if(searchParams.getClosedFromDate() != null) {
+			sb.and().append("assignment.closingDate>=:closedFromDate");
+		} else if(searchParams.getClosedToDate() != null) {
+			sb.and().append("assignment.closingDate<=:closedToDate");
+		}
+		
 		sb.append(" group by ident.key");
 
 		TypedQuery<Object[]> query = dbInstance.getCurrentEntityManager()
@@ -398,6 +422,21 @@ public class GraderToIdentityDAO {
 			GradingAssignmentDAO.applyAssignmentSearchParameters(sb, searchParams.getGradingFrom(), searchParams.getGradingTo());
 			sb.append(")");
 		}
+		
+		if(applyFromTo && (searchParams.getClosedFromDate() != null || searchParams.getClosedToDate() != null)) {
+			sb.and()
+			  .append(" exists (select closedAssignment from gradingassignment as closedAssignment")
+			  .append("  where closedAssignment.grader.key=rel.key");
+			
+			if(searchParams.getClosedFromDate() != null && searchParams.getClosedToDate() != null) {
+				sb.and().append("closedAssignment.closingDate>=:closedFromDate and closedAssignment.closingDate<=:closedToDate");
+			} else if(searchParams.getClosedFromDate() != null) {
+				sb.and().append("closedAssignment.closingDate>=:closedFromDate");
+			} else if(searchParams.getClosedToDate() != null) {
+				sb.and().append("closedAssignment.closingDate<=:closedToDate");
+			}
+			sb.append(")");
+		}
 	}
 	
 
@@ -471,6 +510,14 @@ public class GraderToIdentityDAO {
 		
 		GradingAssignmentDAO.applyAssignmentSearchParameters(sb, searchParams.getGradingFrom(), searchParams.getGradingTo());
 		
+		if(searchParams.getClosedFromDate() != null && searchParams.getClosedToDate() != null) {
+			sb.and().append("assignment.closingDate>=:closedFromDate and assignment.closingDate<=:closedToDate");
+		} else if(searchParams.getClosedFromDate() != null) {
+			sb.and().append("assignment.closingDate>=:closedFromDate");
+		} else if(searchParams.getClosedToDate() != null) {
+			sb.and().append("assignment.closingDate<=:closedToDate");
+		}
+		
 		sb.append(" group by rel.identity.key");
 		
 		TypedQuery<Object[]> query = dbInstance.getCurrentEntityManager()
@@ -511,6 +558,12 @@ public class GraderToIdentityDAO {
 		if(applyDates && searchParams.getGradingTo() != null) {
 			query.setParameter("gradingToDate", searchParams.getGradingTo(), TemporalType.TIMESTAMP);
 		}
+		if(applyDates && searchParams.getClosedFromDate() != null) {
+			query.setParameter("closedFromDate", searchParams.getClosedFromDate(), TemporalType.TIMESTAMP);
+		}
+		if(applyDates && searchParams.getClosedToDate() != null) {
+			query.setParameter("closedToDate", searchParams.getClosedToDate(), TemporalType.TIMESTAMP);
+		}
 		if(searchParams.getManager() != null) {
 			query.setParameter("managerKey", searchParams.getManager().getKey());
 		}
diff --git a/src/main/java/org/olat/modules/grading/model/GradersSearchParameters.java b/src/main/java/org/olat/modules/grading/model/GradersSearchParameters.java
index accf4b7853703d33e29018e53f8774ddb02eec76..c028c9faf6232e19dd26635fb33b9bf0fdbb4530 100644
--- a/src/main/java/org/olat/modules/grading/model/GradersSearchParameters.java
+++ b/src/main/java/org/olat/modules/grading/model/GradersSearchParameters.java
@@ -36,6 +36,8 @@ public class GradersSearchParameters {
 	
 	private Date gradingTo;
 	private Date gradingFrom;
+	private Date closedToDate;
+	private Date closedFromDate;
 	private Identity grader;
 	private Identity manager;
 	private List<GraderStatus> status;
@@ -56,6 +58,22 @@ public class GradersSearchParameters {
 	public void setGradingFrom(Date gradingFrom) {
 		this.gradingFrom = gradingFrom;
 	}
+	
+	public Date getClosedToDate() {
+		return closedToDate;
+	}
+
+	public void setClosedToDate(Date closedToDate) {
+		this.closedToDate = closedToDate;
+	}
+
+	public Date getClosedFromDate() {
+		return closedFromDate;
+	}
+
+	public void setClosedFromDate(Date closedFromDate) {
+		this.closedFromDate = closedFromDate;
+	}
 
 	public List<GraderStatus> getStatus() {
 		return status;
diff --git a/src/main/java/org/olat/modules/grading/ui/ReportResource.java b/src/main/java/org/olat/modules/grading/ui/ReportResource.java
index cd5494e6648d2e59a7bff96091c93684ca04dd2a..18a9edbf6eb3362333ad1f3aeb1245f0cb98e40b 100644
--- a/src/main/java/org/olat/modules/grading/ui/ReportResource.java
+++ b/src/main/java/org/olat/modules/grading/ui/ReportResource.java
@@ -164,8 +164,8 @@ public class ReportResource extends OpenXMLWorkbookResource {
 	
 	private void createGradersData(OpenXMLWorksheet gradersSheet, OpenXMLWorkbook workbook) {
 		GradersSearchParameters searchParams = new GradersSearchParameters();
-		searchParams.setGradingFrom(from);
-		searchParams.setGradingTo(to);
+		searchParams.setClosedFromDate(from);
+		searchParams.setClosedToDate(to);
 		searchParams.setManager(manager);
 		searchParams.setGrader(grader);
 		searchParams.setReferenceEntry(referenceEntry);