Skip to main content
Participant
January 7, 2019
Answered

If I have 4 columns and the 1st column a person enters a value between 1-10, I want it so that if they enter 1-3 it appears in the 2nd column, 4-6 it appears in the 3rd column and 7-10 it appears in the 4th column. How do I do that?

This topic is closed to new replies. Start a new post to keep the conversation going.
try67
try67Correct answer
Community Expert
January 7, 2019

OK, I've written for you a generic function that you could use for all the fields. You just need to specify the min and max values.

The function code (which should be placed as a doc-level script) is:

function showScore(min, max) {

    var rowNumber = event.target.replace(/\D/, "");

    var v = Number(this.getField(rowNumber+"A").valueAsString);

    event.value = (v>=min && v<=max) ? v : "";

}

You then call it from the custom calculation script of your fields like this:

showScore(1,3);

Or:

showScore(4,6);

etc.

3 replies

try67
Community Expert
Community Expert
January 7, 2019

What are the names of the fields?

Translate
Participant
January 7, 2019

Enter 1-10 is 1A, 1-3 is 1B, 4-6 is 1C, 7-10 is 1D then row 2 it is 2A, 2B, 2C, 2D and so on.

So if someone enters a 8 in 1A it will appear in both 1A and 1D.

Thank you so much for your help!

Translate
try67
Community Expert
try67Community ExpertCorrect answer
Community Expert
January 7, 2019

OK, I've written for you a generic function that you could use for all the fields. You just need to specify the min and max values.

The function code (which should be placed as a doc-level script) is:

function showScore(min, max) {

    var rowNumber = event.target.replace(/\D/, "");

    var v = Number(this.getField(rowNumber+"A").valueAsString);

    event.value = (v>=min && v<=max) ? v : "";

}

You then call it from the custom calculation script of your fields like this:

showScore(1,3);

Or:

showScore(4,6);

etc.

Translate