diff --git a/src/main/java/org/olat/course/archiver/ScoreAccountingHelper.java b/src/main/java/org/olat/course/archiver/ScoreAccountingHelper.java
index d9979c763e430185d5616944e9c33ad422787a3e..7c14a66056cf75306f7e8f6ab71078e33d679328 100644
--- a/src/main/java/org/olat/course/archiver/ScoreAccountingHelper.java
+++ b/src/main/java/org/olat/course/archiver/ScoreAccountingHelper.java
@@ -266,8 +266,9 @@ public class ScoreAccountingHelper {
 						if (comment != null) {
 							// put comment between double quote in order to prevent that
 							// '\t','\r' or '\n' destroy the excel table
+							// A (double) quote must be represented by two (double) quotes.
 							tableContent.append("\"");
-							tableContent.append(comment);
+							tableContent.append(comment.replace("\"", "\"\""));
 							tableContent.append("\"\t");
 						} else {
 							tableContent.append(mi);
@@ -286,8 +287,9 @@ public class ScoreAccountingHelper {
 						if (coachComment != null) {
 							// put coachComment between double quote in order to prevent that
 							// '\t','\r' or '\n' destroy the excel table
+							// A (double) quote must be represented by two (double) quotes.
 							tableContent.append("\"");
-							tableContent.append(coachComment);
+							tableContent.append(coachComment.replace("\"", "\"\""));
 							tableContent.append("\"\t");
 						} else {
 							tableContent.append(mi);