AnsweredAssumed Answered

Special characters in CSV export from gradebook

Question asked by baxl@missouri.edu on Jul 12, 2017
Latest reply on Jan 23, 2018 by rogrant@nmsu.edu

I recently had to fix a question for a teacher in an exam that was a duplicate question.  The problem is that the question type is "Matching" which doesn't trigger a regrade.  Over 200 students took this exam and the teacher wants to award full points to those students.  To give each student the extra 15 points, I'd either have to manually do it or export the gradebook.  I exported the gradebook and created a macro to give each student that took the exam an extra 15 points, but I can't import it back to the gradebook because of the special characters in the students' names.  These are international students that have accented characters in their name and after exporting the gradebook, the accents or tildes are changed to symbols or special characters.   I could go through the entire spreadsheet and find the students with special characters or symbols, but there are over 200 students in the course.  I can't do a find and replace, e.g., find ¢ and replace with ˜  or ` because the accents and tildes over a letter aren't always being converted to the same special character.

 

Has anyone else run into this and if so, do you have any tips?  

 

Also, here's the macro I created that prompts for a number to add to selected cells if anyone else would like to use it. In the input box, the default number is set as 0, but you can overwrite that with any number (whole or decimal, positive or negative).   

 

Sub AddNumberPrompt()
Dim ws As Worksheet
Dim rngSel As Range
Dim Num As Double
Dim i As Long
Dim j As Long
Dim lRows As Long
Dim lCols As Long
Dim Arr() As Variant
Dim strPrompt As String
Set rngSel = Selection
lRows = rngSel.Rows.Count
lCols = rngSel.Columns.Count
strPrompt = "Enter number to add to selected cells"

On Error Resume Next
Num = InputBox(strPrompt, "Number to Add", 0)

If Num <> 0 Then
   If rngSel.Count = 1 Then
      rngSel = rngSel + Num
   Else
      Arr = rngSel
      For i = 1 To lRows
         For j = 1 To lCols
            Arr(i, j) = Arr(i, j) + Num
         Next j
      Next i
      rngSel.Value = Arr
   End If
End If

End Sub

 

Thanks!

Outcomes