Daniel, ¿podrías, por favor, corregir el error "Argumento no es opcional" que había en el código de instrucciones que te envíe?
Creo que el mensaje de error "Argumento no es opcional" significa que si escribes 1. Function partic(n:=1) Has de escribir 2. Dim a(1,1). No escribas 2.Dim a(40,40) porque el primero. de los dos cuarentas es el argumento(o sea, el número que pasas por una funcion) que sustituye al parámetro n. Y el argumento que habías elegido en la línea de código 1 era 1.Por tanto, también ha de ser uno el argumento que sustituye a n en la línea 1. Otra forma de corregir este error puede ser elegir como argumento que sustituya al parámetro n el número 20. De este modo, la primera línea de código quedaría asi: 1. Function partic(n:=20) Y la segunda línea de código sería esta: 2.Dim a(20,20) Si consigues gracias a la explicación que te doy en este mensaje que el programa no de ningún error, enviame, por favor, el enlace del código de instrucciones, o sea, la página web en la que ha quedado dicho código de knstrucciones.