Hi everyone, 

Fist of all I want to say thanks to Sven and Ignacio because his suggestions about inserting a statistical table in a function have been very helpful.

Now, I have some problems with my function script and I don't really understand what is actually the problem. 

When I trie to run my sample script, I get the following error message: 
 "the variable 0 is duplicated in the list of instructions" 

Here is my function script. I ommit A and B matrices because are quite large, but everything else is there: 

function bundle DeWallis_test (series y "Explained variable",
                               list xlist "Explanatory variables (Note: constant term is included by default)",
                               bool dummy[0] "Are dummy variables included in the regression? (remember that constant is included by default)")
  T = $nobs
  list xlist = const xlist
  if T<16
    funcerr "Insufficient observations"
  endif
  ols y xlist --quiet
  scalar SCE = $ess
  matrix uhat = $uhat
  scalar ut = 0
  loop i = 5..T --quiet
    scalar ui = (uhat[i,1] - uhat[i-4,1])^2
    ut = ut + ui
  endloop
  scalar DeWallis_stat = ut/SCE
  
  #A : DeWallis_stat_table_nodummy
  
  #B : DeWallis_stat_table_dummy
  
  #De Wallis test
  if dummy
    matrix xlist = xlist
    scalar k = cols(xlist) - 4
    if k>5
      funcerr "The number of regressors has to be less or equal to 5 (withot considering the constant term nor the dummy variables)"
    endif
    if k<1
      funcerr "Insufficient number of regressors. Please make sure you input at least one independent variable and the three dummy")
    endif
    scalar row = T/4 -3
    scalar row = floor(row)
    scalar col_left = 2*k
    scalar col_right = 2*k +1
    if DeWallis_stat < B[row , col_left]
      string DeWallis_test_result = "We reject H0, there is evidence of negative autocorrelation"
    else
      if DeWallis_stat > B[row, col_right]
        string DeWallis_test_result = "We reject H0, there is evidence of positive autocorrelation"
      else
        string DeWallis_test_result = "The test does not provide enough evidence to suggest autocorrelation"
      endif
    endif
  else
    matrix xlist = xlist
    scalar k = cols(xlist) - 1
    if k>5
      funcerr "The number of regressors has to be less or equal to 5 (withot considering the constant term)"
    endif
    if k<1
      funcerr "Insufficient number of regressors. Please make sure you input at least one independent variable")
    endif
    scalar row = T/4 -3
    scalar row = floor(row)
    scalar col_left = 2*k
    scalar col_right = 2*k +1
    if DeWallis_stat < A[row , col_left]
      string DeWallis_test_result = "We reject H0, there is evidence of negative autocorrelation"
    else
      if DeWallis_stat > A[row, col_right]
        string DeWallis_test_result = "We reject H0, there is evidence of positive autocorrelation"
      else
        string DeWallis_test_result = "The test does not provide enough evidence to suggest autocorrelation"
      endif
    endif
  endif
  
  DeWallis_test["De Wallis statisitic"] = DeWallis_stat
  DeWallis_test["Test result"] = DeWallis_test_result
  
  print "--------------------------------------------\n"
  printf "The value of the De Wallis statistic is: %g\n", DeWallis_stat
  print "--------------------------------------------\n"
  return DeWallis_test
  
end function

#Sample script
include DeWallis_test.gfn
open 'C:\Users\Owner\Documents\MATLAB\BasesDeDatos\np.xlsx' --quiet
series y = v1
list xlist = const v2 
bundle results = DeWallis_test(y,xlist,0)
print results


Thanks in advance for your help.

Sincerely, Juan Pablo de Botton Falcón.