What you are doing in this FOR loop is risky code and the problem might not at all be related to the Qlik Sense Desktop version.
I learned it the hard way myself by struggling with FieldValue() and FieldCount() and getting what I thought then was the wrong answers until I discovered that these functions relate to a single field and a field in Qlik is always stored with distinct values and it's only in the table structures that they are non-distinct. This is very important to understand but unfortunately the current Qlik documentation online does not make this very clear at all.
Let me explain which issues you can get into....
FieldValueCount() function counts the number of distinct field values for a single field - not related to the table where the field appears. So you might be lucky that all the QUESTION values are distinct.
Even if your QUESTION values are distinct the other fields might not. So you might get fieldnames and fieldvalues that are out of synch with your question... buggy code. So it all depends on the input data whether it will work or not...
The way to approach it is to use the Peek() function which DOES relate to the row number of the table.
So let's say your table is named QUESTIONS then you could code like this:
FOR i=1 TONoOfRows('QUESTIONS') vFieldName=Peek('QID',i, 'QUESTIONS');