¿cómo has podido llegar a los 35 años sin usar el split?
Es fácil ......... mira el split se recoge una cadena con algún caracter separador y genera un arreglo con cada casilla llena según el dichoso separador. En el caso de los controles con el mismo nombre, se mandaran con la coma (,) como separador.
Por ejemplo, si tienes 13 controles llamados "EdOConcepto" y haces un vector = Split(Request("EdOConcepto"),","), tendrás un arreglo de 13 casillas (claro, si todos vienen con datos) uno por cada control creado.
Ahora, ya con tu vector creado haces un UBound para saber el número de registros del detalle y en un ciclo los vas agregando.
That's all folk
¿Me di a entender?