Nell’articolo “Scrivere un file MS Excel con ASP” abbiamo visto come fa uno script ASP ad interagire staticamente con un file MS Excel.
Vediamo adesso come dinamizzare determinati processi ed usare Excel non come semplice output per un report ma come quel che è, ovvero un foglio elettronico ingrado di effettuare dei calcoli.
L’esempio vede una tabella con sei campi divisi in tre per due colonne; nei primi due campi di entrambe le colonne abbiamo dei valori e nel terzo campo effettuiamo la somma dei primi due, semplicemente utilizzando la funzione SOMMA di Excel.
Segue il codice:
<%
Response.ContentType = "application/vnd.ms-excel"
%>
<table>
<tr>
<td>10</td>
<td>25</td>
<td>=SOMMA(A1+B1)</td>
</tr>
<tr>
<td>15</td>
<td>30</td>
<td>=SOMMA(A2+B2)</td>
</tr>
</table>
Tuttavia siamo ancora ad un esempio basilare: vediamo quindi come dinamizzare i processi utilizzando un po di codice in più:
<%
Response.ContentType = "application/vnd.ms-excel"
Dim a, b, i
a = Array(10, 20, 30, 40, 50)
b = Array(15, 25, 35, 45, 55)
i = 0
%>
<table>
<%
For i = 0 To UBound(a)
%>
<tr>
<td><%=a(i)%></td>
<td><%=b(i)%></td>
<td>=SOMMA(A<%=i+1%>+B<%=i+1%>)</td>
</tr>
<%
Next
%>
</table>
Non ho fatto altro che memorizzare differenti valori da sommare all’interno di due array ed ho dinamizzato la funzione SOMMA concatenandole, volta per volta, l’item del ciclo.
