No entendí nada.
¿A qué te refieres con "campos con nombres"? ¿Los campos se llaman 2010, 2011, 2012,.......2017 o ésos son los valores de algún campo?
Un CASE es una intrucción de bifurcación de código mientras que un FOR es una instrucción de ciclo. ¿De qué manera podría una reemplazar a la otra?
¿Qué tiene que ver la asignación TOTALAVALUOS:=TAvaluos[vigencia] con todo lo demás que pones? Y ¿cuál es el error que genera?
Dedica más tiempo a formular la pregunta de una forma inteligible.
LineComment Saludos