Dit heet 'microtailoring' of 'piping'. Dit kan in LimeSurvey met de Expression Manager. De uitleg van de syntax van de Expression Manager staat op http://docs.limesurvey.org/Expression+Manager#Syntax, maar ik zal het hier even uitleggen voor dit specifieke geval. Stel dat de antwoordopties gewoon gecodeerd zijn met 1-5 (zie evt ook deze vraag over codes). Stel je verder voor dat de code van deze eerste vraag "favouriteSubstance" is. Je tweede vraag zou dan worden:
Hoe vaak gebruik je {if(
favouriteSubstance == 1, 'koffie',
if(favouriteSubstance == 2, 'alcohol',
if(favouriteSubstance == 3, 'tabak',
if(favouriteSubstance == 4, 'cannabis',
if(favouriteSubstance == 5, 'cocaine',
''
)
)
)
)
)}?
Het deel tussen de accolades is de expression. Deze begint met 'if', en 'if' is een functie die stelt: "evalueer de eerste parameter; als deze waar is, geef dan de eerste parameter, maar als hij niet waar is, geef dan de tweede parameter". Die eerste 'if' kijkt dus of mensen optie 1 hebben gekozen (koffie). Zoja, dan geeft hij de tekst 'koffie' terug; maar zonee, dan gaat hij naar de volgende 'if'. Die kijkt of mensen optie 2 hebben gekozen, etc. Pas wel goed op met je haakjes. Het kan handig zijn om hiervoor een editor zoals bijvoorbeeld Notepad++ te gebruiken (zie hier voor de gratis download van de portable versie; dit is een open source programma), want die telt automatisch de haakjes voor je zodat je kunt zien of ze kloppen.
Er is nog veel meer mogelijk met de Expression Manager, maar als je alleen wat tekst wil aanpassen aan de hand van een eerder antwoord, volstaat deze aanpak.