Automatización de la evaluación
Sub CrearLista
Dim oHoja As Object, oCelda As ObjectDim listado() As StringDim annos As StringDim edad As Integerannos = al_edad()edad = CInt(annos)If edad > 6 Thenedad = 6End Iflistado() = copiaPal(edad)'Acceso a la páginaoHoja = ThisComponent.getSheets().getByName("ListaPal")oCelda = oHoja.getCellRangeByName("B2")oCelda.setString("Palabras")oCelda = oHoja.getCellRangeByName("C2")oCelda.setString("Puntos")For i = 0 To UBound(listado())oCelda = oHoja.getCellRangeByName("B" & i+3)oCelda.setString(listado(i))Next
End Sub
Function al_edad () As string
Dim oHoja As Object, oCelda As ObjectDim i As IntegerDim edad As String'Acceso a Resultados para capturar la edadoHoja = ThisComponent.getSheets().getByName("Resultados")oCelda = oHoja.getCellRangeByName("B4")edad = oCelda.getStringal_edad = edad
End Function
Function CopiaPal(al_edad As Integer)
'para acceso a objetosDim oHoja As Object, oCelda As ObjectDim listaPal () As String'Para acceso a datosDim i As IntegerDim max As IntegerDim edades() As IntegerDim ptos_max() AS Integeredades = Array(3,4,5,6)ptos_max = Array(21,44,56,61)'Calculo y establecimiento del límite superior del listadoFor i = 0 To UBound(edades())If edades(i) = al_edad Thenmax = ptos_max(i)End IfNextReDim listaPal(max-1)'Acceso a la hoja que contiene la base de datosoHoja = ThisComponent.getSheets().getByName("Matrices")For i = 0 To UBound(listaPal())oCelda = oHoja.getCellRangeByName("I" & i+1)listaPal(i) = oCelda.getString()NextCopiaPal = listaPal()
End Function
For i = 0 To UBound(edades())
If edades(i) = al_edad Then
max = ptos_max(i)
End If
Next
oCelda = oHoja.getCellRangeByName("B2")oCelda.setString("Palabras")
For i = 0 To UBound(listado())
oCelda = oHoja.getCellRangeByName("B" & i+3)
oCelda.setString(listado(i))
Next
Si deseáramos completar el procedimiento y dejar listo los materiales para un uso posterior deberíamos implementar código que capture el resultado de la aplicación del test (puntuación de cada ítem) para trasladarlos a la hoja Resultados, eliminando antes el contenido de la lista de palabras y de la puntuación.
A parte de este posible desarrollo del script, también nos podemos plantear otros que implican establecer un condicionamiento múltiple. Un ejemplo sobre PLON-R. Fonología podría ser seleccionar únicamente los fonemas y no los grupos fonémicos, o sólo los fonemas oclusivos, o sólo los fonemas sonoros... Los ejemplos son múltiples, tantos como variables diferenciadoras hayamos establecido. Además esas subcategorizaciones podemos establecerlas secuencialmente o mediante condicionales anidados. En cualquier caso, lo interesante es que podemos hacer uso del procedimiento básico que hemos explicado en esta entrada para automatizar la selección del contenido sobre el que trabajar en función de los criterios que nos interese aplicar en cada caso.


