<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>VSTO</title><link>http://blog.shareoffice.it/giannigiaccaglini/category/78.aspx</link><description>Suggerimenti ed esempi di "macro" basate sui Visual Studio Tools for Office System</description><managingEditor>Gianni Giaccaglini</managingEditor><dc:language>it-IT</dc:language><generator>.Text Version 0.95.2004.102</generator><item><dc:creator>Gianni Giaccaglini</dc:creator><title>Bug inattesi per via della semantica</title><link>http://blog.shareoffice.it/giannigiaccaglini/archive/2010/01/22/10330.aspx</link><pubDate>Fri, 22 Jan 2010 17:04:00 GMT</pubDate><guid>http://blog.shareoffice.it/giannigiaccaglini/archive/2010/01/22/10330.aspx</guid><wfw:comment>http://blog.shareoffice.it/giannigiaccaglini/comments/10330.aspx</wfw:comment><comments>http://blog.shareoffice.it/giannigiaccaglini/archive/2010/01/22/10330.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blog.shareoffice.it/giannigiaccaglini/comments/commentRss/10330.aspx</wfw:commentRss><trackback:ping>http://blog.shareoffice.it/giannigiaccaglini/services/trackbacks/10330.aspx</trackback:ping><description>&lt;h1 style="MARGIN: 24pt 0cm 12pt"&gt;&lt;span style="FONT-SIZE: 16pt; mso-bidi-font-size: 14.0pt"&gt;&lt;font color="#365f91"&gt;&lt;font face="Cambria"&gt;
&lt;h1 style="MARGIN: 0cm 0cm 0pt"&gt;&lt;span style="FONT-FAMILY: 'Calibri','sans-serif'; COLOR: windowtext; mso-bidi-font-weight: normal; mso-bidi-font-size: 11.0pt; mso-fareast-font-family: Calibri"&gt;&lt;font size="5"&gt;LEGGETE ANCHE GLI ARTICOLI!!! L’ultimo al link:&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/H1&gt;
&lt;H1 style="MARGIN: 0cm 0cm 0pt"&gt;&lt;SPAN style="FONT-FAMILY: 'Calibri','sans-serif'; COLOR: windowtext; FONT-SIZE: 11pt; FONT-WEIGHT: normal; mso-fareast-font-family: Calibri"&gt;&lt;A href="http://blog.shareoffice.it/giannigiaccaglini/articles/10324.aspx"&gt;&lt;FONT size=4&gt;&lt;STRONG&gt;http://blog.shareoffice.it/giannigiaccaglini/articles/10324.aspx&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/H1&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/H1&gt;
&lt;H1 style="MARGIN: 24pt 0cm 12pt"&gt;&lt;SPAN style="FONT-SIZE: 16pt; mso-bidi-font-size: 14.0pt"&gt;&lt;FONT color=#365f91&gt;&lt;FONT face=Cambria&gt;I bachi inattesi? Colpa della Semantica, signori miei...&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/H1&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Questo post, frivolo nell&amp;#8217;esemplificazione che dar&amp;#242;, pretende in modo alquanto serioso di discutere su un problema che affligge l&amp;#8217;Informatica e non solo. Parlo della &lt;B style="mso-bidi-font-weight: normal"&gt;Semantica&lt;/B&gt;, disciplina linguistica che si occupa del significato di un testo, &lt;I style="mso-bidi-font-style: normal"&gt;&lt;SPAN style="mso-ansi-language: EN-US" lang=EN-US&gt;meaning&lt;/SPAN&gt;&lt;SPAN lang=EN-US&gt; &lt;/SPAN&gt;&lt;/I&gt;in inglese. Di sfuggita cito solo un interrogativo provocatorio (che riprendo &amp;#8211; se non ricordo male - dal ponderoso trattato di Semiotica generale di Umberto Eco): &lt;I style="mso-bidi-font-style: normal"&gt;The meaning of the meaning &lt;/I&gt;che diavolo &amp;#232;?&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;In due parole, alla buona, la faccenda ha a che fare - nella vita o peggio ancora nella giurisprudenza - coi molti fraintendimenti derivanti dalla pi&amp;#249; o meno evitabile divaricazione fra i significati letterali e quelli &lt;I style="mso-bidi-font-style: normal"&gt;intenzionali&lt;/I&gt; (cosiddetti). In gergo semiotico si tenta una distinzione fra &lt;I style="mso-bidi-font-style: normal"&gt;denotazione &lt;/I&gt;e &lt;I style="mso-bidi-font-style: normal"&gt;connotazione &lt;/I&gt;di un messaggio.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Venendo allo specifico dell&amp;#8217;Informatica sono noti i fallimenti di certi settori avanzati. Tipicamente l&amp;#8217;Intelligenza Artificiale (IA) o un suo figliolo, la traduzione automatica. L&amp;#8217;IA ogni tanto viene ri-chiamata in ballo ma oggi dei tanto celebrati Sistemi Esperti quasi nessuno parla pi&amp;#249;. La seconda da qualche tempo partorisce qualche topolino non del tutto privo di utilit&amp;#224;, per&amp;#242; ognuno di noi ha quotidianamente modo di ridacchiare di fronte a certi risultati del pur potente traduttore di Google...&lt;/FONT&gt;&lt;/P&gt;
&lt;DIV style="BORDER-BOTTOM: windowtext 1pt solid; BORDER-LEFT: windowtext 1pt solid; PADDING-BOTTOM: 1pt; PADDING-LEFT: 4pt; PADDING-RIGHT: 4pt; BACKGROUND: #daeef3; BORDER-TOP: windowtext 1pt solid; BORDER-RIGHT: windowtext 1pt solid; PADDING-TOP: 1pt; mso-border-alt: solid windowtext .5pt; mso-element: para-border-div; mso-background-themecolor: accent5; mso-background-themetint: 51"&gt;
&lt;P style="BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 10pt; PADDING-LEFT: 0cm; PADDING-RIGHT: 0cm; BACKGROUND: #daeef3; BORDER-TOP: medium none; BORDER-RIGHT: medium none; PADDING-TOP: 0cm; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-border-alt: solid windowtext .5pt; mso-background-themecolor: accent5; mso-background-themetint: 51" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="COLOR: #1f497d; mso-themecolor: text2"&gt;Un test al volo&lt;/SPAN&gt;&lt;/B&gt;, mentre scrivo queste noterelle. &amp;#8220;Non tutto il male viene per nuocere&amp;#8221; mi viene reso con &amp;#8220;Every cloud has a silver lining&amp;#8221;!!! Il buffo &amp;#232; che la traduzione inversa restituisce &amp;#8220;Ogni nuvola ha un rivestimento d'argento&amp;#8221;. Formalmente corretto, a parte la stramberia &lt;U&gt;semantica&lt;/U&gt; e l&amp;#8217;ancor pi&amp;#249; imbarazzante fatto che non ha nulla a che fare con l&amp;#8217;originale.&lt;/FONT&gt;&lt;/P&gt;&lt;/DIV&gt;
&lt;H2 style="MARGIN: 12pt 0cm 3pt"&gt;&lt;EM&gt;&lt;FONT face=Cambria&gt;Il frivolo esempio: ruotine eliminare cifre da una stringa&lt;/FONT&gt;&lt;/EM&gt;&lt;/H2&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Appartiene all&amp;#8217;autobiografia recente. Volevo una routinetta volta a eliminare i caratteri numerici da una stringa. Ed ecco una serie di tentativi infruttuosi di specifiche Sub, prima in VBA poi in Visual Basic 2008, che ho corredato con istruzioni messaggistiche opportune per facilitarne l&amp;#8217;esecuzione passo dopo passo a chi legge.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT face=Calibri&gt;Prima versione&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;Sub EliminaCifre()&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Dim MiaStr As String, Car As String, i As Integer&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;MiaStr = "Amba12raba2345cicci178"&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;For i = 1 To Len(MiaStr)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Car = Mid(MiaStr, i, 1)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;If IsNumeric(Car) Then&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;MiaStr = Replace(MiaStr, Car, "")&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;End If&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;MsgBox("i = " &amp;amp; i &amp;amp; vbLf &amp;amp; "Car = " _&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&amp;amp; Car &amp;amp; vbLf &amp;amp; "MiaStr = " &amp;amp; MiaStr)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;Next&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;MsgBox(("Stringa finale: " &amp;amp; MiaStr)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;End Sub&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Lanciando la procedurina si notano due stranezze inattese (per gente ingenua come molti di noi siamo):&lt;/FONT&gt;&lt;/P&gt;
&lt;UL style="MARGIN-TOP: 0cm" type=disc&gt;
&lt;LI style="MARGIN: 0cm 0cm 10pt; mso-list: l0 level1 lfo2" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;non tutte le cifre vengono eliminate e l&amp;#8217;&lt;I style="mso-bidi-font-style: normal"&gt;MsgBox&lt;/I&gt; conclusivo proclama &amp;#8220;Stringa finale:&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;ambaraba34cicci8&amp;#8221;;&lt;/FONT&gt; 
&lt;LI style="MARGIN: 0cm 0cm 10pt; mso-list: l0 level1 lfo2" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;il ciclo va avanti fino a i = 22 (la &lt;I style="mso-bidi-font-style: normal"&gt;Len &lt;/I&gt;iniziale della stringa), indicando caratteri vuoti (blank) negli ultimi passaggi.&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Dopo riflessione mi sono reso conto che il guaio deriva dal fatto che lunghezza della &lt;I style="mso-bidi-font-style: normal"&gt;MiaStr &lt;/I&gt;diminuisce di un&amp;#8217;unit&amp;#224; ad ogni rimpiazzo di una cifra con &amp;#8220;&amp;#8221; (&lt;I style="mso-bidi-font-style: normal"&gt;Replace(MiaStr, Car, &amp;#8220;&amp;#8221;&lt;/I&gt;). La pezza (patch) &amp;#232; presto trovata.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="COLOR: #c00000; FONT-SIZE: 12pt; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT face=Calibri&gt;Seconda versione&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;Sub EliminaCifreBIS()&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Dim MiaStr As String, Car As String, i As Integer&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;MiaStr = "Amba12raba2345cicci178"&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;For i = 1 To Len(MiaStr)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Car = Mid(MiaStr, i, 1)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;If IsNumeric(Car) Then&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;MiaStr = Replace(MiaStr, Car, "")&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="BACKGROUND: yellow; mso-highlight: yellow"&gt;i = i - 1&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;End If&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;MsgBox ("i = " &amp;amp; i &amp;amp; vbLf &amp;amp; "Car = " _&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&amp;amp; Car &amp;amp; vbLf &amp;amp; "MiaStr = " &amp;amp; MiaStr)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Next&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;MsgBox ("Stringa finale: " &amp;amp; MiaStr)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;End Sub&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;SPAN style="FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt"&gt;L&amp;#8217;aggiunta, evidenziata in giallo, &amp;#232; semplicemente la correzione &lt;B style="mso-bidi-font-weight: normal"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;i = i - 1 &lt;/I&gt;&lt;/B&gt;&lt;/SPAN&gt;ogni volta che una cifra &amp;#232; rimpiazzata. Ci potremmo accontentare, visto che il risultato ora &amp;#232; corretto, anche se resta la seconda anomalia.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Da queste come da altre esperienza si evince facilmente il principio enunciato in apertura, che nel caso del software, tradurrei nella legge seguente:&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;&lt;FONT face=Calibri&gt;In Informatica &amp;#232; la Semantica lo scoglio in cui s&amp;#8217;infrangono molti prodotti, a causa della discrasia non sempre evitabile fra l&amp;#8217;intenzionalit&amp;#224; dell&amp;#8217;uomo e la fredda, inesorabile logica letterale della macchina.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/I&gt;&lt;/B&gt;&lt;/P&gt;
&lt;H2 style="MARGIN: 12pt 0cm 3pt"&gt;&lt;EM&gt;&lt;FONT face=Cambria&gt;Visual Studio 2008: mondo nuovo, altra sorpresa&lt;/FONT&gt;&lt;/EM&gt;&lt;/H2&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;In tale ambiente ho poi testato il precedente programmetto. Funzionava, ma poi pur non essendo un benpensante ho... ben pensato di sostituire &lt;B style="mso-bidi-font-weight: normal"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;Car As String &lt;/I&gt;&lt;/B&gt;con &lt;B style="mso-bidi-font-weight: normal"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;Car As Char &lt;/I&gt;&lt;/B&gt;(non supportato in VBA o VB6) pi&amp;#249; moderno e logico, visto che si tratta di un singolo carattere. Gi&amp;#224; che c&amp;#8217;ero, ho approfittato della possibilit&amp;#224; di &lt;U&gt;accedere con un indice a ciascun carattere di una stringa&lt;/U&gt;, con &lt;B style="mso-bidi-font-weight: normal"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;Car = MiaStr(i)&lt;/I&gt;&lt;/B&gt;.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="COLOR: #c00000; FONT-SIZE: 12pt; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT face=Calibri&gt;Terza versione (VB 2008)&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;Sub EliminaCifre()&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;Dim MiaStr As String, Car As Char, i As Integer&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;MiaStr = "Amba12raba2345cicci178"&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;For i = 0 To Len(MiaStr) - 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Car = MiaStr(i)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;If IsNumeric(Car) Then&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Mid(MiaStr, i, 1) = Replace(MiaStr, Car, "")&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="BACKGROUND: yellow; mso-highlight: yellow"&gt;i -= 1&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;End If&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;MessageBox.Show("i = " &amp;amp; i &amp;amp; vbLf &amp;amp; "Car = " _&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&amp;amp; Car &amp;amp; vbLf &amp;amp; "MiaStr = " &amp;amp; MiaStr)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;Next&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;MessageBox.Show("Stringa finale: " &amp;amp; MiaStr)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;End Sub&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Tutto bene? Macch&amp;#233;. L&amp;#8217;illusione semantica stavolta naufraga in modo, come sempre, inatteso. Infatti non si procede con tutti i 22 giri del loop &lt;I style="mso-bidi-font-style: normal"&gt;For i = 0 To Len(MiaStr) ... Next &lt;/I&gt;in quanto ahim&amp;#232; il programma si arresta per errore a run-time sulla tanto ammirata istruzione moderna &lt;I style="mso-bidi-font-style: normal"&gt;Car = MiaStr(i)&lt;/I&gt;, con indicazione di indice fuori dai limiti.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Riflettendo adeguatamente comprendiamo che:&lt;/FONT&gt;&lt;/P&gt;
&lt;UL style="MARGIN-TOP: 0cm" type=disc&gt;
&lt;LI style="MARGIN: 0cm 0cm 10pt; mso-list: l1 level1 lfo1" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;il ciclo &lt;I style="mso-bidi-font-style: normal"&gt;For... To &lt;ESPRESSIONE&gt;Next &lt;/I&gt;del Visual Basic (a differenza di altri linguaggi, credo)&lt;I style="mso-bidi-font-style: normal"&gt; &lt;/I&gt;valuta una tantum l&amp;#8217;espressione all&amp;#8217;inizio e ne mantiene il valore in tutto il suo corso (in altri casi questa &amp;#232; una virt&amp;#249;, ma qui ci crea un guaio);&lt;/FONT&gt; 
&lt;LI style="MARGIN: 0cm 0cm 10pt; mso-list: l1 level1 lfo1" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;I style="mso-bidi-font-style: normal"&gt;Mid(MiaStr, i, 1)&lt;B style="mso-bidi-font-weight: normal"&gt; &lt;/B&gt;&lt;/I&gt;&amp;#232; permissivo al punto di non dare errore se l&amp;#8217;indice va fuori della stringa (semplicemente restituisce un blank); al contrario di &lt;I style="mso-bidi-font-style: normal"&gt;Car(i), &lt;/I&gt;che invece considera la stringa come un &lt;I style="mso-bidi-font-style: normal"&gt;vettore&lt;/I&gt; di caratteri.&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;DIV style="BORDER-BOTTOM: windowtext 1pt solid; BORDER-LEFT: windowtext 1pt solid; PADDING-BOTTOM: 1pt; PADDING-LEFT: 4pt; PADDING-RIGHT: 4pt; BACKGROUND: #daeef3; BORDER-TOP: windowtext 1pt solid; BORDER-RIGHT: windowtext 1pt solid; PADDING-TOP: 1pt; mso-border-alt: solid windowtext .5pt; mso-element: para-border-div; mso-background-themecolor: accent5; mso-background-themetint: 51"&gt;
&lt;P style="BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 10pt; PADDING-LEFT: 0cm; PADDING-RIGHT: 0cm; BACKGROUND: #daeef3; BORDER-TOP: medium none; BORDER-RIGHT: medium none; PADDING-TOP: 0cm; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-border-alt: solid windowtext .5pt; mso-background-themecolor: accent5; mso-background-themetint: 51" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="COLOR: #1f497d; mso-themecolor: text2"&gt;Nota&lt;/SPAN&gt;&lt;/B&gt;.&lt;B style="mso-bidi-font-weight: normal"&gt; &lt;/B&gt;Stavolta potremmo anche prendersela con l&amp;#8217;architetto del VB 2008 di Microsoft, ma dobbiamo rassegnarci e prendere atto della realt&amp;#224;.&lt;/FONT&gt;&lt;/P&gt;&lt;/DIV&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="COLOR: #c00000; FONT-SIZE: 12pt; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT face=Calibri&gt;Soluzione finale&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Ne riporto il nocciolo, astenendomi dal commentare altre varianti &amp;#8220;moderne&amp;#8221;, dicendo solo che alla fine ho adottato un ciclo &lt;B style="mso-bidi-font-weight: normal"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;While ... End While&lt;/I&gt;&lt;/B&gt; (&lt;I style="mso-bidi-font-style: normal"&gt;While... Wend &lt;/I&gt;in VBA/VB6) che &amp;#232; immune dalla persistenza della lunghezza imputabile a &lt;I style="mso-bidi-font-style: normal"&gt;For... Next&lt;/I&gt; e, pertanto, fa s&amp;#236; che &lt;I style="mso-bidi-font-style: normal"&gt;MiaStr.Length &lt;/I&gt;muti dinamicamente ad ogni giro dell&amp;#8217;anello.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Dim i = 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;While i &amp;lt; MiaStr.Length&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Car = MiaStr(i)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;CodCar = Char.ConvertToUtf32(Car, 0)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;If Not (CodCar &amp;lt; 48 Or CodCar &amp;gt; 57) Then&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;MiaStr = MiaStr.Replace(Car, "")&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="BACKGROUND: yellow; mso-highlight: yellow"&gt;i -= 1&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;End If&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;i += 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;End While&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BLOGHELPER&gt;?&amp;gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;
&lt;H1&gt;&lt;/H1&gt;&lt;/bloghelper&gt;?&gt;&lt;/font&gt;&lt;/span&gt;&lt;/h1&gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/h1&gt;&lt;img src ="http://blog.shareoffice.it/giannigiaccaglini/aggbug/10330.aspx" width = "1" height = "1" /&gt;</description><body xmlns="http://www.w3.org/1999/xhtml"><h1 style="MARGIN: 24pt 0cm 12pt"><span style="FONT-SIZE: 16pt; mso-bidi-font-size: 14.0pt"><font color="#365f91"><font face="Cambria">
<h1 style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 'Calibri','sans-serif'; COLOR: windowtext; mso-bidi-font-weight: normal; mso-bidi-font-size: 11.0pt; mso-fareast-font-family: Calibri"><font size="5">LEGGETE ANCHE GLI ARTICOLI!!! L’ultimo al link:<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></FONT></SPAN></H1>
<H1 style="MARGIN: 0cm 0cm 0pt"><SPAN style="FONT-FAMILY: 'Calibri','sans-serif'; COLOR: windowtext; FONT-SIZE: 11pt; FONT-WEIGHT: normal; mso-fareast-font-family: Calibri"><A href="http://blog.shareoffice.it/giannigiaccaglini/articles/10324.aspx"><FONT size=4><STRONG>http://blog.shareoffice.it/giannigiaccaglini/articles/10324.aspx</STRONG></FONT></A><o:p></o:p></SPAN></H1></FONT></FONT></SPAN></H1>
<H1 style="MARGIN: 24pt 0cm 12pt"><SPAN style="FONT-SIZE: 16pt; mso-bidi-font-size: 14.0pt"><FONT color=#365f91><FONT face=Cambria>I bachi inattesi? Colpa della Semantica, signori miei...<o:p></o:p></FONT></FONT></SPAN></H1>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>Questo post, frivolo nell&#8217;esemplificazione che dar&#242;, pretende in modo alquanto serioso di discutere su un problema che affligge l&#8217;Informatica e non solo. Parlo della <B style="mso-bidi-font-weight: normal">Semantica</B>, disciplina linguistica che si occupa del significato di un testo, <I style="mso-bidi-font-style: normal"><SPAN style="mso-ansi-language: EN-US" lang=EN-US>meaning</SPAN><SPAN lang=EN-US> </SPAN></I>in inglese. Di sfuggita cito solo un interrogativo provocatorio (che riprendo &#8211; se non ricordo male - dal ponderoso trattato di Semiotica generale di Umberto Eco): <I style="mso-bidi-font-style: normal">The meaning of the meaning </I>che diavolo &#232;?</FONT></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>In due parole, alla buona, la faccenda ha a che fare - nella vita o peggio ancora nella giurisprudenza - coi molti fraintendimenti derivanti dalla pi&#249; o meno evitabile divaricazione fra i significati letterali e quelli <I style="mso-bidi-font-style: normal">intenzionali</I> (cosiddetti). In gergo semiotico si tenta una distinzione fra <I style="mso-bidi-font-style: normal">denotazione </I>e <I style="mso-bidi-font-style: normal">connotazione </I>di un messaggio.</FONT></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>Venendo allo specifico dell&#8217;Informatica sono noti i fallimenti di certi settori avanzati. Tipicamente l&#8217;Intelligenza Artificiale (IA) o un suo figliolo, la traduzione automatica. L&#8217;IA ogni tanto viene ri-chiamata in ballo ma oggi dei tanto celebrati Sistemi Esperti quasi nessuno parla pi&#249;. La seconda da qualche tempo partorisce qualche topolino non del tutto privo di utilit&#224;, per&#242; ognuno di noi ha quotidianamente modo di ridacchiare di fronte a certi risultati del pur potente traduttore di Google...</FONT></P>
<DIV style="BORDER-BOTTOM: windowtext 1pt solid; BORDER-LEFT: windowtext 1pt solid; PADDING-BOTTOM: 1pt; PADDING-LEFT: 4pt; PADDING-RIGHT: 4pt; BACKGROUND: #daeef3; BORDER-TOP: windowtext 1pt solid; BORDER-RIGHT: windowtext 1pt solid; PADDING-TOP: 1pt; mso-border-alt: solid windowtext .5pt; mso-element: para-border-div; mso-background-themecolor: accent5; mso-background-themetint: 51">
<P style="BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 10pt; PADDING-LEFT: 0cm; PADDING-RIGHT: 0cm; BACKGROUND: #daeef3; BORDER-TOP: medium none; BORDER-RIGHT: medium none; PADDING-TOP: 0cm; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-border-alt: solid windowtext .5pt; mso-background-themecolor: accent5; mso-background-themetint: 51" class=MsoNormal><FONT face=Calibri><B style="mso-bidi-font-weight: normal"><SPAN style="COLOR: #1f497d; mso-themecolor: text2">Un test al volo</SPAN></B>, mentre scrivo queste noterelle. &#8220;Non tutto il male viene per nuocere&#8221; mi viene reso con &#8220;Every cloud has a silver lining&#8221;!!! Il buffo &#232; che la traduzione inversa restituisce &#8220;Ogni nuvola ha un rivestimento d'argento&#8221;. Formalmente corretto, a parte la stramberia <U>semantica</U> e l&#8217;ancor pi&#249; imbarazzante fatto che non ha nulla a che fare con l&#8217;originale.</FONT></P></DIV>
<H2 style="MARGIN: 12pt 0cm 3pt"><EM><FONT face=Cambria>Il frivolo esempio: ruotine eliminare cifre da una stringa</FONT></EM></H2>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>Appartiene all&#8217;autobiografia recente. Volevo una routinetta volta a eliminare i caratteri numerici da una stringa. Ed ecco una serie di tentativi infruttuosi di specifiche Sub, prima in VBA poi in Visual Basic 2008, che ho corredato con istruzioni messaggistiche opportune per facilitarne l&#8217;esecuzione passo dopo passo a chi legge.</FONT></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><B style="mso-bidi-font-weight: normal"><SPAN style="mso-ansi-language: EN-US" lang=EN-US><FONT face=Calibri>Prima versione<o:p></o:p></FONT></SPAN></B></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US>Sub EliminaCifre()<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>Dim MiaStr As String, Car As String, i As Integer<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>MiaStr = "Amba12raba2345cicci178"<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>For i = 1 To Len(MiaStr)<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Car = Mid(MiaStr, i, 1)<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN>If IsNumeric(Car) Then<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>MiaStr = Replace(MiaStr, Car, "")<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>End If<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>MsgBox("i = " &amp; i &amp; vbLf &amp; "Car = " _<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>&amp; Car &amp; vbLf &amp; "MiaStr = " &amp; MiaStr)<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN></SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt">Next<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>MsgBox(("Stringa finale: " &amp; MiaStr)<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt">End Sub<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><o:p>&nbsp;</o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>Lanciando la procedurina si notano due stranezze inattese (per gente ingenua come molti di noi siamo):</FONT></P>
<UL style="MARGIN-TOP: 0cm" type=disc>
<LI style="MARGIN: 0cm 0cm 10pt; mso-list: l0 level1 lfo2" class=MsoNormal><FONT face=Calibri>non tutte le cifre vengono eliminate e l&#8217;<I style="mso-bidi-font-style: normal">MsgBox</I> conclusivo proclama &#8220;Stringa finale:<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>ambaraba34cicci8&#8221;;</FONT> 
<LI style="MARGIN: 0cm 0cm 10pt; mso-list: l0 level1 lfo2" class=MsoNormal><FONT face=Calibri>il ciclo va avanti fino a i = 22 (la <I style="mso-bidi-font-style: normal">Len </I>iniziale della stringa), indicando caratteri vuoti (blank) negli ultimi passaggi.</FONT></LI></UL>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>Dopo riflessione mi sono reso conto che il guaio deriva dal fatto che lunghezza della <I style="mso-bidi-font-style: normal">MiaStr </I>diminuisce di un&#8217;unit&#224; ad ogni rimpiazzo di una cifra con &#8220;&#8221; (<I style="mso-bidi-font-style: normal">Replace(MiaStr, Car, &#8220;&#8221;</I>). La pezza (patch) &#232; presto trovata.</FONT></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><B style="mso-bidi-font-weight: normal"><SPAN style="COLOR: #c00000; FONT-SIZE: 12pt; mso-bidi-font-size: 11.0pt"><FONT face=Calibri>Seconda versione<o:p></o:p></FONT></SPAN></B></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US>Sub EliminaCifreBIS()<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>Dim MiaStr As String, Car As String, i As Integer<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>MiaStr = "Amba12raba2345cicci178"<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>For i = 1 To Len(MiaStr)<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Car = Mid(MiaStr, i, 1)<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>If IsNumeric(Car) Then<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>MiaStr = Replace(MiaStr, Car, "")<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="BACKGROUND: yellow; mso-highlight: yellow">i = i - 1</SPAN><o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>End If<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>MsgBox ("i = " &amp; i &amp; vbLf &amp; "Car = " _<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt">&amp; Car &amp; vbLf &amp; "MiaStr = " &amp; MiaStr)<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>Next<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>MsgBox ("Stringa finale: " &amp; MiaStr)<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt">End Sub<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><o:p>&nbsp;</o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri><SPAN style="FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt">L&#8217;aggiunta, evidenziata in giallo, &#232; semplicemente la correzione <B style="mso-bidi-font-weight: normal"><I style="mso-bidi-font-style: normal">i = i - 1 </I></B></SPAN>ogni volta che una cifra &#232; rimpiazzata. Ci potremmo accontentare, visto che il risultato ora &#232; corretto, anche se resta la seconda anomalia.</FONT></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>Da queste come da altre esperienza si evince facilmente il principio enunciato in apertura, che nel caso del software, tradurrei nella legge seguente:</FONT></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><B style="mso-bidi-font-weight: normal"><I style="mso-bidi-font-style: normal"><FONT face=Calibri>In Informatica &#232; la Semantica lo scoglio in cui s&#8217;infrangono molti prodotti, a causa della discrasia non sempre evitabile fra l&#8217;intenzionalit&#224; dell&#8217;uomo e la fredda, inesorabile logica letterale della macchina.<o:p></o:p></FONT></I></B></P>
<H2 style="MARGIN: 12pt 0cm 3pt"><EM><FONT face=Cambria>Visual Studio 2008: mondo nuovo, altra sorpresa</FONT></EM></H2>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>In tale ambiente ho poi testato il precedente programmetto. Funzionava, ma poi pur non essendo un benpensante ho... ben pensato di sostituire <B style="mso-bidi-font-weight: normal"><I style="mso-bidi-font-style: normal">Car As String </I></B>con <B style="mso-bidi-font-weight: normal"><I style="mso-bidi-font-style: normal">Car As Char </I></B>(non supportato in VBA o VB6) pi&#249; moderno e logico, visto che si tratta di un singolo carattere. Gi&#224; che c&#8217;ero, ho approfittato della possibilit&#224; di <U>accedere con un indice a ciascun carattere di una stringa</U>, con <B style="mso-bidi-font-weight: normal"><I style="mso-bidi-font-style: normal">Car = MiaStr(i)</I></B>.</FONT></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><B style="mso-bidi-font-weight: normal"><SPAN style="COLOR: #c00000; FONT-SIZE: 12pt; mso-bidi-font-size: 11.0pt"><FONT face=Calibri>Terza versione (VB 2008)<o:p></o:p></FONT></SPAN></B></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt">Sub EliminaCifre()<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN></SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US>Dim MiaStr As String, Car As Char, i As Integer<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>MiaStr = "Amba12raba2345cicci178"<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>For i = 0 To Len(MiaStr) - 1<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Car = MiaStr(i)<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>If IsNumeric(Car) Then<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Mid(MiaStr, i, 1) = Replace(MiaStr, Car, "")<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;</SPAN><SPAN style="BACKGROUND: yellow; mso-highlight: yellow">i -= 1</SPAN><o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>End If<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>MessageBox.Show("i = " &amp; i &amp; vbLf &amp; "Car = " _<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>&amp; Car &amp; vbLf &amp; "MiaStr = " &amp; MiaStr)<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN></SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt">Next<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>MessageBox.Show("Stringa finale: " &amp; MiaStr)<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt">End Sub<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><o:p>&nbsp;</o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>Tutto bene? Macch&#233;. L&#8217;illusione semantica stavolta naufraga in modo, come sempre, inatteso. Infatti non si procede con tutti i 22 giri del loop <I style="mso-bidi-font-style: normal">For i = 0 To Len(MiaStr) ... Next </I>in quanto ahim&#232; il programma si arresta per errore a run-time sulla tanto ammirata istruzione moderna <I style="mso-bidi-font-style: normal">Car = MiaStr(i)</I>, con indicazione di indice fuori dai limiti.</FONT></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>Riflettendo adeguatamente comprendiamo che:</FONT></P>
<UL style="MARGIN-TOP: 0cm" type=disc>
<LI style="MARGIN: 0cm 0cm 10pt; mso-list: l1 level1 lfo1" class=MsoNormal><FONT face=Calibri>il ciclo <I style="mso-bidi-font-style: normal">For... To <ESPRESSIONE>Next </I>del Visual Basic (a differenza di altri linguaggi, credo)<I style="mso-bidi-font-style: normal"> </I>valuta una tantum l&#8217;espressione all&#8217;inizio e ne mantiene il valore in tutto il suo corso (in altri casi questa &#232; una virt&#249;, ma qui ci crea un guaio);</FONT> 
<LI style="MARGIN: 0cm 0cm 10pt; mso-list: l1 level1 lfo1" class=MsoNormal><FONT face=Calibri><I style="mso-bidi-font-style: normal">Mid(MiaStr, i, 1)<B style="mso-bidi-font-weight: normal"> </B></I>&#232; permissivo al punto di non dare errore se l&#8217;indice va fuori della stringa (semplicemente restituisce un blank); al contrario di <I style="mso-bidi-font-style: normal">Car(i), </I>che invece considera la stringa come un <I style="mso-bidi-font-style: normal">vettore</I> di caratteri.</FONT></LI></UL>
<DIV style="BORDER-BOTTOM: windowtext 1pt solid; BORDER-LEFT: windowtext 1pt solid; PADDING-BOTTOM: 1pt; PADDING-LEFT: 4pt; PADDING-RIGHT: 4pt; BACKGROUND: #daeef3; BORDER-TOP: windowtext 1pt solid; BORDER-RIGHT: windowtext 1pt solid; PADDING-TOP: 1pt; mso-border-alt: solid windowtext .5pt; mso-element: para-border-div; mso-background-themecolor: accent5; mso-background-themetint: 51">
<P style="BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 10pt; PADDING-LEFT: 0cm; PADDING-RIGHT: 0cm; BACKGROUND: #daeef3; BORDER-TOP: medium none; BORDER-RIGHT: medium none; PADDING-TOP: 0cm; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-border-alt: solid windowtext .5pt; mso-background-themecolor: accent5; mso-background-themetint: 51" class=MsoNormal><FONT face=Calibri><B style="mso-bidi-font-weight: normal"><SPAN style="COLOR: #1f497d; mso-themecolor: text2">Nota</SPAN></B>.<B style="mso-bidi-font-weight: normal"> </B>Stavolta potremmo anche prendersela con l&#8217;architetto del VB 2008 di Microsoft, ma dobbiamo rassegnarci e prendere atto della realt&#224;.</FONT></P></DIV>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><B style="mso-bidi-font-weight: normal"><SPAN style="COLOR: #c00000; FONT-SIZE: 12pt; mso-bidi-font-size: 11.0pt"><FONT face=Calibri>Soluzione finale<o:p></o:p></FONT></SPAN></B></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>Ne riporto il nocciolo, astenendomi dal commentare altre varianti &#8220;moderne&#8221;, dicendo solo che alla fine ho adottato un ciclo <B style="mso-bidi-font-weight: normal"><I style="mso-bidi-font-style: normal">While ... End While</I></B> (<I style="mso-bidi-font-style: normal">While... Wend </I>in VBA/VB6) che &#232; immune dalla persistenza della lunghezza imputabile a <I style="mso-bidi-font-style: normal">For... Next</I> e, pertanto, fa s&#236; che <I style="mso-bidi-font-style: normal">MiaStr.Length </I>muti dinamicamente ad ogni giro dell&#8217;anello.</FONT></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>Dim i = 0<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>While i &lt; MiaStr.Length<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Car = MiaStr(i)<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>CodCar = Char.ConvertToUtf32(Car, 0)<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>If Not (CodCar &lt; 48 Or CodCar &gt; 57) Then<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>MiaStr = MiaStr.Replace(Car, "")<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="BACKGROUND: yellow; mso-highlight: yellow">i -= 1</SPAN><o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>End If<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>i += 1<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>End While<o:p></o:p></SPAN></P></BLOGHELPER>?&gt;</FONT></FONT></SPAN>
<H1></H1></bloghelper>?></font></span></h1></font></font></span></h1><img src ="http://blog.shareoffice.it/giannigiaccaglini/aggbug/10330.aspx" width = "1" height = "1" /></body></item><item><dc:creator>Gianni Giaccaglini</dc:creator><title>Il Ribbon personalizzabile di Office 2010 (con accesso a file PDF, da conservare)</title><link>http://blog.shareoffice.it/giannigiaccaglini/archive/2010/01/04/10319.aspx</link><pubDate>Mon, 04 Jan 2010 11:55:00 GMT</pubDate><guid>http://blog.shareoffice.it/giannigiaccaglini/archive/2010/01/04/10319.aspx</guid><wfw:comment>http://blog.shareoffice.it/giannigiaccaglini/comments/10319.aspx</wfw:comment><comments>http://blog.shareoffice.it/giannigiaccaglini/archive/2010/01/04/10319.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blog.shareoffice.it/giannigiaccaglini/comments/commentRss/10319.aspx</wfw:commentRss><trackback:ping>http://blog.shareoffice.it/giannigiaccaglini/services/trackbacks/10319.aspx</trackback:ping><description>&lt;h1 style="MARGIN: 24pt 0cm 12pt"&gt;&lt;font color="#365f91" size="5" face="Cambria"&gt;Il Ribbon personalizzabile di Office 2010&lt;/font&gt;&lt;/h1&gt;
&lt;p style="MARGIN: 0cm 0cm 6pt" class="MsoNormal"&gt;&lt;font face="Calibri"&gt;Questa interessante novità si offre come alternativa per utenti “normali” rispetto al sistema di personalizzazione avanzata della barra multifunzione, che, ricordiamo, richiede la creazione a parte di appositi file &lt;b style="mso-bidi-font-weight: normal"&gt;customUI.xml&lt;/b&gt;.&lt;/font&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0cm 0cm 6pt" class="MsoNormal"&gt;&lt;font face="Calibri"&gt;Per consentirne lo studio ho preparato un file PDF, che si può scaricare da:&lt;/font&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0cm 0cm 6pt" class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight: normal"&gt;&lt;a href="http://www.giannigiaccaglini.it/download/Nuovo%20Ribbon2010Personalizzabile.pdf"&gt;&lt;font color="#800080" face="Calibri"&gt;http://www.giannigiaccaglini.it/download/Nuovo%20Ribbon2010Personalizzabile.pdf&lt;/font&gt;&lt;/a&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT face=Calibri&gt; &lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Buona lettura.&lt;/FONT&gt;&lt;/P&gt;&lt;/bloghelper&gt;?&gt;&lt;/b&gt;&lt;/p&gt;&lt;img src ="http://blog.shareoffice.it/giannigiaccaglini/aggbug/10319.aspx" width = "1" height = "1" /&gt;</description><body xmlns="http://www.w3.org/1999/xhtml"><h1 style="MARGIN: 24pt 0cm 12pt"><font color="#365f91" size="5" face="Cambria">Il Ribbon personalizzabile di Office 2010</font></h1>
<p style="MARGIN: 0cm 0cm 6pt" class="MsoNormal"><font face="Calibri">Questa interessante novità si offre come alternativa per utenti “normali” rispetto al sistema di personalizzazione avanzata della barra multifunzione, che, ricordiamo, richiede la creazione a parte di appositi file <b style="mso-bidi-font-weight: normal">customUI.xml</b>.</font></p>
<p style="MARGIN: 0cm 0cm 6pt" class="MsoNormal"><font face="Calibri">Per consentirne lo studio ho preparato un file PDF, che si può scaricare da:</font></p>
<p style="MARGIN: 0cm 0cm 6pt" class="MsoNormal"><b style="mso-bidi-font-weight: normal"><a href="http://www.giannigiaccaglini.it/download/Nuovo%20Ribbon2010Personalizzabile.pdf"><font color="#800080" face="Calibri">http://www.giannigiaccaglini.it/download/Nuovo%20Ribbon2010Personalizzabile.pdf</font></a><?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></B></P>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><o:p><FONT face=Calibri> </FONT></o:p></P>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><FONT face=Calibri>Buona lettura.</FONT></P></bloghelper>?></b></p><img src ="http://blog.shareoffice.it/giannigiaccaglini/aggbug/10319.aspx" width = "1" height = "1" /></body></item><item><dc:creator>Gianni Giaccaglini</dc:creator><title>Divagazioni di fine 2009, su antinomie e dintorni</title><link>http://blog.shareoffice.it/giannigiaccaglini/archive/2009/12/25/10316.aspx</link><pubDate>Fri, 25 Dec 2009 17:58:00 GMT</pubDate><guid>http://blog.shareoffice.it/giannigiaccaglini/archive/2009/12/25/10316.aspx</guid><wfw:comment>http://blog.shareoffice.it/giannigiaccaglini/comments/10316.aspx</wfw:comment><comments>http://blog.shareoffice.it/giannigiaccaglini/archive/2009/12/25/10316.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blog.shareoffice.it/giannigiaccaglini/comments/commentRss/10316.aspx</wfw:commentRss><trackback:ping>http://blog.shareoffice.it/giannigiaccaglini/services/trackbacks/10316.aspx</trackback:ping><description>&lt;p style="MARGIN: 0cm 0cm 0pt" class="MsoNormal"&gt;&lt;font color="#000080" size="5" face="Calibri"&gt;&lt;strong&gt;Considerazioni fuori programma (rispetto alle macro e all'IT)&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0cm 0cm 0pt" class="MsoNormal"&gt;&lt;font face="Calibri"&gt;Sperando di non disturbare la suscettibilità o la commiserazione di chicchessia, mi permetto alcune osservazioni spicciole su tre celebri antinomie (senza pretesa di essere esaustivo né di aver fatto scoperte originali o peggio di non commettere errori).&lt;/font&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0cm 0cm 0pt" class="MsoNormal"&gt;&lt;font face="Calibri"&gt;Premetto che i vari casi mi paiono afflitti da un limite della logica, almeno “normale” (ossia degli Enunciati) quando pretende di considerare il tempo...&lt;/font&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0cm 0cm 0pt" class="MsoNormal"&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;FONT face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;B&gt;&lt;FONT face=Tahoma&gt;&lt;FONT color=#0000ff&gt;&lt;FONT size=4&gt;ACHILLE E LA TARTARUGA&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Considerare unit&amp;#224; di tempo piccole a piacere &amp;#232; legittimo, ma non lo &amp;#232; aggiungerne di sempre pi&amp;#249; piccole concludendo con MAI. Infatti nel primo caso, per quanto piccoli siano gl&amp;#8217;intervalli temporali Achille superer&amp;#224; di certo la tartaruga in un numero finito di essi.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;B&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=5&gt;&lt;FONT color=#0000ff&gt;IL CRETESE&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Non &amp;#232; possibile, per coerenza, che un perfetto mentitore dica &amp;#8220;tutto quel che dico &amp;#232; falso&amp;#8221;, potr&amp;#224; semmai affermare &amp;#8220;tutto quel che dico &amp;#232; vero&amp;#8221;.&amp;nbsp;Dopo di che,&amp;nbsp;sospettato ingiustamente di un&amp;nbsp; delitto capitale risponder&amp;#224; s&amp;#236; alla domanda &amp;#8220;Sei tu il colpevole?&amp;#8221;, senza la soddisfazione di poter affermare, sul patibolo, &amp;#8220;Muoio per amore della Menzogna!&amp;#8221;. [O forse &amp;#8220;Muoio per amore della verit&amp;#224;&amp;#8221; &amp;#232; un&amp;#8217;antinomia? Boh].&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;B&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=5&gt;&lt;FONT color=#0000ff&gt;IL BARBIERE&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;L&amp;#8217;editto &amp;#8220;Il barbiere deve radere tutti quelli che non si fanno la barba da soli&amp;#8221; presenta almeno un&amp;#8217;ambiguit&amp;#224;: &amp;#232; lecito farsi radere da un altro? Immaginiamo che alla specifica richiesta di chiarimento &amp;#8211; come sempre accade nelle norme giuridiche o assimilabili che richiedono interpretazioni &amp;#8220;autentiche&amp;#8221; sullo &lt;EM&gt;spirito&lt;/EM&gt; di una legge &amp;#8211; il Sovrano cambi la dizione in &amp;#8220;Tutti gli abitanti si debbono radere da soli o farsi radere dal barbiere&amp;#8221;, che, senza chiarire esplicitamente che cosa deve fare il barbiere, &amp;nbsp;esclude la possibilit&amp;#224; di ricorrere ad altri che non sia il barbiere. A parte il fatto che resta oscura e comunque ardua la possibilit&amp;#224; di sanzione, esclusa la fragranza (ma se uno &amp;#232; sbarbato che si fa?), e tralasciando l&amp;#8217;ipotesi di un barbiere eunuco o femmina, il punto a mio avviso &amp;#232; che &lt;U&gt;il barbiere ha un duplice ruolo&lt;/U&gt;: &lt;EM&gt;cittadino&lt;/EM&gt; e &lt;EM&gt;funzionario-barbitonsore&lt;/EM&gt; (senza essere schizofrenico: tutti hanno ruoli molteplici in un consesso sociale). E scegliendo di radersi da solo, come cittadino, subito DOPO toglie a se stesso, cio&amp;#232; al barbiere, il compito di farlo.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;B&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=5&gt;&lt;FONT color=#0000ff&gt;CIRCUITI LOGICI SEQUENZIALI&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Mi permetto di insistere coi Logici puri (che finora non mi hanno dato retta...). I circuiti logici sequenziali (elettronici o, persino, implementati con rel&amp;#232; e contatti)&amp;nbsp;hanno un comportamento che varia nel tempo, presentando cio&amp;#232; una isteresi appunto temporale. Ne sono esempi noti anche a chi ne ignora le connessioni (di tipo feedback) i circuiti memoria (come i flip-flop) o gli oscillatori. I tecnici per descriverli e progettarli adottano una particolare &amp;#8211; ma semplice nei casi elementari - Algebra booleana, in cui sono in gioco NEGAZIONI delle uscite riportate in input. Ad esempio con un&amp;nbsp;X&amp;nbsp;&amp;nbsp;= not&amp;nbsp;Y ove X e Y sono, rispettivamente l&amp;#8217;input e l&amp;#8217;output si ottiene &lt;U&gt;sulla carta ma anche di fatto&lt;/U&gt; un oscillatore di periodo pari al tempo che separa Y e X.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Dunque &amp;#8220;in natura&amp;#8221; le antinomie sono di fatto risolte. O no? &lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Baby Kruffy'; FONT-SIZE: 72pt"&gt;&lt;FONT color=#a52a2a&gt;Buon 2010 !&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT color=#ff0000 size=5&gt;&lt;STRONG&gt;P.S.&lt;/STRONG&gt;&lt;/FONT&gt; &amp;#8211; Aggiungo che l&amp;#8217;astrattezza della logica rispetto alla lebenswelt (mondo della vita) si fa sentire anche in altri contesti ove siano in gioco verbi riflessivi. Provare per ridere, con &amp;#8220;sputarsi&amp;#8221; o, peggio, con &amp;#8220;masturbarsi&amp;#8221;. O, in genere, con verbi che ammettono solo forma riflessiva...&lt;/FONT&gt;&lt;/P&gt;&lt;/bloghelper&gt;?&gt;&lt;/p&gt;&lt;img src ="http://blog.shareoffice.it/giannigiaccaglini/aggbug/10316.aspx" width = "1" height = "1" /&gt;</description><body xmlns="http://www.w3.org/1999/xhtml"><p style="MARGIN: 0cm 0cm 0pt" class="MsoNormal"><font color="#000080" size="5" face="Calibri"><strong>Considerazioni fuori programma (rispetto alle macro e all'IT)</strong></font></p>
<p style="MARGIN: 0cm 0cm 0pt" class="MsoNormal"><font face="Calibri">Sperando di non disturbare la suscettibilità o la commiserazione di chicchessia, mi permetto alcune osservazioni spicciole su tre celebri antinomie (senza pretesa di essere esaustivo né di aver fatto scoperte originali o peggio di non commettere errori).</font></p>
<p style="MARGIN: 0cm 0cm 0pt" class="MsoNormal"><font face="Calibri">Premetto che i vari casi mi paiono afflitti da un limite della logica, almeno “normale” (ossia degli Enunciati) quando pretende di considerare il tempo...</font></p>
<p style="MARGIN: 0cm 0cm 0pt" class="MsoNormal"><?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p><FONT face=Calibri>&nbsp;</FONT></o:p></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><B><FONT face=Tahoma><FONT color=#0000ff><FONT size=4>ACHILLE E LA TARTARUGA<o:p></o:p></FONT></FONT></FONT></B></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><FONT face=Calibri>Considerare unit&#224; di tempo piccole a piacere &#232; legittimo, ma non lo &#232; aggiungerne di sempre pi&#249; piccole concludendo con MAI. Infatti nel primo caso, per quanto piccoli siano gl&#8217;intervalli temporali Achille superer&#224; di certo la tartaruga in un numero finito di essi.</FONT></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><o:p><FONT face=Calibri>&nbsp;</FONT></o:p></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><B><FONT face=Calibri><FONT size=5><FONT color=#0000ff>IL CRETESE<o:p></o:p></FONT></FONT></FONT></B></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><FONT face=Calibri>Non &#232; possibile, per coerenza, che un perfetto mentitore dica &#8220;tutto quel che dico &#232; falso&#8221;, potr&#224; semmai affermare &#8220;tutto quel che dico &#232; vero&#8221;.&nbsp;Dopo di che,&nbsp;sospettato ingiustamente di un&nbsp; delitto capitale risponder&#224; s&#236; alla domanda &#8220;Sei tu il colpevole?&#8221;, senza la soddisfazione di poter affermare, sul patibolo, &#8220;Muoio per amore della Menzogna!&#8221;. [O forse &#8220;Muoio per amore della verit&#224;&#8221; &#232; un&#8217;antinomia? Boh].</FONT></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><o:p><FONT face=Calibri>&nbsp;</FONT></o:p></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><B><FONT face=Calibri><FONT size=5><FONT color=#0000ff>IL BARBIERE<o:p></o:p></FONT></FONT></FONT></B></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><FONT face=Calibri>L&#8217;editto &#8220;Il barbiere deve radere tutti quelli che non si fanno la barba da soli&#8221; presenta almeno un&#8217;ambiguit&#224;: &#232; lecito farsi radere da un altro? Immaginiamo che alla specifica richiesta di chiarimento &#8211; come sempre accade nelle norme giuridiche o assimilabili che richiedono interpretazioni &#8220;autentiche&#8221; sullo <EM>spirito</EM> di una legge &#8211; il Sovrano cambi la dizione in &#8220;Tutti gli abitanti si debbono radere da soli o farsi radere dal barbiere&#8221;, che, senza chiarire esplicitamente che cosa deve fare il barbiere, &nbsp;esclude la possibilit&#224; di ricorrere ad altri che non sia il barbiere. A parte il fatto che resta oscura e comunque ardua la possibilit&#224; di sanzione, esclusa la fragranza (ma se uno &#232; sbarbato che si fa?), e tralasciando l&#8217;ipotesi di un barbiere eunuco o femmina, il punto a mio avviso &#232; che <U>il barbiere ha un duplice ruolo</U>: <EM>cittadino</EM> e <EM>funzionario-barbitonsore</EM> (senza essere schizofrenico: tutti hanno ruoli molteplici in un consesso sociale). E scegliendo di radersi da solo, come cittadino, subito DOPO toglie a se stesso, cio&#232; al barbiere, il compito di farlo.</FONT></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><o:p><FONT face=Calibri>&nbsp;</FONT></o:p></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><B><FONT face=Calibri><FONT size=5><FONT color=#0000ff>CIRCUITI LOGICI SEQUENZIALI<o:p></o:p></FONT></FONT></FONT></B></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><FONT face=Calibri>Mi permetto di insistere coi Logici puri (che finora non mi hanno dato retta...). I circuiti logici sequenziali (elettronici o, persino, implementati con rel&#232; e contatti)&nbsp;hanno un comportamento che varia nel tempo, presentando cio&#232; una isteresi appunto temporale. Ne sono esempi noti anche a chi ne ignora le connessioni (di tipo feedback) i circuiti memoria (come i flip-flop) o gli oscillatori. I tecnici per descriverli e progettarli adottano una particolare &#8211; ma semplice nei casi elementari - Algebra booleana, in cui sono in gioco NEGAZIONI delle uscite riportate in input. Ad esempio con un&nbsp;X&nbsp;&nbsp;= not&nbsp;Y ove X e Y sono, rispettivamente l&#8217;input e l&#8217;output si ottiene <U>sulla carta ma anche di fatto</U> un oscillatore di periodo pari al tempo che separa Y e X.</FONT></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><FONT face=Calibri>Dunque &#8220;in natura&#8221; le antinomie sono di fatto risolte. O no? </FONT></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Baby Kruffy'; FONT-SIZE: 72pt"><FONT color=#a52a2a>Buon 2010 !</FONT></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><FONT face=Calibri><FONT color=#ff0000 size=5><STRONG>P.S.</STRONG></FONT> &#8211; Aggiungo che l&#8217;astrattezza della logica rispetto alla lebenswelt (mondo della vita) si fa sentire anche in altri contesti ove siano in gioco verbi riflessivi. Provare per ridere, con &#8220;sputarsi&#8221; o, peggio, con &#8220;masturbarsi&#8221;. O, in genere, con verbi che ammettono solo forma riflessiva...</FONT></P></bloghelper>?></p><img src ="http://blog.shareoffice.it/giannigiaccaglini/aggbug/10316.aspx" width = "1" height = "1" /></body></item><item><dc:creator>Gianni Giaccaglini</dc:creator><title>Nasce Wpfitalia, dedicato alla nuova tecnologia WPF</title><link>http://blog.shareoffice.it/giannigiaccaglini/archive/2009/12/14/10302.aspx</link><pubDate>Mon, 14 Dec 2009 12:27:00 GMT</pubDate><guid>http://blog.shareoffice.it/giannigiaccaglini/archive/2009/12/14/10302.aspx</guid><wfw:comment>http://blog.shareoffice.it/giannigiaccaglini/comments/10302.aspx</wfw:comment><comments>http://blog.shareoffice.it/giannigiaccaglini/archive/2009/12/14/10302.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blog.shareoffice.it/giannigiaccaglini/comments/commentRss/10302.aspx</wfw:commentRss><trackback:ping>http://blog.shareoffice.it/giannigiaccaglini/services/trackbacks/10302.aspx</trackback:ping><description>&lt;h1 style="MARGIN: 24pt 0cm 0pt"&gt;&lt;font color="#365f91" size="5" face="Cambria"&gt;Nasce Wpfitalia.it, dedicato all’affascinante tecnologia WPF&lt;/font&gt;&lt;/h1&gt;
&lt;p style="MARGIN: 0cm 0cm 10pt" class="MsoNormal"&gt;&lt;font face="Calibri"&gt;Dedicare un intero sito a una particolare tecnologia del vasto mondo Visual Studio .NET è senz’altro una scommessa. La compie con una certa dose di temerarietà un gruppo di amici &lt;b style="mso-bidi-font-weight: normal"&gt;&lt;a href="http://community.visual-basic.it/renato"&gt;&lt;span style="COLOR: windowtext; TEXT-DECORATION: none; text-underline: none"&gt;Renato Marzaro&lt;/span&gt;&lt;/a&gt;&lt;/b&gt;, &lt;b style="mso-bidi-font-weight: normal"&gt;&lt;a href="http://community.visual-basic.it/tdj"&gt;&lt;span style="COLOR: windowtext; TEXT-DECORATION: none; text-underline: none"&gt;Antonio Catucci&lt;/span&gt;&lt;/a&gt;&lt;/b&gt; e &lt;?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /&gt;&lt;st1:PersonName ProductID="Alessandro Del Sole" w:st="on"&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;Alessandro Del Sole&lt;/B&gt;&lt;/st1:PersonName&gt;, noto MVP Microsoft autore di molti libri su vari ambienti .NET (in particolare su &lt;B style="mso-bidi-font-weight: normal"&gt;LINQ&lt;/B&gt;, altra tecnologia emergente di Microsoft per accesso &amp;#8220;dichiarativo&amp;#8221; in stile SQL-like alle pi&amp;#249; varie fonti dati, relazionali o XML) nonch&amp;#233; animatore e leader del popolare sito &lt;B style="mso-bidi-font-weight: normal"&gt;Visual Basic Tips &amp;amp; Tricks&lt;/B&gt; (&lt;/FONT&gt;&lt;A href="http://www.visual-basic.it/"&gt;&lt;FONT color=#800080 face=Calibri&gt;www.visual-basic.it&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri&gt; ).&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Anche il neonato &lt;/FONT&gt;&lt;A href="http://www.wpfitalia.it/"&gt;&lt;FONT color=#800080 face=Calibri&gt;www.wpfitalia.it&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri&gt; ne &amp;#232; figlio, tant&amp;#8217;&amp;#232; vero che il suo nome esteso &amp;#232; guarda caso &lt;B style="mso-bidi-font-weight: normal"&gt;WPF Italia Tips &amp;amp; Tricks&lt;/B&gt;, e nasce per cos&amp;#236; dire con la camicia, ricco come si presenta da subito di chiari articoli e video dedicati.&lt;/FONT&gt;&lt;/P&gt;
&lt;H2 style="MARGIN: 10pt 0cm 0pt"&gt;&lt;FONT color=#4f81bd size=4 face=Cambria&gt;WPF in due parole&lt;/FONT&gt;&lt;/H2&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;I&gt;WPF &lt;/I&gt;ovvero &lt;I&gt;Windows Presentation Foundation&lt;/I&gt; &amp;#232; una speciale tecnologia creata da Microsoft, che in soldoni consente di implementare l&amp;#8217;equivalente multimediale delle classiche finestre di dialogo (Windows Form) che a regime rischiano l&amp;#8217;obsolescenza a vantaggio del nuovo WPF, dato il suo aspetto decisamente pi&amp;#249; accattivante esteticamente e, a un tempo, pi&amp;#249; agevole da personalizzare.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Prima di illustrarne i caratteri salienti va detto che non si tratta di una novit&amp;#224; assoluta, visto che WPF &amp;#232; gi&amp;#224; supportato in Visual Studio 2008. Il fatto &amp;#232; che il mercato come spesso capita con le novit&amp;#224; rivoluzionarie non ha fin qui aderito come merita al nuovo verbo. Ma &amp;#8211; assicura lo scommettitore Alessandro &amp;#8211; vi sono segnali incoraggianti di un interesse crescente, inoltre l&amp;#8217;imminente versione 2010 ha potenziato in modo significativo WPF (con riferimento anche all&amp;#8217;ultimo sistema operativo Windows 7).&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Tornando a bomba, con WPF si possono creare applicazioni dall'interfaccia grafica avanzata, con utilizzo efficace e, insieme, relativamente semplice di ogni tipo di componenti multimediali: immagini anche 3D, grafica business, animazioni a iosa.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;A name=q&gt;&lt;/A&gt;&lt;FONT face=Calibri&gt;Le applicazioni ottenibili sono di ogni genere, sia gestionali (trattamento di dati o documenti), che di intrattenimento. La base &amp;#232; data dalle librerie grafiche &lt;I&gt;DirectX &lt;/I&gt;di Microsoft, incluse la grafica 3D e la grafica vettoriale nonch&amp;#233; molte innovazioni specifiche di Windows Vista e Windows 7.&lt;/FONT&gt;&lt;/P&gt;
&lt;H2 style="MARGIN: 10pt 0cm 0pt"&gt;&lt;FONT color=#4f81bd size=4 face=Cambria&gt;Primi passi in WPF. Il linguaggio XAML&lt;/FONT&gt;&lt;/H2&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Entrare nel nuovo mondo &amp;#232; immediato. Come al solito, basta nell&amp;#8217;IDE Visual Studio dare un clic sull&amp;#8217;icona specifica &lt;I style="mso-bidi-font-style: normal"&gt;Applicazione WPF &lt;/I&gt;per rendersi subito conto della novit&amp;#224; &lt;I style="mso-bidi-font-style: normal"&gt;architetturale &lt;/I&gt;pi&amp;#249; rilevante:&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Figura 1&lt;/STRONG&gt;&lt;/P&gt;&lt;IMG src="http://www.giannigiaccaglini.it/download/FigRecensWpfitalia-01.jpg" target="_blank"&gt; 
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Sono subito evidenti due parti. Si tratta, in verit&amp;#224;, di due finestre distinte che per default sono esibite sovrapposte, data la loro stretta correlazione. Nella prima, che corrisponde grossomodo a una normale Windows Form, si possono inserire persino controlli tradizionali ma anche, e pi&amp;#249; vantaggiosamente, elementi moderni di tipo multimediale anche spinto. Agli uni e agli altri si possono associare routine d&amp;#8217;evento tradizionali (pi&amp;#249; o meno? Scopritelo gente...) come Click, DoubleClick e quant&amp;#8217;altro.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Pi&amp;#249; rilevante, concettualmente, la parte inferiore. Scritta nel nuovo linguaggio di markup &lt;B style="mso-bidi-font-weight: normal"&gt;XAML &lt;/B&gt;(eXtensible Application Markup Language), un derivato dello standard XML creato interamente da Microsoft, permette di descrivere nei minimi dettagli l&amp;#8217;aspetto della finestra soprastante, inclusi i vari oggetti incorporati e altri aspetti come una griglia che ne definisce la suddivisione.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Detto en passant, si fa apprezzare una particolare, razionale struttura &amp;#8220;a stack&amp;#8221; dei vari componenti.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;L&amp;#8217;idea alla base corrisponde appieno al moderno principio di separare l&amp;#8217;aspetto descrittivo da quello esecutivo, affidando il lavoro almeno nei casi pi&amp;#249; avanzati a due attori distinti: il designer e l&amp;#8217;informatico. Anche il secondo, che ha l&amp;#8217;esclusiva del codice, nelle situazioni ordinarie pu&amp;#242; disporre di nuovi strumenti che passa il convento .NET (a partire da un efficace intellisense nella sezione XAML e non solo) mentre il &amp;#8220;creativo&amp;#8221; pu&amp;#242; lavorare con pi&amp;#249; variegati tool artistici.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;SPAN style="mso-fareast-language: IT"&gt;Come si comprende &amp;#232; un salto di qualit&amp;#224; rispetto al modus operandi con le &lt;/SPAN&gt;Windows Form&lt;SPAN style="mso-fareast-language: IT"&gt;, ove tutto &amp;#232; affidato allo sviluppatore tramite codice, anche per quanto riguarda gli aspetti grafici. I pi&amp;#249; bravi, e pazienti!, se la cavano con grande fatica, ma la maggioranza produce finestre alquanto grigie se non anonime.&lt;/SPAN&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-SIZE: 7pt; mso-fareast-language: IT"&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;La figura seguente (tratta, come la precedente dal primo tutorial su Wpfitalia di A. Del Sole) illustra un primo frutto semplice ma eloquente delle potenzialit&amp;#224; di WPF, ottenuto da Alessandro con pochi clic.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;
&lt;P&gt;&lt;STRONG&gt;Figura 2&lt;/STRONG&gt;&lt;/P&gt;&lt;/P&gt;&lt;IMG src="http://www.giannigiaccaglini.it/download/FigRecensWpfitalia-02.jpg" target="_blank"&gt; 
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Ma risultati davvero eclatanti si possono ottenere con questa tecnologia. Per averne un&amp;#8217;idea si provi ad accedere alla &lt;B style="mso-bidi-font-weight: normal"&gt;British Library on-line&lt;/B&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;SPAN style="COLOR: #1f497d"&gt;&lt;A href="http://ttpdownload.bl.uk/app_files/xbap/BrowserApp.xbap"&gt;&lt;FONT color=#800080 face=Calibri&gt;http://ttpdownload.bl.uk/app_files/xbap/BrowserApp.xbap&lt;/FONT&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;che la sfrutta davvero efficacemente, come mostra la figura che da l&amp;#236; abbiamo rubato:&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;
&lt;P&gt;&lt;STRONG&gt;Figura 3&lt;/STRONG&gt;&lt;/P&gt;&lt;/P&gt;&lt;IMG src="http://www.giannigiaccaglini.it/download/FigRecensWpfitalia-03.jpg" target="_blank"&gt; 
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Ma questa &amp;#232; solo una recensione, pertanto ci fermiamo qui. D&amp;#8217;altronde gl&amp;#8217;interessati all&amp;#8217;approfondimento non hanno che da visitare Wpfitalia.it ove i contributi tutoriali abbondano fin d&amp;#8217;ora (e anche su MSDN sono tutt&amp;#8217;altro che scarsi).&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Interessante infine, per i visitatori di Shareoffice che se ne occupano, &lt;U&gt;il fatto che anche nelle applicazioni VSTO (Visual Studio Tools per Office) &amp;#232; possibile fruire di queste nuove interfacce&lt;/U&gt; anzich&amp;#233; delle solite Windows Form. Non c&amp;#8217;era da dubitarne, comunque segnaliamo due post di A. Del Sole a ci&amp;#242; dedicati:&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="COLOR: #1f497d"&gt;&lt;A href="http://community.visual-basic.it/alessandro/archive/2009/01/12/24583.aspx"&gt;&lt;FONT color=#800080 face=Calibri&gt;http://community.visual-basic.it/alessandro/archive/2009/01/12/24583.aspx&lt;/FONT&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;SPAN style="COLOR: #1f497d"&gt;&lt;A href="http://community.visual-basic.it/alessandro/archive/2008/02/18/22010.aspx"&gt;&lt;FONT color=#800080 face=Calibri&gt;http://community.visual-basic.it/alessandro/archive/2008/02/18/22010.aspx&lt;/FONT&gt;&lt;/A&gt;&lt;/SPAN&gt;&lt;U&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/U&gt;&lt;/P&gt;
&lt;H2 style="MARGIN: 10pt 0cm 0pt"&gt;&lt;FONT color=#4f81bd size=4 face=Cambria&gt;Un utile libro introduttivo&lt;/FONT&gt;&lt;/H2&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;st1:PersonName ProductID="Alessandro Del Sole" w:st="on"&gt;Alessandro del Sole&lt;/st1:PersonName&gt; ha svolto opera di pioniere, parlando di WPF in corposi capitoli del seguente manuale, relativo a Visual Studio 2005/2008:&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;st1:PersonName ProductID="Alessandro Del Sole" w:st="on"&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;Alessandro Del Sole&lt;/B&gt;&lt;/st1:PersonName&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/B&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;FONT face=Calibri&gt;PROGRAMMARE CON .NET FRAMEWORK 3.X&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;FONT face=Calibri&gt;Ed. FAG Milano&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="mso-ansi-language: EN-US" lang=EN-US&gt;&lt;A href="http://www.fag.it/scheda.aspx?ID=21753"&gt;&lt;SPAN style="mso-ansi-language: IT" lang=IT&gt;&lt;FONT color=#800080 face=Calibri&gt;http://www.fag.it/scheda.aspx?ID=21753&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Pensiamo di raccomandarlo a quanti sono desiderosi di intraprendere l&amp;#8217;affascinante avventura WPF.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;/bloghelper&gt;?&gt;&lt;/font&gt;&lt;/p&gt;&lt;img src ="http://blog.shareoffice.it/giannigiaccaglini/aggbug/10302.aspx" width = "1" height = "1" /&gt;</description><body xmlns="http://www.w3.org/1999/xhtml"><h1 style="MARGIN: 24pt 0cm 0pt"><font color="#365f91" size="5" face="Cambria">Nasce Wpfitalia.it, dedicato all’affascinante tecnologia WPF</font></h1>
<p style="MARGIN: 0cm 0cm 10pt" class="MsoNormal"><font face="Calibri">Dedicare un intero sito a una particolare tecnologia del vasto mondo Visual Studio .NET è senz’altro una scommessa. La compie con una certa dose di temerarietà un gruppo di amici <b style="mso-bidi-font-weight: normal"><a href="http://community.visual-basic.it/renato"><span style="COLOR: windowtext; TEXT-DECORATION: none; text-underline: none">Renato Marzaro</span></a></b>, <b style="mso-bidi-font-weight: normal"><a href="http://community.visual-basic.it/tdj"><span style="COLOR: windowtext; TEXT-DECORATION: none; text-underline: none">Antonio Catucci</span></a></b> e <?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /><st1:PersonName ProductID="Alessandro Del Sole" w:st="on"><B style="mso-bidi-font-weight: normal">Alessandro Del Sole</B></st1:PersonName>, noto MVP Microsoft autore di molti libri su vari ambienti .NET (in particolare su <B style="mso-bidi-font-weight: normal">LINQ</B>, altra tecnologia emergente di Microsoft per accesso &#8220;dichiarativo&#8221; in stile SQL-like alle pi&#249; varie fonti dati, relazionali o XML) nonch&#233; animatore e leader del popolare sito <B style="mso-bidi-font-weight: normal">Visual Basic Tips &amp; Tricks</B> (</FONT><A href="http://www.visual-basic.it/"><FONT color=#800080 face=Calibri>www.visual-basic.it</FONT></A><FONT face=Calibri> ).</FONT></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>Anche il neonato </FONT><A href="http://www.wpfitalia.it/"><FONT color=#800080 face=Calibri>www.wpfitalia.it</FONT></A><FONT face=Calibri> ne &#232; figlio, tant&#8217;&#232; vero che il suo nome esteso &#232; guarda caso <B style="mso-bidi-font-weight: normal">WPF Italia Tips &amp; Tricks</B>, e nasce per cos&#236; dire con la camicia, ricco come si presenta da subito di chiari articoli e video dedicati.</FONT></P>
<H2 style="MARGIN: 10pt 0cm 0pt"><FONT color=#4f81bd size=4 face=Cambria>WPF in due parole</FONT></H2>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri><I>WPF </I>ovvero <I>Windows Presentation Foundation</I> &#232; una speciale tecnologia creata da Microsoft, che in soldoni consente di implementare l&#8217;equivalente multimediale delle classiche finestre di dialogo (Windows Form) che a regime rischiano l&#8217;obsolescenza a vantaggio del nuovo WPF, dato il suo aspetto decisamente pi&#249; accattivante esteticamente e, a un tempo, pi&#249; agevole da personalizzare.</FONT></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>Prima di illustrarne i caratteri salienti va detto che non si tratta di una novit&#224; assoluta, visto che WPF &#232; gi&#224; supportato in Visual Studio 2008. Il fatto &#232; che il mercato come spesso capita con le novit&#224; rivoluzionarie non ha fin qui aderito come merita al nuovo verbo. Ma &#8211; assicura lo scommettitore Alessandro &#8211; vi sono segnali incoraggianti di un interesse crescente, inoltre l&#8217;imminente versione 2010 ha potenziato in modo significativo WPF (con riferimento anche all&#8217;ultimo sistema operativo Windows 7).</FONT></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>Tornando a bomba, con WPF si possono creare applicazioni dall'interfaccia grafica avanzata, con utilizzo efficace e, insieme, relativamente semplice di ogni tipo di componenti multimediali: immagini anche 3D, grafica business, animazioni a iosa.</FONT></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><A name=q></A><FONT face=Calibri>Le applicazioni ottenibili sono di ogni genere, sia gestionali (trattamento di dati o documenti), che di intrattenimento. La base &#232; data dalle librerie grafiche <I>DirectX </I>di Microsoft, incluse la grafica 3D e la grafica vettoriale nonch&#233; molte innovazioni specifiche di Windows Vista e Windows 7.</FONT></P>
<H2 style="MARGIN: 10pt 0cm 0pt"><FONT color=#4f81bd size=4 face=Cambria>Primi passi in WPF. Il linguaggio XAML</FONT></H2>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>Entrare nel nuovo mondo &#232; immediato. Come al solito, basta nell&#8217;IDE Visual Studio dare un clic sull&#8217;icona specifica <I style="mso-bidi-font-style: normal">Applicazione WPF </I>per rendersi subito conto della novit&#224; <I style="mso-bidi-font-style: normal">architetturale </I>pi&#249; rilevante:</FONT></P>
<P><STRONG>Figura 1</STRONG></P><IMG src="http://www.giannigiaccaglini.it/download/FigRecensWpfitalia-01.jpg" target="_blank"> 
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>Sono subito evidenti due parti. Si tratta, in verit&#224;, di due finestre distinte che per default sono esibite sovrapposte, data la loro stretta correlazione. Nella prima, che corrisponde grossomodo a una normale Windows Form, si possono inserire persino controlli tradizionali ma anche, e pi&#249; vantaggiosamente, elementi moderni di tipo multimediale anche spinto. Agli uni e agli altri si possono associare routine d&#8217;evento tradizionali (pi&#249; o meno? Scopritelo gente...) come Click, DoubleClick e quant&#8217;altro.</FONT></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>Pi&#249; rilevante, concettualmente, la parte inferiore. Scritta nel nuovo linguaggio di markup <B style="mso-bidi-font-weight: normal">XAML </B>(eXtensible Application Markup Language), un derivato dello standard XML creato interamente da Microsoft, permette di descrivere nei minimi dettagli l&#8217;aspetto della finestra soprastante, inclusi i vari oggetti incorporati e altri aspetti come una griglia che ne definisce la suddivisione.</FONT></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>Detto en passant, si fa apprezzare una particolare, razionale struttura &#8220;a stack&#8221; dei vari componenti.</FONT></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>L&#8217;idea alla base corrisponde appieno al moderno principio di separare l&#8217;aspetto descrittivo da quello esecutivo, affidando il lavoro almeno nei casi pi&#249; avanzati a due attori distinti: il designer e l&#8217;informatico. Anche il secondo, che ha l&#8217;esclusiva del codice, nelle situazioni ordinarie pu&#242; disporre di nuovi strumenti che passa il convento .NET (a partire da un efficace intellisense nella sezione XAML e non solo) mentre il &#8220;creativo&#8221; pu&#242; lavorare con pi&#249; variegati tool artistici.</FONT></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri><SPAN style="mso-fareast-language: IT">Come si comprende &#232; un salto di qualit&#224; rispetto al modus operandi con le </SPAN>Windows Form<SPAN style="mso-fareast-language: IT">, ove tutto &#232; affidato allo sviluppatore tramite codice, anche per quanto riguarda gli aspetti grafici. I pi&#249; bravi, e pazienti!, se la cavano con grande fatica, ma la maggioranza produce finestre alquanto grigie se non anonime.</SPAN><SPAN style="LINE-HEIGHT: 115%; FONT-SIZE: 7pt; mso-fareast-language: IT"><?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></SPAN></FONT></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>La figura seguente (tratta, come la precedente dal primo tutorial su Wpfitalia di A. Del Sole) illustra un primo frutto semplice ma eloquente delle potenzialit&#224; di WPF, ottenuto da Alessandro con pochi clic.</FONT></P>
<P>
<P><STRONG>Figura 2</STRONG></P></P><IMG src="http://www.giannigiaccaglini.it/download/FigRecensWpfitalia-02.jpg" target="_blank"> 
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>Ma risultati davvero eclatanti si possono ottenere con questa tecnologia. Per averne un&#8217;idea si provi ad accedere alla <B style="mso-bidi-font-weight: normal">British Library on-line</B></FONT></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><SPAN style="COLOR: #1f497d"><A href="http://ttpdownload.bl.uk/app_files/xbap/BrowserApp.xbap"><FONT color=#800080 face=Calibri>http://ttpdownload.bl.uk/app_files/xbap/BrowserApp.xbap</FONT></A><o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>che la sfrutta davvero efficacemente, come mostra la figura che da l&#236; abbiamo rubato:</FONT></P>
<P>
<P><STRONG>Figura 3</STRONG></P></P><IMG src="http://www.giannigiaccaglini.it/download/FigRecensWpfitalia-03.jpg" target="_blank"> 
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>Ma questa &#232; solo una recensione, pertanto ci fermiamo qui. D&#8217;altronde gl&#8217;interessati all&#8217;approfondimento non hanno che da visitare Wpfitalia.it ove i contributi tutoriali abbondano fin d&#8217;ora (e anche su MSDN sono tutt&#8217;altro che scarsi).</FONT></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>Interessante infine, per i visitatori di Shareoffice che se ne occupano, <U>il fatto che anche nelle applicazioni VSTO (Visual Studio Tools per Office) &#232; possibile fruire di queste nuove interfacce</U> anzich&#233; delle solite Windows Form. Non c&#8217;era da dubitarne, comunque segnaliamo due post di A. Del Sole a ci&#242; dedicati:</FONT></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="COLOR: #1f497d"><A href="http://community.visual-basic.it/alessandro/archive/2009/01/12/24583.aspx"><FONT color=#800080 face=Calibri>http://community.visual-basic.it/alessandro/archive/2009/01/12/24583.aspx</FONT></A><o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><SPAN style="COLOR: #1f497d"><A href="http://community.visual-basic.it/alessandro/archive/2008/02/18/22010.aspx"><FONT color=#800080 face=Calibri>http://community.visual-basic.it/alessandro/archive/2008/02/18/22010.aspx</FONT></A></SPAN><U><o:p></o:p></U></P>
<H2 style="MARGIN: 10pt 0cm 0pt"><FONT color=#4f81bd size=4 face=Cambria>Un utile libro introduttivo</FONT></H2>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri><st1:PersonName ProductID="Alessandro Del Sole" w:st="on">Alessandro del Sole</st1:PersonName> ha svolto opera di pioniere, parlando di WPF in corposi capitoli del seguente manuale, relativo a Visual Studio 2005/2008:</FONT></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><FONT face=Calibri><st1:PersonName ProductID="Alessandro Del Sole" w:st="on"><B style="mso-bidi-font-weight: normal">Alessandro Del Sole</B></st1:PersonName><B style="mso-bidi-font-weight: normal"><o:p></o:p></B></FONT></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><B style="mso-bidi-font-weight: normal"><FONT face=Calibri>PROGRAMMARE CON .NET FRAMEWORK 3.X<o:p></o:p></FONT></B></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><B style="mso-bidi-font-weight: normal"><FONT face=Calibri>Ed. FAG Milano<o:p></o:p></FONT></B></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="mso-ansi-language: EN-US" lang=EN-US><A href="http://www.fag.it/scheda.aspx?ID=21753"><SPAN style="mso-ansi-language: IT" lang=IT><FONT color=#800080 face=Calibri>http://www.fag.it/scheda.aspx?ID=21753</FONT></SPAN></A></SPAN></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><o:p><FONT face=Calibri>&nbsp;</FONT></o:p></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>Pensiamo di raccomandarlo a quanti sono desiderosi di intraprendere l&#8217;affascinante avventura WPF.</FONT></P>
<P>&nbsp;</P></bloghelper>?></font></p><img src ="http://blog.shareoffice.it/giannigiaccaglini/aggbug/10302.aspx" width = "1" height = "1" /></body></item><item><dc:creator>Gianni Giaccaglini</dc:creator><title>Istruzione segreta per far sparire/riapparire il Ribbon</title><link>http://blog.shareoffice.it/giannigiaccaglini/archive/2009/08/24/10229.aspx</link><pubDate>Mon, 24 Aug 2009 15:52:00 GMT</pubDate><guid>http://blog.shareoffice.it/giannigiaccaglini/archive/2009/08/24/10229.aspx</guid><wfw:comment>http://blog.shareoffice.it/giannigiaccaglini/comments/10229.aspx</wfw:comment><comments>http://blog.shareoffice.it/giannigiaccaglini/archive/2009/08/24/10229.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blog.shareoffice.it/giannigiaccaglini/comments/commentRss/10229.aspx</wfw:commentRss><trackback:ping>http://blog.shareoffice.it/giannigiaccaglini/services/trackbacks/10229.aspx</trackback:ping><description>&lt;font color="#365f91" size="5" face="Cambria"&gt;
&lt;h1 style="LINE-HEIGHT: normal; MARGIN: 24pt 0cm 6pt"&gt;&lt;font color="#ff0000" size="4"&gt;[ Segnalo inoltre  ORARIO SCOLASTICO RIVISITATO, nella Sezione Articoli ]&lt;/font&gt;&lt;/h1&gt;
&lt;h1 style="LINE-HEIGHT: normal; MARGIN: 24pt 0cm 6pt"&gt;&lt;font size="5"&gt;Istruzione segreta per far sparire/riapparire il Ribbon&lt;/font&gt;&lt;/h1&gt;
&lt;h2 style="TEXT-ALIGN: center; MARGIN: 12pt 0cm 3pt" align="center"&gt;&lt;span style="LINE-HEIGHT: 115%; COLOR: #215868; FONT-SIZE: 11pt; mso-bidi-font-size: 14.0pt; mso-themecolor: accent5; mso-themeshade: 128"&gt;&lt;em&gt;By G.G. &amp;amp; &lt;?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /&gt;&lt;st1:PersonName w:st="on" ProductID="Giorgio Villa"&gt;Giorgio Villa&lt;/st1:PersonName&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/EM&gt;&lt;/SPAN&gt;&lt;/H2&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT color=#000000 size=3 face=Calibri&gt;Questa notizia, stupefacente per me come pure per molti!, mi proviene da &lt;st1:PersonName w:st="on" ProductID="Giorgio Villa"&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;Giorgio Villa&lt;/I&gt;&lt;/B&gt;&lt;/st1:PersonName&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;I style="mso-bidi-font-style: normal"&gt; &lt;/I&gt;&lt;/B&gt;un valido visitatore. Le seguenti istruzioni in &lt;B style="mso-bidi-font-weight: normal"&gt;VBA&lt;/B&gt; Excel 2007, come pure negli Excel &lt;B style="mso-bidi-font-weight: normal"&gt;VSTO&lt;/B&gt;, permettono di togliere dalla vista e, di fatto, disabilitare la barra multifunzione alias &lt;B style="mso-bidi-font-weight: normal"&gt;Ribbon&lt;/B&gt;, e, rispettivamente, risuscitarla:&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT color=#000000&gt;Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",False)" &lt;/FONT&gt;&lt;SPAN style="COLOR: #00b0f0"&gt;'Occulta Ribbon&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT color=#000000&gt;Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",&lt;FONT color=#ff0000&gt;&lt;STRONG&gt;True&lt;/STRONG&gt;&lt;/FONT&gt;)" &lt;/FONT&gt;&lt;SPAN style="COLOR: #00b0f0"&gt;'Ripristina Ribbon&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT color=#000000 size=3 face=Calibri&gt;La notizia far&amp;#224; la gioia di quanti, me incluso, hanno in uggia il troppo invadente Ribbon e/o desiderano implementare modelli applicativi pi&amp;#249; o meno chiusi per l&amp;#8217;utente finale, magari semplicemente con una serie di pulsanti o icone con macro associate incorporate nel foglio (v. pi&amp;#249; avanti).&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT color=#000000 size=3 face=Calibri&gt;Vado senza indugi in medias res con la macro &amp;#8220;toggle&amp;#8221; (altalenante o basculante che dir si voglia) seguente&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT color=#000000&gt;Public CelaSvela As Boolean &lt;/FONT&gt;&lt;SPAN style="COLOR: #0070c0"&gt;' Definita a livello modulo (Dichiarazioni)&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt"&gt;&lt;o:p&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#000000&gt;Sub CelaSvelaRibbon()&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;If Not CelaSvela Then&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",False)"&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Else&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",True)"&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt"&gt;End If&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;CelaSvela = Not CelaSvela&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT color=#000000&gt;End Sub&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt"&gt;&lt;o:p&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT color=#000000 size=3 face=Calibri&gt;Il va-e-vieni funziona a meraviglia, offrendo la massima visibilit&amp;#224; alle celle del foglio.&lt;/FONT&gt;&lt;/P&gt;
&lt;DIV style="BORDER-BOTTOM: windowtext 1pt solid; BORDER-LEFT: windowtext 1pt solid; PADDING-BOTTOM: 1pt; PADDING-LEFT: 4pt; PADDING-RIGHT: 4pt; BACKGROUND: #e5dfec; BORDER-TOP: windowtext 1pt solid; BORDER-RIGHT: windowtext 1pt solid; PADDING-TOP: 1pt; mso-border-alt: solid windowtext .5pt; mso-element: para-border-div; mso-background-themecolor: accent4; mso-background-themetint: 51"&gt;
&lt;P style="BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 10pt; PADDING-LEFT: 0cm; PADDING-RIGHT: 0cm; BACKGROUND: #e5dfec; BORDER-TOP: medium none; BORDER-RIGHT: medium none; PADDING-TOP: 0cm; mso-border-alt: solid windowtext .5pt; mso-background-themecolor: accent4; mso-background-themetint: 51; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt" class=MsoNormal&gt;&lt;FONT color=#000000&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;Nota &lt;/B&gt;&amp;#8211; L&amp;#8217;opzione di riduzione a icona &amp;#232; un compromesso? S&amp;#236; ma richiede comunque un clic aggiuntivo per l&amp;#8217;accesso alle icone dei comandi...&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/DIV&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT color=#000000 size=3 face=Calibri&gt;A questo punto ho pensato di rivitalizzare un vecchio modellino didattico con questa rivelazione. Esso comprendeva codice macro, connesso a pulsanti sul foglio di lavoro, in grado l&amp;#8217;uno di creare, l&amp;#8217;altro di eliminare una certa barra menu personale &lt;I style="mso-bidi-font-style: normal"&gt;temporanea, &lt;/I&gt;ovvero creata al volo, dinamicamente. La speranza (ingenua) &amp;#232; andata subito delusa: purtroppo &lt;U&gt;le barre degli strumenti (menu bar) personalizzate in Excel 2007 vengono imperiosamente inserite nella scheda (tab) &lt;I style="mso-bidi-font-style: normal"&gt;Componenti aggiuntivi&lt;/I&gt; (add-in) del Ribbon per cui facendolo sparire se ne va anche la nostra bella barra&lt;/U&gt;. Che ricompare, col successivo richiamo di &lt;I style="mso-bidi-font-style: normal"&gt;CelaSvelaRibbon&lt;/I&gt;, che per&amp;#242; si dimostra superfluo a questo scopo.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT color=#000000 size=3 face=Calibri&gt;Qui sotto &amp;#232; illustrata, un po&amp;#8217; rozzamente, la situazione del Ribbon con &lt;st1:PersonName w:st="on" ProductID="la scheda Componenti"&gt;la scheda &lt;I style="mso-bidi-font-style: normal"&gt;Componenti&lt;/I&gt;&lt;/st1:PersonName&gt;&lt;I style="mso-bidi-font-style: normal"&gt; aggiuntivi&lt;/I&gt; contenente a sua volta una certa barra personale:&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;
&lt;TABLE style="BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; BORDER-COLLAPSE: collapse; BORDER-TOP: medium none; BORDER-RIGHT: medium none; mso-border-alt: solid black .5pt; mso-padding-alt: 0cm 5.4pt 0cm 5.4pt; mso-yfti-tbllook: 1184; mso-border-themecolor: text1" class=MsoTableGrid border=1 cellSpacing=0 cellPadding=0&gt;
&lt;TBODY&gt;
&lt;TR style="HEIGHT: 18.2pt; mso-yfti-irow: 0; mso-yfti-firstrow: yes"&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 40.85pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #b6dde8; HEIGHT: 18.2pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0cm; mso-border-alt: solid black .5pt; mso-background-themecolor: accent5; mso-background-themetint: 102; mso-border-themecolor: text1" vAlign=top width=54&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;HOME&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #d4d0c8; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 49.6pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #b6dde8; HEIGHT: 18.2pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0cm; mso-border-alt: solid black .5pt; mso-background-themecolor: accent5; mso-background-themetint: 102; mso-border-themecolor: text1; mso-border-left-alt: solid black .5pt; mso-border-left-themecolor: text1" vAlign=top width=66&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Inserisci&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #d4d0c8; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 198.9pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #b6dde8; HEIGHT: 18.2pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0cm; mso-border-alt: solid black .5pt; mso-background-themecolor: accent5; mso-background-themetint: 102; mso-border-themecolor: text1; mso-border-left-alt: solid black .5pt; mso-border-left-themecolor: text1" vAlign=top width=265&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Layout di pagina . . . .&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;ecc. ecc.&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #d4d0c8; BORDER-LEFT: #d4d0c8; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 169.65pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #daeef3; HEIGHT: 18.2pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0cm; mso-background-themecolor: accent5; mso-background-themetint: 51; mso-border-left-alt: solid black .5pt; mso-border-left-themecolor: text1; mso-border-top-alt: solid black .5pt; mso-border-top-themecolor: text1; mso-border-right-themecolor: text1; mso-border-right-alt: solid black .5pt" vAlign=top width=226&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Componenti aggiuntivi&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 1; mso-yfti-lastrow: yes"&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 459pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #daeef3; BORDER-TOP: #d4d0c8; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0cm; mso-background-themecolor: accent5; mso-background-themetint: 51; mso-border-themecolor: text1; mso-border-left-alt: solid black .5pt; mso-border-left-themecolor: text1; mso-border-right-themecolor: text1; mso-border-right-alt: solid black .5pt; mso-border-bottom-themecolor: text1; mso-border-bottom-alt: solid black .5pt" vAlign=top width=612 colSpan=4&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Primo menu Secondo menu Terzo menu&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;ecc. ecc.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Barre degli strumenti personalizzate&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT color=#000000 size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT color=#000000 size=3 face=Calibri&gt;Qui sorge spontanea una domanda: perch&amp;#233; i Soloni di Redmon non hanno pensato di lasciare che le barre strumenti classiche continuassero a fluttuare liberamente sul foglio anzich&amp;#233; essere ingabbiate nel Ribbon? Una ragione tecnica ci sar&amp;#224;? Mi astengo dal pronunciarmi, dico solo che &amp;#232; un peccato non abbiano potuto - o voluto? &amp;#8211; farlo.&lt;/FONT&gt;&lt;/P&gt;
&lt;H2 style="MARGIN: 12pt 0cm 3pt"&gt;&lt;EM&gt;&lt;FONT color=#000000&gt;Alternative, discussioni e richiami&lt;/FONT&gt;&lt;/EM&gt;&lt;/H2&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT color=#000000 size=3 face=Calibri&gt;Tornando all&amp;#8217;istruzione segreta, tutti avranno subito notato che si presenta come una &lt;I style="mso-bidi-font-style: normal"&gt;funzione macro &lt;/I&gt;nata con Excel 4.0 e tuttora supportata negli appositi fogli del tipo &lt;B style="mso-bidi-font-weight: normal"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;Macro1&lt;/I&gt;&lt;/B&gt;, &lt;B style="mso-bidi-font-weight: normal"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;Macro2&lt;/I&gt;&lt;/B&gt; eccetera. Per la cronaca, ho provato a inserirla, doverosamente preceduta da &amp;#8220;=&amp;#8221; in un foglio del genere ma non &amp;#232; successo nulla. In preda a una sindrome d&amp;#8217;ingenuit&amp;#224; ho poi pensato di poter eliminare quasi tutte le tab del Ribbon mantenendo in vita solo la predetta degli add-in. Ma istruzioni del tipo &lt;I style="mso-bidi-font-style: normal"&gt;ExecuteExcel4Macro &lt;/I&gt;relative a tab non ne ho trovate proprio.&lt;/FONT&gt;&lt;/P&gt;
&lt;DIV style="BORDER-BOTTOM: windowtext 1pt solid; BORDER-LEFT: windowtext 1pt solid; PADDING-BOTTOM: 1pt; PADDING-LEFT: 4pt; PADDING-RIGHT: 4pt; BACKGROUND: #e5dfec; BORDER-TOP: windowtext 1pt solid; BORDER-RIGHT: windowtext 1pt solid; PADDING-TOP: 1pt; mso-border-alt: solid windowtext .5pt; mso-element: para-border-div; mso-background-themecolor: accent4; mso-background-themetint: 51"&gt;
&lt;P style="BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 10pt; PADDING-LEFT: 0cm; PADDING-RIGHT: 0cm; BACKGROUND: #e5dfec; BORDER-TOP: medium none; BORDER-RIGHT: medium none; PADDING-TOP: 0cm; mso-border-alt: solid windowtext .5pt; mso-background-themecolor: accent4; mso-background-themetint: 51; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt" class=MsoNormal&gt;&lt;FONT color=#000000&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;Nota &lt;/B&gt;Sempre per la cronaca, La Guida alla voce &lt;I style="mso-bidi-font-style: normal"&gt;ExecuteExcel4Macro &lt;/I&gt;fornisce un solo esempio, ma di SHOW.TOOLBAR non parla proprio.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/DIV&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT color=#000000 size=3 face=Calibri&gt;Al riguardo, il buon &lt;st1:PersonName w:st="on" ProductID="Giorgio Villa"&gt;Giorgio Villa&lt;/st1:PersonName&gt; mi ha ricordato che l&amp;#8217;unica possibilit&amp;#224; potrebbe essere il ricorso a un Ribbon personalizzato. Qui confesso di aver ultimamente trascurato se non perso di vista questo tema, comunque ne approfitto per:&lt;/FONT&gt;&lt;/P&gt;
&lt;UL style="MARGIN-TOP: 0cm" type=disc&gt;&lt;FONT face=Calibri&gt;&lt;FONT color=#000000&gt;
&lt;UL style="MARGIN-TOP: 0cm" type=disc&gt;
&lt;LI style="TEXT-ALIGN: left; MARGIN: 0cm 0cm 10pt; mso-list: l0 level1 lfo1" class=MsoNormal&gt;&lt;FONT size=3&gt;dare i link a miei vecchi articoli specifici (ma sul web c&amp;#8217;&amp;#232; una marea di materiale), di cui il secondo illustra come personalizzare il Ribbon fino a disabilitare quasi tutte le opzioni: &lt;/FONT&gt;&lt;SPAN style="mso-bidi-font-family: Arial"&gt;&lt;A href="http://blog.shareoffice.it/giannigiaccaglini/articles/8953.aspx"&gt;&lt;FONT color=#800080 size=3&gt;http://blog.shareoffice.it/giannigiaccaglini/articles/8953.aspx&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3&gt; &lt;BR&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;A href="http://blog.shareoffice.it/giannigiaccaglini/articles/9032.aspx"&gt;&lt;FONT color=#800080 size=3&gt;http://blog.shareoffice.it/giannigiaccaglini/articles/9032.aspx&lt;/FONT&gt;&lt;/A&gt;&lt;/FONT&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/LI&gt;&lt;/UL&gt;
&lt;LI style="TEXT-ALIGN: left; MARGIN: 0cm 0cm 10pt; mso-list: l1 level1 lfo1" class=MsoNormal&gt;&lt;FONT color=#000000 size=3 face=Calibri&gt;riportare un elementare file &lt;B style="mso-bidi-font-weight: normal"&gt;CustomUI.xml &lt;/B&gt;dal contenuto seguente:&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN class=m1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;FONT color=#0000ff&gt;&amp;lt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=t1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;FONT color=#990000&gt;customUI&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=ns1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;FONT color=#ff0000&gt; xmlns&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=m1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;FONT color=#0000ff&gt;="&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;B&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; COLOR: red; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;http://schemas.microsoft.com/office/2006/01/customui&lt;/SPAN&gt;&lt;/B&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN class=m1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;"&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN class=m1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&amp;lt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=t1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;FONT color=#990000&gt;ribbon&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN class=m1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN class=m1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&amp;lt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=t1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;FONT color=#990000&gt;tabs&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN class=m1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN class=m1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&amp;lt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=t1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;FONT color=#990000&gt;tab id&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=m1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;FONT color=#0000ff&gt;="&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT color=#000000&gt;&lt;B&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;Cust&lt;/SPAN&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;omTab&lt;/SPAN&gt;&lt;/B&gt;&lt;/FONT&gt;&lt;SPAN class=m1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#0000ff&gt;"&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=t1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#990000&gt; label&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=m1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#0000ff&gt;="&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;B&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#000000&gt;Mia Tab&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN class=m1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;"&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN class=m1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&amp;lt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=t1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#990000&gt;group id&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=m1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#0000ff&gt;="&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;B&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#000000&gt;SampleGroup&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN class=m1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#0000ff&gt;"&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=t1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#990000&gt; label&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=m1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#0000ff&gt;="&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;B&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#000000&gt;Sample Group&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN class=m1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;"&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN class=m1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&amp;lt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=t1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#990000&gt;button&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN class=t1&gt;&lt;FONT color=#990000&gt;id&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=m1&gt;&lt;FONT color=#0000ff&gt;="&lt;/FONT&gt;&lt;/SPAN&gt;&lt;B&gt;&lt;FONT color=#000000&gt;Button1&lt;/FONT&gt;&lt;/B&gt;&lt;SPAN class=m1&gt;&lt;FONT color=#0000ff&gt;"&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=t1&gt;&lt;FONT color=#990000&gt; size&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=m1&gt;&lt;FONT color=#0000ff&gt;="&lt;/FONT&gt;&lt;/SPAN&gt;&lt;B&gt;&lt;FONT color=#000000&gt;large&lt;/FONT&gt;&lt;/B&gt;&lt;SPAN class=m1&gt;&lt;FONT color=#0000ff&gt;"&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=t1&gt;&lt;FONT color=#990000&gt; tag&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=m1&gt;&lt;FONT color=#0000ff&gt;="&lt;/FONT&gt;&lt;/SPAN&gt;&lt;B&gt;&lt;FONT color=#000000&gt;NumCas&lt;/FONT&gt;&lt;/B&gt;&lt;SPAN class=m1&gt;&lt;FONT color=#0000ff&gt;"&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=t1&gt;&lt;FONT color=#990000&gt; label&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=m1&gt;&lt;FONT color=#0000ff&gt;="&lt;/FONT&gt;&lt;/SPAN&gt;&lt;B&gt;&lt;FONT color=#000000&gt;Inser. Numeri cas.&lt;/FONT&gt;&lt;/B&gt;&lt;SPAN class=m1&gt;&lt;FONT color=#0000ff&gt;"&lt;BR&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=t1&gt;&lt;FONT color=#990000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;onAction&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=m1&gt;&lt;FONT color=#0000ff&gt;="&lt;/FONT&gt;&lt;/SPAN&gt;&lt;B&gt;&lt;FONT color=#000000&gt;Foglio1.InserNumCasInSel&lt;/FONT&gt;&lt;/B&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN class=m1&gt;" /&amp;gt;&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN class=m1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&amp;lt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=t1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#990000&gt;button&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN class=t1&gt;&lt;FONT color=#990000&gt;id&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=m1&gt;&lt;FONT color=#0000ff&gt;="&lt;/FONT&gt;&lt;/SPAN&gt;&lt;B&gt;&lt;FONT color=#000000&gt;Button2&lt;/FONT&gt;&lt;/B&gt;&lt;SPAN class=m1&gt;&lt;FONT color=#0000ff&gt;"&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=t1&gt;&lt;FONT color=#990000&gt; size&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=m1&gt;&lt;FONT color=#0000ff&gt;="&lt;/FONT&gt;&lt;/SPAN&gt;&lt;B&gt;&lt;FONT color=#000000&gt;large&lt;/FONT&gt;&lt;/B&gt;&lt;SPAN class=m1&gt;&lt;FONT color=#0000ff&gt;"&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=t1&gt;&lt;FONT color=#990000&gt; tag&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=m1&gt;&lt;FONT color=#0000ff&gt;="&lt;/FONT&gt;&lt;/SPAN&gt;&lt;B&gt;&lt;FONT color=#000000&gt;Lancia UserForm&lt;/FONT&gt;&lt;/B&gt;&lt;SPAN class=m1&gt;&lt;FONT color=#0000ff&gt;"&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=t1&gt;&lt;FONT color=#990000&gt; label&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=m1&gt;&lt;FONT color=#0000ff&gt;="&lt;/FONT&gt;&lt;/SPAN&gt;&lt;B&gt;&lt;FONT color=#000000&gt;Lancia UserForm&lt;/FONT&gt;&lt;/B&gt;&lt;SPAN class=m1&gt;&lt;FONT color=#0000ff&gt;"&lt;BR&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=t1&gt;&lt;FONT color=#990000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;onAction&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=m1&gt;&lt;FONT color=#0000ff&gt;="&lt;/FONT&gt;&lt;/SPAN&gt;&lt;B&gt;&lt;FONT color=#000000&gt;Foglio1.LanciaUserForm&lt;/FONT&gt;&lt;/B&gt;&lt;SPAN class=m1&gt;&lt;FONT color=#0000ff&gt;" /&amp;gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN class=m1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=m1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&amp;lt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=#990000&gt;&lt;SPAN class=t1&gt;&lt;SPAN style="mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT size=3 face=Calibri&gt;/&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=t1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;group&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN class=m1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=m1&gt;&lt;SPAN style="mso-ansi-language: EN-US" lang=EN-US&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN class=m1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=m1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;/&lt; SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN class=t1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#990000&gt;tab&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN class=m1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN class=m1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=m1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;/&lt; SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN class=t1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#990000&gt;tabs&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN class=m1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN class=m1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=m1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;/&lt; SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN class=t1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#990000&gt;ribbon&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN class=m1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN class=m1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#0000ff&gt;&lt;/&lt; FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=t1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#990000&gt;customUI&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN class=m1&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;SPAN style="mso-ansi-language: EN-US" lang=EN-US&gt;&lt;o:p&gt;&lt;FONT color=#000000 size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT color=#000000 size=3 face=Calibri&gt;Si tratta per l&amp;#8217;appunto di un archivio in format XML che pu&amp;#242; essere pazientemente creato a mano persino col Notepad o, meglio, con appositi Editor (potente, dicono, quello a corredo di Visual Studio 2005/2008).&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT color=#000000 size=3 face=Calibri&gt;L&amp;#8217;esempietto sopra crea una sola tab contenente due soli pulsanti &lt;B style="mso-bidi-font-weight: normal"&gt;Button1&lt;/B&gt; e &lt;B style="mso-bidi-font-weight: normal"&gt;Button2 &lt;/B&gt;cui vengono associate, con &lt;B style="mso-bidi-font-weight: normal"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;onAction&lt;/I&gt;&lt;/B&gt;, due certe routine VBA. Questa potrebbe essere la via per ottenere l&amp;#8217;obiettivo appena sopra enunciato. Qualcuno ha voglia di percorrerla? Auguri e si faccia vivo se ha successo, mentre io dubito quin...&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT color=#000000 size=3 face=Calibri&gt;Infine riporto le macro suggerite dal sullodato Giorgio. In sostanza la sua soluzione, finalizzata alla creazione di un modello applicativo Excel, consiste nelle mosse seguenti:&lt;/FONT&gt;&lt;/P&gt;
&lt;OL style="MARGIN-TOP: 0cm" type=1&gt;
&lt;LI style="MARGIN: 0cm 0cm 10pt; mso-list: l0 level1 lfo2" class=MsoNormal&gt;&lt;FONT color=#000000 size=3 face=Calibri&gt;annullare pro tempore il dannato Ribbon (e, inoltre, occultare tab dei fogli, barre di stato e delle applicazioni);&lt;/FONT&gt; 
&lt;LI style="MARGIN: 0cm 0cm 10pt; mso-list: l0 level1 lfo2" class=MsoNormal&gt;&lt;FONT color=#000000 size=3 face=Calibri&gt;inserire in alto nel modello una sfilza di iconcine cui sono associate le sub cui l&amp;#8217;utente &amp;#232; &amp;#8220;costretto&amp;#8221; a utilizzare;&lt;/FONT&gt; 
&lt;LI style="MARGIN: 0cm 0cm 10pt; mso-list: l0 level1 lfo2" class=MsoNormal&gt;&lt;FONT color=#000000 size=3 face=Calibri&gt;Ripristinare il Ribbon alla chiusura del modello.&lt;/FONT&gt;&lt;/LI&gt;&lt;/OL&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT color=#000000 size=3 face=Calibri&gt;Inoltre le macro sono previste sia per Excel 2007 che per le precedenti versioni 97-2003 (nel qual caso ovviamente il Ribbon non viene trattato ma sono nascoste le vecchia barre strumenti).&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT color=#000000 size=3 face=Calibri&gt;Ma ecco, senza troppi commenti il codice proposto. Dovrebbe essere auto esplicativo, almeno per chi mastica l&amp;#8217;ABC del VBA, comunque prometto che appena ho tempo pubblicher&amp;#242; l&amp;#8217;intero modellino.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT color=#000000&gt;Sub AUTO_OPEN()&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;ViaRibbon&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#000000&gt;End Sub&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;SPAN style="mso-ansi-language: EN-US" lang=EN-US&gt;&lt;o:p&gt;&lt;FONT color=#000000 size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT color=#000000&gt;Sub Auto_Close()&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;RipristinaRibbon&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT color=#000000&gt;End Sub&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;SPAN style="mso-ansi-language: EN-US" lang=EN-US&gt;&lt;o:p&gt;&lt;FONT color=#000000 size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT color=#000000&gt;Private Sub Workbook_Activate()&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;ViaRibbon&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT color=#000000&gt;End Sub&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;SPAN style="mso-ansi-language: EN-US" lang=EN-US&gt;&lt;o:p&gt;&lt;FONT color=#000000 size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT color=#000000&gt;Private Sub Workbook_Deactivate()&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT color=#000000&gt;RipristinaRibbon&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT color=#000000&gt;End Sub&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;SPAN style="mso-ansi-language: EN-US" lang=EN-US&gt;&lt;o:p&gt;&lt;FONT color=#000000 size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT color=#000000&gt;Sub &lt;/FONT&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="COLOR: red"&gt;Emergenza&lt;/SPAN&gt;&lt;/B&gt;&lt;FONT color=#000000&gt;()&lt;/FONT&gt;&lt;SPAN style="COLOR: #00b050"&gt;'Ctrl+a&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;RipristinaRibbon&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT color=#000000&gt;End Sub&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;SPAN style="mso-ansi-language: EN-US" lang=EN-US&gt;&lt;o:p&gt;&lt;FONT color=#000000 size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT color=#000000&gt;Sub ViaRibbon()&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;If Val(Application.Version) &amp;lt; 12 Then&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #00b050"&gt;'Excel 97-2003&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Dim I As Integer&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Set Barre = Application.CommandBars&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;For I = 1 To Application.CommandBars.Count&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;Barre(I).Enabled = False&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Next I&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;Else&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN style="COLOR: #00b050"&gt;'Excel 2007&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",False)"&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;End If&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;o:p&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;ActiveWindow.DisplayWorkbookTabs = False &lt;/FONT&gt;&lt;SPAN style="COLOR: #00b050"&gt;'(fogli)&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;With Application&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;.DisplayFormulaBar = False &lt;/FONT&gt;&lt;SPAN style="COLOR: #00b050"&gt;'barra della formula&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;.DisplayStatusBar = False &lt;/FONT&gt;&lt;SPAN style="COLOR: #00b050"&gt;'barra di stato&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;.ShowWindowsInTaskbar = True &lt;/FONT&gt;&lt;SPAN style="COLOR: #00b050"&gt;'barra delle applicazioni di Windows&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;End With&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT color=#000000&gt;End Sub&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;o:p&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#000000&gt;Sub RipristinaRibbon()&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;If Val(Application.Version) &amp;lt; 12 Then&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN style="COLOR: #00b050"&gt;'Excel 97-2003&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;Dim I As Integer&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;Set Barre = Application.CommandBars&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;For I = 1 To Application.CommandBars.Count&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;Barre(I).Enabled = True&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;Next I&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;Else&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN style="COLOR: #00b050"&gt;'Excel 2007&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",True)"&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;End If&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;o:p&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;ActiveWindow.DisplayWorkbookTabs = True &lt;/FONT&gt;&lt;SPAN style="COLOR: #00b050"&gt;'(fogli)&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;With Application&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;.DisplayFormulaBar = True &lt;/FONT&gt;&lt;SPAN style="COLOR: #00b050"&gt;'barra della formula&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;.DisplayStatusBar = True &lt;/FONT&gt;&lt;SPAN style="COLOR: #00b050"&gt;'barra di stato&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;.ShowWindowsInTaskbar = True &lt;/FONT&gt;&lt;SPAN style="COLOR: #00b050"&gt;'barra delle applicazioni di Windows&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;End With&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT color=#000000&gt;End Sub&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;FONT color=#000000&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;Infine riporto, con scarni commenti, il codice essenziale di un modellino didattico volto a Creare/Eliminare una generica barra menu personale di tipo temporaneo. Si deve pensare a due pulsanti, etichettati con &lt;B style="mso-bidi-font-weight: normal"&gt;Crea barra menu personale &lt;/B&gt;e, rispettivamente, &lt;B style="mso-bidi-font-weight: normal"&gt;Elimina barra menu personale &lt;/B&gt;cui ho aggiunto un terzo pulsante &lt;B style="mso-bidi-font-weight: normal"&gt;Nascondi/Ripristina il Ribbon&lt;/B&gt;.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;Public SwMiaBellaBarra As Boolean &lt;SPAN style="COLOR: #00b050"&gt;' Switch a livello modulo&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;Public CelaSvela As Boolean &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #00b050"&gt;' Switch a livello modulo&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;Sub CelaSvelaRibbon()&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;If Not CelaSvela Then&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",False)"&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Else&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",True)"&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;End If&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;CelaSvela = Not CelaSvela&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;End Sub&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #00b050; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;' Sub base per creare una barra temporanea personale&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;Sub CreaMenu(PBarra, VettMenu) &lt;SPAN style="COLOR: #00b050"&gt;' VettMenu = vettore dei menu&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;Dim i As Integer&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Set Bar = CommandBars.Add(Name:=PBarra, temporary:=True)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Bar.Visible = True&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;For i = 0 To UBound(VettMenu)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Bar.Controls.Add Type:=msoControlPopup&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;With Bar.Controls(i + 1)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;.Caption = VettMenu(i)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;End With&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Next&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;End Sub&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #00b050; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;' Sub per creare una barra personale, con menu, voci e macro &amp;#8220;On Action&amp;#8221;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;Sub CreaMenuSint(PBarra, VettMenu, VettVettVoci, VettVettMacro)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;Dim i As Integer, j As Integer&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Set Bar = CommandBars.Add(Name:=PBarra, temporary:=True)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Bar.Visible = True&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;For i = 0 To UBound(VettMenu)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Bar.Controls.Add Type:=msoControlPopup&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;With Bar.Controls(i + 1)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;.Caption = VettMenu(i)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;End With&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Next&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;For i = 0 To UBound(VettVettVoci)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;With CommandBars(PBarra).Controls(i + 1)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;For j = 0 To UBound(VettVettVoci(i))&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;With .Controls&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;.Add&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;.Item(j + 1).Caption = VettVettVoci(i)(j)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;.Item(j + 1).OnAction = VettVettMacro(i)(j)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;End With&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Next&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;End With&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Next&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;End Sub&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #00b050; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;' QUESTA infine &amp;#232; la macro del pulsante &lt;B style="mso-bidi-font-weight: normal"&gt;Crea barra menu personale&lt;/B&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;Sub provaCreaMenuSint()&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;If SwMiaBellaBarra Then&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;MsgBox "La barra c'&amp;#232; gi&amp;#224;", vbExclamation&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Exit Sub&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;End If&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Pbar = "Mia bella barra menu"&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Vmenu = Array("Primo menu", "Secondo menu", _&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;"Terzo menu", "Quarto menu", "Quinto menu")&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;VVVoci = Array(Array("Voce 1", "Voce 2", "Voce 3"), _&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Array("Voce 1", "Voce 2"), _&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Array("Voce 1", "Voce 2", "Voce 3", "Voce 4"), _&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Array("Voce 1", "Voce 2"), _&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Array("Voce 1", "Voce 2", "Voce 3"))&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;VVMacro = Array(Array("Miamacro1_1", "Miamacro1_2", "Miamacro1_3"), _&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Array("Miamacro2_1", "Miamacro2_2"), _&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Array("Miamacro3_1", "Miamacro3_2", "Miamacro3_3", "Miamacro3_4"), _&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Array("Miamacro4_1", "Miamacro4_2"), _&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Array("Miamacro5_1", "Miamacro5_2", "Miamacro5_3"))&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;CreaMenuSint Pbar, Vmenu, VVVoci, VVMacro&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;SwMiaBellaBarra = True&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;End Sub&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #00b050; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;' Macro del pulsante &lt;B style="mso-bidi-font-weight: normal"&gt;Elimina barra menu personale&lt;/B&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;Sub EliminaMiaBellaBarra()&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;If SwMiaBellaBarra Then&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;CommandBars("Mia bella barra menu").Delete&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;SwMiaBellaBarra = False&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;End If&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;End Sub&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;H2 style="MARGIN: 12pt 0cm 3pt"&gt;&lt;EM&gt;&lt;FONT face=Cambria&gt;Ribbon vs. Barre personali: un bel dilemma&amp;#8230;&lt;/FONT&gt;&lt;/EM&gt;&lt;/H2&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal align=justify&gt;&lt;FONT size=3 face=Calibri&gt;Come s&amp;#8217;&amp;#232; visto il Ribbon si presenta troppo barocco e invasivo agli occhi di chi progetta applicativi Excel pi&amp;#249; o meno chiusi per l&amp;#8217;utente finale &amp;#8211; al punto di fargli adottare la soluzione con pulsanti e/o icone che richiamano macro, previa scomparsa della vista del Ribbon grazie all&amp;#8217;istruzione segreta qui illustrata.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal align=justify&gt;&lt;FONT size=3 face=Calibri&gt;Per restare al confronto fra il nuovo e il vecchio mondo, ossia Ribbon rispetto alle classiche barre personalizzate, i pro e i contro sono diversi (tanto per cambiare). Mi limito a considerazioni essenziali:&lt;/FONT&gt;&lt;/P&gt;
&lt;UL style="MARGIN-TOP: 0cm" type=disc&gt;
&lt;LI style="MARGIN: 0cm 0cm 10pt; mso-list: l0 level1 lfo1" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;In entrambi i casi non si scherza quanto a complicanze (e conseguenti incubi sintattici);&lt;/FONT&gt; 
&lt;LI style="MARGIN: 0cm 0cm 10pt; mso-list: l0 level1 lfo1" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;Il Ribbon consente risultati ergonomici pi&amp;#249; brillanti&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Calibri','sans-serif'; FONT-SIZE: 11pt; mso-ansi-language: IT; mso-bidi-font-family: 'Times New Roman'; mso-fareast-font-family: Calibri; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;, n&amp;#233; va trascurata la possibilit&amp;#224; di modificarlo anche radicalmente, bench&amp;#233;&amp;nbsp; con procedimenti&lt;/SPAN&gt;&amp;nbsp;macchinosi&amp;nbsp;che &amp;#232; facile scordare;&lt;/FONT&gt; 
&lt;LI style="MARGIN: 0cm 0cm 10pt; mso-list: l0 level1 lfo1" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;Essendo &lt;I style="mso-bidi-font-style: normal"&gt;esterno&lt;/I&gt; al modello ha l&amp;#8217;inconveniente che ci obbliga a crearlo PRIMA, inoltre sembra proprio che non ci sia poi verso di modificarlo dinamicamente, &lt;U&gt;tramite codice VBA&amp;nbsp;&lt;/U&gt;(come avviene con le classiche menu bar); anche l&amp;#8217;obbligo di definire a priori macro &lt;I style="mso-bidi-font-style: normal"&gt;On Action &lt;/I&gt;&amp;#232; un fattore di ambiguit&amp;#224;, se si riflette.&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;L&amp;#8217;ultima cosa, tra l&amp;#8217;altro, veicola confusione su come &amp;#8220;arruolare&amp;#8221; un Ribbon personale e su come ripristinare il Ribbon standard. Una cosa che si dimentica regolarmente, se non si progettano Ribbon mattino e sera. &lt;/FONT&gt;&lt;/P&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;o:p&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;?&amp;gt;&lt;/EM&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;H2&gt;&lt;/H2&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/BLOGHELPER&gt;?&amp;gt;&lt;/EM&gt;&lt;/SPAN&gt; 
&lt;H2&gt;&lt;/H2&gt;&lt;/FONT&gt;&lt;/BLOGHELPER&gt;?&amp;gt;&lt;/EM&gt;&lt;/SPAN&gt; 
&lt;H2&gt;&lt;/H2&gt;&lt;/FONT&gt;&lt;/BLOGHELPER&gt;?&amp;gt;&lt;/EM&gt;&lt;/SPAN&gt; 
&lt;H2&gt;&lt;/H2&gt;&lt;/FONT&gt;&lt;/BLOGHELPER&gt;?&amp;gt;&lt;/EM&gt;&lt;/SPAN&gt;
&lt;H2&gt;&lt;/H2&gt;&lt;/FONT&gt;&lt;/bloghelper&gt;?&gt;&lt;/em&gt;&lt;/span&gt;&lt;/h2&gt;&lt;/font&gt;&lt;img src ="http://blog.shareoffice.it/giannigiaccaglini/aggbug/10229.aspx" width = "1" height = "1" /&gt;</description><body xmlns="http://www.w3.org/1999/xhtml"><font color="#365f91" size="5" face="Cambria">
<h1 style="LINE-HEIGHT: normal; MARGIN: 24pt 0cm 6pt"><font color="#ff0000" size="4">[ Segnalo inoltre  ORARIO SCOLASTICO RIVISITATO, nella Sezione Articoli ]</font></h1>
<h1 style="LINE-HEIGHT: normal; MARGIN: 24pt 0cm 6pt"><font size="5">Istruzione segreta per far sparire/riapparire il Ribbon</font></h1>
<h2 style="TEXT-ALIGN: center; MARGIN: 12pt 0cm 3pt" align="center"><span style="LINE-HEIGHT: 115%; COLOR: #215868; FONT-SIZE: 11pt; mso-bidi-font-size: 14.0pt; mso-themecolor: accent5; mso-themeshade: 128"><em>By G.G. &amp; <?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /><st1:PersonName w:st="on" ProductID="Giorgio Villa">Giorgio Villa</st1:PersonName><?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></EM></SPAN></H2>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT color=#000000 size=3 face=Calibri>Questa notizia, stupefacente per me come pure per molti!, mi proviene da <st1:PersonName w:st="on" ProductID="Giorgio Villa"><B style="mso-bidi-font-weight: normal"><I style="mso-bidi-font-style: normal">Giorgio Villa</I></B></st1:PersonName><B style="mso-bidi-font-weight: normal"><I style="mso-bidi-font-style: normal"> </I></B>un valido visitatore. Le seguenti istruzioni in <B style="mso-bidi-font-weight: normal">VBA</B> Excel 2007, come pure negli Excel <B style="mso-bidi-font-weight: normal">VSTO</B>, permettono di togliere dalla vista e, di fatto, disabilitare la barra multifunzione alias <B style="mso-bidi-font-weight: normal">Ribbon</B>, e, rispettivamente, risuscitarla:</FONT></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 6pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><FONT color=#000000>Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",False)" </FONT><SPAN style="COLOR: #00b0f0">'Occulta Ribbon<o:p></o:p></SPAN></SPAN></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><FONT color=#000000>Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",<FONT color=#ff0000><STRONG>True</STRONG></FONT>)" </FONT><SPAN style="COLOR: #00b0f0">'Ripristina Ribbon<o:p></o:p></SPAN></SPAN></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT color=#000000 size=3 face=Calibri>La notizia far&#224; la gioia di quanti, me incluso, hanno in uggia il troppo invadente Ribbon e/o desiderano implementare modelli applicativi pi&#249; o meno chiusi per l&#8217;utente finale, magari semplicemente con una serie di pulsanti o icone con macro associate incorporate nel foglio (v. pi&#249; avanti).</FONT></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT color=#000000 size=3 face=Calibri>Vado senza indugi in medias res con la macro &#8220;toggle&#8221; (altalenante o basculante che dir si voglia) seguente</FONT></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt"><FONT color=#000000>Public CelaSvela As Boolean </FONT><SPAN style="COLOR: #0070c0">' Definita a livello modulo (Dichiarazioni)</SPAN><o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt"><o:p><FONT color=#000000>&nbsp;</FONT></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#000000>Sub CelaSvelaRibbon()<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>If Not CelaSvela Then<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",False)"<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>Else<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",True)"<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><FONT color=#000000><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN></SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt">End If<o:p></o:p></SPAN></FONT></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt"><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>CelaSvela = Not CelaSvela<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt"><FONT color=#000000>End Sub<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt"><o:p><FONT color=#000000>&nbsp;</FONT></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT color=#000000 size=3 face=Calibri>Il va-e-vieni funziona a meraviglia, offrendo la massima visibilit&#224; alle celle del foglio.</FONT></P>
<DIV style="BORDER-BOTTOM: windowtext 1pt solid; BORDER-LEFT: windowtext 1pt solid; PADDING-BOTTOM: 1pt; PADDING-LEFT: 4pt; PADDING-RIGHT: 4pt; BACKGROUND: #e5dfec; BORDER-TOP: windowtext 1pt solid; BORDER-RIGHT: windowtext 1pt solid; PADDING-TOP: 1pt; mso-border-alt: solid windowtext .5pt; mso-element: para-border-div; mso-background-themecolor: accent4; mso-background-themetint: 51">
<P style="BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 10pt; PADDING-LEFT: 0cm; PADDING-RIGHT: 0cm; BACKGROUND: #e5dfec; BORDER-TOP: medium none; BORDER-RIGHT: medium none; PADDING-TOP: 0cm; mso-border-alt: solid windowtext .5pt; mso-background-themecolor: accent4; mso-background-themetint: 51; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt" class=MsoNormal><FONT color=#000000><FONT size=3><FONT face=Calibri><B style="mso-bidi-font-weight: normal">Nota </B>&#8211; L&#8217;opzione di riduzione a icona &#232; un compromesso? S&#236; ma richiede comunque un clic aggiuntivo per l&#8217;accesso alle icone dei comandi...</FONT></FONT></FONT></P></DIV>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT color=#000000 size=3 face=Calibri>A questo punto ho pensato di rivitalizzare un vecchio modellino didattico con questa rivelazione. Esso comprendeva codice macro, connesso a pulsanti sul foglio di lavoro, in grado l&#8217;uno di creare, l&#8217;altro di eliminare una certa barra menu personale <I style="mso-bidi-font-style: normal">temporanea, </I>ovvero creata al volo, dinamicamente. La speranza (ingenua) &#232; andata subito delusa: purtroppo <U>le barre degli strumenti (menu bar) personalizzate in Excel 2007 vengono imperiosamente inserite nella scheda (tab) <I style="mso-bidi-font-style: normal">Componenti aggiuntivi</I> (add-in) del Ribbon per cui facendolo sparire se ne va anche la nostra bella barra</U>. Che ricompare, col successivo richiamo di <I style="mso-bidi-font-style: normal">CelaSvelaRibbon</I>, che per&#242; si dimostra superfluo a questo scopo.</FONT></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT color=#000000 size=3 face=Calibri>Qui sotto &#232; illustrata, un po&#8217; rozzamente, la situazione del Ribbon con <st1:PersonName w:st="on" ProductID="la scheda Componenti">la scheda <I style="mso-bidi-font-style: normal">Componenti</I></st1:PersonName><I style="mso-bidi-font-style: normal"> aggiuntivi</I> contenente a sua volta una certa barra personale:</FONT></P>
<P>
<TABLE style="BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; BORDER-COLLAPSE: collapse; BORDER-TOP: medium none; BORDER-RIGHT: medium none; mso-border-alt: solid black .5pt; mso-padding-alt: 0cm 5.4pt 0cm 5.4pt; mso-yfti-tbllook: 1184; mso-border-themecolor: text1" class=MsoTableGrid border=1 cellSpacing=0 cellPadding=0>
<TBODY>
<TR style="HEIGHT: 18.2pt; mso-yfti-irow: 0; mso-yfti-firstrow: yes">
<TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 40.85pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #b6dde8; HEIGHT: 18.2pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0cm; mso-border-alt: solid black .5pt; mso-background-themecolor: accent5; mso-background-themetint: 102; mso-border-themecolor: text1" vAlign=top width=54>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 6pt" class=MsoNormal><FONT face=Calibri>HOME</FONT></P></TD>
<TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #d4d0c8; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 49.6pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #b6dde8; HEIGHT: 18.2pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0cm; mso-border-alt: solid black .5pt; mso-background-themecolor: accent5; mso-background-themetint: 102; mso-border-themecolor: text1; mso-border-left-alt: solid black .5pt; mso-border-left-themecolor: text1" vAlign=top width=66>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>Inserisci</FONT></P></TD>
<TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #d4d0c8; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 198.9pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #b6dde8; HEIGHT: 18.2pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0cm; mso-border-alt: solid black .5pt; mso-background-themecolor: accent5; mso-background-themetint: 102; mso-border-themecolor: text1; mso-border-left-alt: solid black .5pt; mso-border-left-themecolor: text1" vAlign=top width=265>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>Layout di pagina . . . .<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>ecc. ecc.</FONT></P></TD>
<TD style="BORDER-BOTTOM: #d4d0c8; BORDER-LEFT: #d4d0c8; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 169.65pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #daeef3; HEIGHT: 18.2pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0cm; mso-background-themecolor: accent5; mso-background-themetint: 51; mso-border-left-alt: solid black .5pt; mso-border-left-themecolor: text1; mso-border-top-alt: solid black .5pt; mso-border-top-themecolor: text1; mso-border-right-themecolor: text1; mso-border-right-alt: solid black .5pt" vAlign=top width=226>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>Componenti aggiuntivi</FONT></P></TD></TR>
<TR style="mso-yfti-irow: 1; mso-yfti-lastrow: yes">
<TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; PADDING-BOTTOM: 0cm; PADDING-LEFT: 5.4pt; WIDTH: 459pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #daeef3; BORDER-TOP: #d4d0c8; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0cm; mso-background-themecolor: accent5; mso-background-themetint: 51; mso-border-themecolor: text1; mso-border-left-alt: solid black .5pt; mso-border-left-themecolor: text1; mso-border-right-themecolor: text1; mso-border-right-alt: solid black .5pt; mso-border-bottom-themecolor: text1; mso-border-bottom-alt: solid black .5pt" vAlign=top width=612 colSpan=4>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><FONT face=Calibri>Primo menu Secondo menu Terzo menu<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>ecc. ecc.</FONT></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><FONT face=Calibri>Barre degli strumenti personalizzate</FONT></P></TD></TR></TBODY></TABLE></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 6pt" class=MsoNormal><o:p><FONT color=#000000 size=3 face=Calibri>&nbsp;</FONT></o:p></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT color=#000000 size=3 face=Calibri>Qui sorge spontanea una domanda: perch&#233; i Soloni di Redmon non hanno pensato di lasciare che le barre strumenti classiche continuassero a fluttuare liberamente sul foglio anzich&#233; essere ingabbiate nel Ribbon? Una ragione tecnica ci sar&#224;? Mi astengo dal pronunciarmi, dico solo che &#232; un peccato non abbiano potuto - o voluto? &#8211; farlo.</FONT></P>
<H2 style="MARGIN: 12pt 0cm 3pt"><EM><FONT color=#000000>Alternative, discussioni e richiami</FONT></EM></H2>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT color=#000000 size=3 face=Calibri>Tornando all&#8217;istruzione segreta, tutti avranno subito notato che si presenta come una <I style="mso-bidi-font-style: normal">funzione macro </I>nata con Excel 4.0 e tuttora supportata negli appositi fogli del tipo <B style="mso-bidi-font-weight: normal"><I style="mso-bidi-font-style: normal">Macro1</I></B>, <B style="mso-bidi-font-weight: normal"><I style="mso-bidi-font-style: normal">Macro2</I></B> eccetera. Per la cronaca, ho provato a inserirla, doverosamente preceduta da &#8220;=&#8221; in un foglio del genere ma non &#232; successo nulla. In preda a una sindrome d&#8217;ingenuit&#224; ho poi pensato di poter eliminare quasi tutte le tab del Ribbon mantenendo in vita solo la predetta degli add-in. Ma istruzioni del tipo <I style="mso-bidi-font-style: normal">ExecuteExcel4Macro </I>relative a tab non ne ho trovate proprio.</FONT></P>
<DIV style="BORDER-BOTTOM: windowtext 1pt solid; BORDER-LEFT: windowtext 1pt solid; PADDING-BOTTOM: 1pt; PADDING-LEFT: 4pt; PADDING-RIGHT: 4pt; BACKGROUND: #e5dfec; BORDER-TOP: windowtext 1pt solid; BORDER-RIGHT: windowtext 1pt solid; PADDING-TOP: 1pt; mso-border-alt: solid windowtext .5pt; mso-element: para-border-div; mso-background-themecolor: accent4; mso-background-themetint: 51">
<P style="BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 10pt; PADDING-LEFT: 0cm; PADDING-RIGHT: 0cm; BACKGROUND: #e5dfec; BORDER-TOP: medium none; BORDER-RIGHT: medium none; PADDING-TOP: 0cm; mso-border-alt: solid windowtext .5pt; mso-background-themecolor: accent4; mso-background-themetint: 51; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt" class=MsoNormal><FONT color=#000000><FONT size=3><FONT face=Calibri><B style="mso-bidi-font-weight: normal">Nota </B>Sempre per la cronaca, La Guida alla voce <I style="mso-bidi-font-style: normal">ExecuteExcel4Macro </I>fornisce un solo esempio, ma di SHOW.TOOLBAR non parla proprio.</FONT></FONT></FONT></P></DIV>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT color=#000000 size=3 face=Calibri>Al riguardo, il buon <st1:PersonName w:st="on" ProductID="Giorgio Villa">Giorgio Villa</st1:PersonName> mi ha ricordato che l&#8217;unica possibilit&#224; potrebbe essere il ricorso a un Ribbon personalizzato. Qui confesso di aver ultimamente trascurato se non perso di vista questo tema, comunque ne approfitto per:</FONT></P>
<UL style="MARGIN-TOP: 0cm" type=disc><FONT face=Calibri><FONT color=#000000>
<UL style="MARGIN-TOP: 0cm" type=disc>
<LI style="TEXT-ALIGN: left; MARGIN: 0cm 0cm 10pt; mso-list: l0 level1 lfo1" class=MsoNormal><FONT size=3>dare i link a miei vecchi articoli specifici (ma sul web c&#8217;&#232; una marea di materiale), di cui il secondo illustra come personalizzare il Ribbon fino a disabilitare quasi tutte le opzioni: </FONT><SPAN style="mso-bidi-font-family: Arial"><A href="http://blog.shareoffice.it/giannigiaccaglini/articles/8953.aspx"><FONT color=#800080 size=3>http://blog.shareoffice.it/giannigiaccaglini/articles/8953.aspx</FONT></A><FONT size=3> <BR></FONT></SPAN><A href="http://blog.shareoffice.it/giannigiaccaglini/articles/9032.aspx"><FONT color=#800080 size=3>http://blog.shareoffice.it/giannigiaccaglini/articles/9032.aspx</FONT></A></FONT></FONT>&nbsp;</LI></UL>
<LI style="TEXT-ALIGN: left; MARGIN: 0cm 0cm 10pt; mso-list: l1 level1 lfo1" class=MsoNormal><FONT color=#000000 size=3 face=Calibri>riportare un elementare file <B style="mso-bidi-font-weight: normal">CustomUI.xml </B>dal contenuto seguente:</FONT></LI></UL>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN class=m1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><FONT color=#0000ff>&lt;</FONT></SPAN></SPAN><SPAN class=t1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><FONT color=#990000>customUI</FONT></SPAN></SPAN><SPAN class=ns1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><FONT color=#ff0000> xmlns</FONT></SPAN></SPAN><SPAN class=m1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><FONT color=#0000ff>="</FONT></SPAN></SPAN><B><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; COLOR: red; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt">http://schemas.microsoft.com/office/2006/01/customui</SPAN></B><FONT color=#0000ff><SPAN class=m1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt">"&gt;</SPAN></SPAN><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><o:p></o:p></SPAN></FONT></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN class=m1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><FONT color=#0000ff><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>&lt;</FONT></SPAN></SPAN><SPAN class=t1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><FONT color=#990000>ribbon</FONT></SPAN></SPAN><FONT color=#0000ff><SPAN class=m1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt">&gt;</SPAN></SPAN><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><o:p></o:p></SPAN></FONT></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN class=m1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><FONT color=#0000ff><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>&lt;</FONT></SPAN></SPAN><SPAN class=t1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><FONT color=#990000>tabs</FONT></SPAN></SPAN><FONT color=#0000ff><SPAN class=m1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt">&gt;</SPAN></SPAN><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><o:p></o:p></SPAN></FONT></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN class=m1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><FONT color=#0000ff><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>&lt;</FONT></SPAN></SPAN><SPAN class=t1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><FONT color=#990000>tab id</FONT></SPAN></SPAN><SPAN class=m1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><FONT color=#0000ff>="</FONT></SPAN></SPAN><FONT color=#000000><B><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt">Cust</SPAN></B><B><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US>omTab</SPAN></B></FONT><SPAN class=m1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#0000ff>"</FONT></SPAN></SPAN><SPAN class=t1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#990000> label</FONT></SPAN></SPAN><SPAN class=m1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#0000ff>="</FONT></SPAN></SPAN><B><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#000000>Mia Tab</FONT></SPAN></B><FONT color=#0000ff><SPAN class=m1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US>"&gt;</SPAN></SPAN><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><o:p></o:p></SPAN></FONT></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN class=m1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#0000ff><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>&lt;</FONT></SPAN></SPAN><SPAN class=t1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#990000>group id</FONT></SPAN></SPAN><SPAN class=m1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#0000ff>="</FONT></SPAN></SPAN><B><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#000000>SampleGroup</FONT></SPAN></B><SPAN class=m1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#0000ff>"</FONT></SPAN></SPAN><SPAN class=t1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#990000> label</FONT></SPAN></SPAN><SPAN class=m1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#0000ff>="</FONT></SPAN></SPAN><B><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#000000>Sample Group</FONT></SPAN></B><FONT color=#0000ff><SPAN class=m1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US>"&gt;</SPAN></SPAN><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><o:p></o:p></SPAN></FONT></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN class=m1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#0000ff><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>&lt;</FONT></SPAN></SPAN><SPAN class=t1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#990000>button</FONT></SPAN></SPAN><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#000000> </FONT><SPAN class=t1><FONT color=#990000>id</FONT></SPAN><SPAN class=m1><FONT color=#0000ff>="</FONT></SPAN><B><FONT color=#000000>Button1</FONT></B><SPAN class=m1><FONT color=#0000ff>"</FONT></SPAN><SPAN class=t1><FONT color=#990000> size</FONT></SPAN><SPAN class=m1><FONT color=#0000ff>="</FONT></SPAN><B><FONT color=#000000>large</FONT></B><SPAN class=m1><FONT color=#0000ff>"</FONT></SPAN><SPAN class=t1><FONT color=#990000> tag</FONT></SPAN><SPAN class=m1><FONT color=#0000ff>="</FONT></SPAN><B><FONT color=#000000>NumCas</FONT></B><SPAN class=m1><FONT color=#0000ff>"</FONT></SPAN><SPAN class=t1><FONT color=#990000> label</FONT></SPAN><SPAN class=m1><FONT color=#0000ff>="</FONT></SPAN><B><FONT color=#000000>Inser. Numeri cas.</FONT></B><SPAN class=m1><FONT color=#0000ff>"<BR><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></FONT></SPAN><SPAN class=t1><FONT color=#990000><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>onAction</FONT></SPAN><SPAN class=m1><FONT color=#0000ff>="</FONT></SPAN><B><FONT color=#000000>Foglio1.InserNumCasInSel</FONT></B><FONT color=#0000ff><SPAN class=m1>" /&gt;</SPAN><o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN class=m1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#0000ff><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>&lt;</FONT></SPAN></SPAN><SPAN class=t1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#990000>button</FONT></SPAN></SPAN><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#000000> </FONT><SPAN class=t1><FONT color=#990000>id</FONT></SPAN><SPAN class=m1><FONT color=#0000ff>="</FONT></SPAN><B><FONT color=#000000>Button2</FONT></B><SPAN class=m1><FONT color=#0000ff>"</FONT></SPAN><SPAN class=t1><FONT color=#990000> size</FONT></SPAN><SPAN class=m1><FONT color=#0000ff>="</FONT></SPAN><B><FONT color=#000000>large</FONT></B><SPAN class=m1><FONT color=#0000ff>"</FONT></SPAN><SPAN class=t1><FONT color=#990000> tag</FONT></SPAN><SPAN class=m1><FONT color=#0000ff>="</FONT></SPAN><B><FONT color=#000000>Lancia UserForm</FONT></B><SPAN class=m1><FONT color=#0000ff>"</FONT></SPAN><SPAN class=t1><FONT color=#990000> label</FONT></SPAN><SPAN class=m1><FONT color=#0000ff>="</FONT></SPAN><B><FONT color=#000000>Lancia UserForm</FONT></B><SPAN class=m1><FONT color=#0000ff>"<BR><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></FONT></SPAN><SPAN class=t1><FONT color=#990000><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>onAction</FONT></SPAN><SPAN class=m1><FONT color=#0000ff>="</FONT></SPAN><B><FONT color=#000000>Foglio1.LanciaUserForm</FONT></B><SPAN class=m1><FONT color=#0000ff>" /&gt;</FONT></SPAN><FONT color=#000000> <o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><FONT color=#0000ff><SPAN class=m1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN></SPAN><SPAN class=m1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US>&lt;</SPAN></SPAN></FONT><FONT color=#990000><SPAN class=t1><SPAN style="mso-ansi-language: EN-US" lang=EN-US><FONT size=3 face=Calibri>/</FONT></SPAN></SPAN><SPAN class=t1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US>group</SPAN></SPAN></FONT><FONT color=#0000ff><SPAN class=m1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US>&gt;</SPAN></SPAN><SPAN class=m1><SPAN style="mso-ansi-language: EN-US" lang=EN-US><o:p></o:p></SPAN></SPAN></FONT></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><FONT color=#0000ff><SPAN class=m1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN></SPAN><SPAN class=m1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US></< SPAN></SPAN></FONT><SPAN class=t1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#990000>tab</FONT></SPAN></SPAN><FONT color=#0000ff><SPAN class=m1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US>&gt;</SPAN></SPAN><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><o:p></o:p></SPAN></FONT></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><FONT color=#0000ff><SPAN class=m1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN></SPAN><SPAN class=m1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US></< SPAN></SPAN></FONT><SPAN class=t1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#990000>tabs</FONT></SPAN></SPAN><FONT color=#0000ff><SPAN class=m1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US>&gt;</SPAN></SPAN><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><o:p></o:p></SPAN></FONT></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><FONT color=#0000ff><SPAN class=m1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN></SPAN></SPAN><SPAN class=m1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US></< SPAN></SPAN></FONT><SPAN class=t1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#990000>ribbon</FONT></SPAN></SPAN><FONT color=#0000ff><SPAN class=m1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US>&gt;</SPAN></SPAN><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><o:p></o:p></SPAN></FONT></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN class=m1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#0000ff></< FONT></SPAN></SPAN><SPAN class=t1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#990000>customUI</FONT></SPAN></SPAN><FONT color=#0000ff><SPAN class=m1><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US>&gt;</SPAN></SPAN><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><o:p></o:p></SPAN></FONT></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><SPAN style="mso-ansi-language: EN-US" lang=EN-US><o:p><FONT color=#000000 size=3 face=Calibri>&nbsp;</FONT></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT color=#000000 size=3 face=Calibri>Si tratta per l&#8217;appunto di un archivio in format XML che pu&#242; essere pazientemente creato a mano persino col Notepad o, meglio, con appositi Editor (potente, dicono, quello a corredo di Visual Studio 2005/2008).</FONT></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT color=#000000 size=3 face=Calibri>L&#8217;esempietto sopra crea una sola tab contenente due soli pulsanti <B style="mso-bidi-font-weight: normal">Button1</B> e <B style="mso-bidi-font-weight: normal">Button2 </B>cui vengono associate, con <B style="mso-bidi-font-weight: normal"><I style="mso-bidi-font-style: normal">onAction</I></B>, due certe routine VBA. Questa potrebbe essere la via per ottenere l&#8217;obiettivo appena sopra enunciato. Qualcuno ha voglia di percorrerla? Auguri e si faccia vivo se ha successo, mentre io dubito quin...</FONT></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT color=#000000 size=3 face=Calibri>Infine riporto le macro suggerite dal sullodato Giorgio. In sostanza la sua soluzione, finalizzata alla creazione di un modello applicativo Excel, consiste nelle mosse seguenti:</FONT></P>
<OL style="MARGIN-TOP: 0cm" type=1>
<LI style="MARGIN: 0cm 0cm 10pt; mso-list: l0 level1 lfo2" class=MsoNormal><FONT color=#000000 size=3 face=Calibri>annullare pro tempore il dannato Ribbon (e, inoltre, occultare tab dei fogli, barre di stato e delle applicazioni);</FONT> 
<LI style="MARGIN: 0cm 0cm 10pt; mso-list: l0 level1 lfo2" class=MsoNormal><FONT color=#000000 size=3 face=Calibri>inserire in alto nel modello una sfilza di iconcine cui sono associate le sub cui l&#8217;utente &#232; &#8220;costretto&#8221; a utilizzare;</FONT> 
<LI style="MARGIN: 0cm 0cm 10pt; mso-list: l0 level1 lfo2" class=MsoNormal><FONT color=#000000 size=3 face=Calibri>Ripristinare il Ribbon alla chiusura del modello.</FONT></LI></OL>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT color=#000000 size=3 face=Calibri>Inoltre le macro sono previste sia per Excel 2007 che per le precedenti versioni 97-2003 (nel qual caso ovviamente il Ribbon non viene trattato ma sono nascoste le vecchia barre strumenti).</FONT></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT color=#000000 size=3 face=Calibri>Ma ecco, senza troppi commenti il codice proposto. Dovrebbe essere auto esplicativo, almeno per chi mastica l&#8217;ABC del VBA, comunque prometto che appena ho tempo pubblicher&#242; l&#8217;intero modellino.</FONT></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><FONT color=#000000>Sub AUTO_OPEN()<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>ViaRibbon<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#000000>End Sub<o:p></o:p></FONT></SPAN></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><SPAN style="mso-ansi-language: EN-US" lang=EN-US><o:p><FONT color=#000000 size=3 face=Calibri>&nbsp;</FONT></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><FONT color=#000000>Sub Auto_Close()<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>RipristinaRibbon<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><FONT color=#000000>End Sub<o:p></o:p></FONT></SPAN></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><SPAN style="mso-ansi-language: EN-US" lang=EN-US><o:p><FONT color=#000000 size=3 face=Calibri>&nbsp;</FONT></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><FONT color=#000000>Private Sub Workbook_Activate()<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>ViaRibbon<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><FONT color=#000000>End Sub<o:p></o:p></FONT></SPAN></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><SPAN style="mso-ansi-language: EN-US" lang=EN-US><o:p><FONT color=#000000 size=3 face=Calibri>&nbsp;</FONT></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><FONT color=#000000>Private Sub Workbook_Deactivate()<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><FONT color=#000000>RipristinaRibbon<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><FONT color=#000000>End Sub<o:p></o:p></FONT></SPAN></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><SPAN style="mso-ansi-language: EN-US" lang=EN-US><o:p><FONT color=#000000 size=3 face=Calibri>&nbsp;</FONT></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><FONT color=#000000>Sub </FONT><B style="mso-bidi-font-weight: normal"><SPAN style="COLOR: red">Emergenza</SPAN></B><FONT color=#000000>()</FONT><SPAN style="COLOR: #00b050">'Ctrl+a</SPAN><o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>RipristinaRibbon<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><FONT color=#000000>End Sub<o:p></o:p></FONT></SPAN></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><SPAN style="mso-ansi-language: EN-US" lang=EN-US><o:p><FONT color=#000000 size=3 face=Calibri>&nbsp;</FONT></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><FONT color=#000000>Sub ViaRibbon()<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>If Val(Application.Version) &lt; 12 Then<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes"><FONT color=#000000>&nbsp;&nbsp;&nbsp; </FONT></SPAN><SPAN style="COLOR: #00b050">'Excel 97-2003<o:p></o:p></SPAN></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>Dim I As Integer<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>Set Barre = Application.CommandBars<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>For I = 1 To Application.CommandBars.Count<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;</SPAN>Barre(I).Enabled = False<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>Next I<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>Else<o:p></o:p></FONT></SPAN></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN></FONT><SPAN style="COLOR: #00b050">'Excel 2007<o:p></o:p></SPAN></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",False)"<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><FONT color=#000000><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN></SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt">End If<o:p></o:p></SPAN></FONT></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><o:p><FONT color=#000000>&nbsp;</FONT></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>ActiveWindow.DisplayWorkbookTabs = False </FONT><SPAN style="COLOR: #00b050">'(fogli)</SPAN><o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>With Application<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>.DisplayFormulaBar = False </FONT><SPAN style="COLOR: #00b050">'barra della formula</SPAN><o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>.DisplayStatusBar = False </FONT><SPAN style="COLOR: #00b050">'barra di stato</SPAN><o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;</SPAN>.ShowWindowsInTaskbar = True </FONT><SPAN style="COLOR: #00b050">'barra delle applicazioni di Windows</SPAN><o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>End With<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><FONT color=#000000>End Sub<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><o:p><FONT color=#000000>&nbsp;</FONT></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#000000>Sub RipristinaRibbon()<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>If Val(Application.Version) &lt; 12 Then<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN></FONT><SPAN style="COLOR: #00b050">'Excel 97-2003<o:p></o:p></SPAN></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>Dim I As Integer<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>Set Barre = Application.CommandBars<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>For I = 1 To Application.CommandBars.Count<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>Barre(I).Enabled = True<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>Next I<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>Else<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN></FONT><SPAN style="COLOR: #00b050">'Excel 2007<o:p></o:p></SPAN></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",True)"<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><FONT color=#000000><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN></SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt">End If<o:p></o:p></SPAN></FONT></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><o:p><FONT color=#000000>&nbsp;</FONT></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US"><SPAN style="mso-spacerun: yes"><FONT color=#000000>&nbsp;</FONT></SPAN><SPAN lang=EN-US><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>ActiveWindow.DisplayWorkbookTabs = True </FONT><SPAN style="COLOR: #00b050">'(fogli)</SPAN><o:p></o:p></SPAN></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><FONT color=#000000><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN></SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt">With Application<o:p></o:p></SPAN></FONT></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>.DisplayFormulaBar = True </FONT><SPAN style="COLOR: #00b050">'barra della formula</SPAN><o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>.DisplayStatusBar = True </FONT><SPAN style="COLOR: #00b050">'barra di stato</SPAN><o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>.ShowWindowsInTaskbar = True </FONT><SPAN style="COLOR: #00b050">'barra delle applicazioni di Windows</SPAN><o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><FONT color=#000000><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>End With<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><FONT color=#000000>End Sub</FONT></SPAN></P><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><FONT color=#000000>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><o:p>&nbsp;</o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT size=3 face=Calibri>Infine riporto, con scarni commenti, il codice essenziale di un modellino didattico volto a Creare/Eliminare una generica barra menu personale di tipo temporaneo. Si deve pensare a due pulsanti, etichettati con <B style="mso-bidi-font-weight: normal">Crea barra menu personale </B>e, rispettivamente, <B style="mso-bidi-font-weight: normal">Elimina barra menu personale </B>cui ho aggiunto un terzo pulsante <B style="mso-bidi-font-weight: normal">Nascondi/Ripristina il Ribbon</B>.</FONT></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US>Public SwMiaBellaBarra As Boolean <SPAN style="COLOR: #00b050">' Switch a livello modulo<o:p></o:p></SPAN></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US>Public CelaSvela As Boolean <SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="COLOR: #00b050">' Switch a livello modulo<o:p></o:p></SPAN></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><o:p>&nbsp;</o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US>Sub CelaSvelaRibbon()<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>If Not CelaSvela Then<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",False)"<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>Else<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",True)"<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>End If<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>CelaSvela = Not CelaSvela<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US>End Sub<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><o:p>&nbsp;</o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #00b050; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt">' Sub base per creare una barra temporanea personale<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt">Sub CreaMenu(PBarra, VettMenu) <SPAN style="COLOR: #00b050">' VettMenu = vettore dei menu</SPAN><o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN></SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US>Dim i As Integer<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>Set Bar = CommandBars.Add(Name:=PBarra, temporary:=True)<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>Bar.Visible = True<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>For i = 0 To UBound(VettMenu)<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Bar.Controls.Add Type:=msoControlPopup<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>With Bar.Controls(i + 1)<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>.Caption = VettMenu(i)<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>End With<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>Next<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt">End Sub<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><o:p>&nbsp;</o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #00b050; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt">' Sub per creare una barra personale, con menu, voci e macro &#8220;On Action&#8221;</SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt">Sub CreaMenuSint(PBarra, VettMenu, VettVettVoci, VettVettMacro)<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN></SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US>Dim i As Integer, j As Integer<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>Set Bar = CommandBars.Add(Name:=PBarra, temporary:=True)<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>Bar.Visible = True<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>For i = 0 To UBound(VettMenu)<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Bar.Controls.Add Type:=msoControlPopup<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>With Bar.Controls(i + 1)<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>.Caption = VettMenu(i)<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>End With<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>Next<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>For i = 0 To UBound(VettVettVoci)<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>With CommandBars(PBarra).Controls(i + 1)<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>For j = 0 To UBound(VettVettVoci(i))<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>With .Controls<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>.Add<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>.Item(j + 1).Caption = VettVettVoci(i)(j)<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>.Item(j + 1).OnAction = VettVettMacro(i)(j)<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>End With<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>Next<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>End With<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>Next<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt">End Sub<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><o:p>&nbsp;</o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #00b050; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt">' QUESTA infine &#232; la macro del pulsante <B style="mso-bidi-font-weight: normal">Crea barra menu personale</B><o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt">Sub provaCreaMenuSint()<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>If SwMiaBellaBarra Then<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>MsgBox "La barra c'&#232; gi&#224;", vbExclamation<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>Exit Sub<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>End If<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>Pbar = "Mia bella barra menu"<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>Vmenu = Array("Primo menu", "Secondo menu", _<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;</SPAN>"Terzo menu", "Quarto menu", "Quinto menu")<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>VVVoci = Array(Array("Voce 1", "Voce 2", "Voce 3"), _<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Array("Voce 1", "Voce 2"), _<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Array("Voce 1", "Voce 2", "Voce 3", "Voce 4"), _<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Array("Voce 1", "Voce 2"), _<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Array("Voce 1", "Voce 2", "Voce 3"))<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN></SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US>VVMacro = Array(Array("Miamacro1_1", "Miamacro1_2", "Miamacro1_3"), _<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Array("Miamacro2_1", "Miamacro2_2"), _<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Array("Miamacro3_1", "Miamacro3_2", "Miamacro3_3", "Miamacro3_4"), _<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Array("Miamacro4_1", "Miamacro4_2"), _<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Array("Miamacro5_1", "Miamacro5_2", "Miamacro5_3"))<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><o:p>&nbsp;</o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN></SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt">CreaMenuSint Pbar, Vmenu, VVVoci, VVMacro<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>SwMiaBellaBarra = True<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt">End Sub<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><o:p>&nbsp;</o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #00b050; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt">' Macro del pulsante <B style="mso-bidi-font-weight: normal">Elimina barra menu personale</B></SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt">Sub EliminaMiaBellaBarra()<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>If SwMiaBellaBarra Then<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>CommandBars("Mia bella barra menu").Delete<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN></SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US>SwMiaBellaBarra = False<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>End If<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US>End Sub<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><o:p>&nbsp;</o:p></SPAN></P>
<H2 style="MARGIN: 12pt 0cm 3pt"><EM><FONT face=Cambria>Ribbon vs. Barre personali: un bel dilemma&#8230;</FONT></EM></H2>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal align=justify><FONT size=3 face=Calibri>Come s&#8217;&#232; visto il Ribbon si presenta troppo barocco e invasivo agli occhi di chi progetta applicativi Excel pi&#249; o meno chiusi per l&#8217;utente finale &#8211; al punto di fargli adottare la soluzione con pulsanti e/o icone che richiamano macro, previa scomparsa della vista del Ribbon grazie all&#8217;istruzione segreta qui illustrata.</FONT></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal align=justify><FONT size=3 face=Calibri>Per restare al confronto fra il nuovo e il vecchio mondo, ossia Ribbon rispetto alle classiche barre personalizzate, i pro e i contro sono diversi (tanto per cambiare). Mi limito a considerazioni essenziali:</FONT></P>
<UL style="MARGIN-TOP: 0cm" type=disc>
<LI style="MARGIN: 0cm 0cm 10pt; mso-list: l0 level1 lfo1" class=MsoNormal><FONT size=3 face=Calibri>In entrambi i casi non si scherza quanto a complicanze (e conseguenti incubi sintattici);</FONT> 
<LI style="MARGIN: 0cm 0cm 10pt; mso-list: l0 level1 lfo1" class=MsoNormal><FONT size=3 face=Calibri>Il Ribbon consente risultati ergonomici pi&#249; brillanti<SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Calibri','sans-serif'; FONT-SIZE: 11pt; mso-ansi-language: IT; mso-bidi-font-family: 'Times New Roman'; mso-fareast-font-family: Calibri; mso-fareast-language: EN-US; mso-bidi-language: AR-SA">, n&#233; va trascurata la possibilit&#224; di modificarlo anche radicalmente, bench&#233;&nbsp; con procedimenti</SPAN>&nbsp;macchinosi&nbsp;che &#232; facile scordare;</FONT> 
<LI style="MARGIN: 0cm 0cm 10pt; mso-list: l0 level1 lfo1" class=MsoNormal><FONT size=3 face=Calibri>Essendo <I style="mso-bidi-font-style: normal">esterno</I> al modello ha l&#8217;inconveniente che ci obbliga a crearlo PRIMA, inoltre sembra proprio che non ci sia poi verso di modificarlo dinamicamente, <U>tramite codice VBA&nbsp;</U>(come avviene con le classiche menu bar); anche l&#8217;obbligo di definire a priori macro <I style="mso-bidi-font-style: normal">On Action </I>&#232; un fattore di ambiguit&#224;, se si riflette.</FONT></LI></UL>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT size=3 face=Calibri>L&#8217;ultima cosa, tra l&#8217;altro, veicola confusione su come &#8220;arruolare&#8221; un Ribbon personale e su come ripristinare il Ribbon standard. Una cosa che si dimentica regolarmente, se non si progettano Ribbon mattino e sera. </FONT></P><o:p></o:p></FONT></SPAN>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><o:p><FONT color=#000000>&nbsp;</FONT></o:p></SPAN></FONT>?&gt;</EM></SPAN></P>
<H2></H2></FONT></SPAN></SPAN></BLOGHELPER>?&gt;</EM></SPAN> 
<H2></H2></FONT></BLOGHELPER>?&gt;</EM></SPAN> 
<H2></H2></FONT></BLOGHELPER>?&gt;</EM></SPAN> 
<H2></H2></FONT></BLOGHELPER>?&gt;</EM></SPAN>
<H2></H2></FONT></bloghelper>?></em></span></h2></font><img src ="http://blog.shareoffice.it/giannigiaccaglini/aggbug/10229.aspx" width = "1" height = "1" /></body></item><item><dc:creator>Gianni Giaccaglini</dc:creator><title>Un'ambiguità semantica (apparente) del ciclo For Each</title><link>http://blog.shareoffice.it/giannigiaccaglini/archive/2009/08/08/10227.aspx</link><pubDate>Sat, 08 Aug 2009 11:41:00 GMT</pubDate><guid>http://blog.shareoffice.it/giannigiaccaglini/archive/2009/08/08/10227.aspx</guid><wfw:comment>http://blog.shareoffice.it/giannigiaccaglini/comments/10227.aspx</wfw:comment><comments>http://blog.shareoffice.it/giannigiaccaglini/archive/2009/08/08/10227.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blog.shareoffice.it/giannigiaccaglini/comments/commentRss/10227.aspx</wfw:commentRss><trackback:ping>http://blog.shareoffice.it/giannigiaccaglini/services/trackbacks/10227.aspx</trackback:ping><description>&lt;h2 style="MARGIN: 10pt 0cm 6pt"&gt;&lt;font color="#4f81bd" size="4" face="Cambria"&gt;Ambiguità sematica del ciclo For Each?&lt;/font&gt;&lt;/h2&gt;
&lt;p style="MARGIN: 0cm 0cm 6pt" class="MsoNormal"&gt;&lt;font face="Calibri"&gt;Anche questa è una divagazione di mezza estate. Riporto quasi pari pari il carteggio fra me e Francesco Balena.&lt;/font&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0cm 0cm 6pt" class="MsoNormal"&gt;&lt;font face="Calibri"&gt;Una cosuccia strana non scritta da nessuna parte. Il ciclo &lt;b style="mso-bidi-font-weight: normal"&gt;&lt;i style="mso-bidi-font-style: normal"&gt;For Each... Next&lt;/i&gt;&lt;/b&gt; si direbbe che funzioni solo IN LETTURA, come nello snippet seguente:&lt;/font&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0cm 0cm 0pt" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang="EN-US"&gt;Sub&lt;/span&gt;&lt;span style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang="EN-US"&gt; Main()&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;Dim&lt;/SPAN&gt; MiaLista &lt;SPAN style="COLOR: blue"&gt;As&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;New&lt;/SPAN&gt; List(&lt;SPAN style="COLOR: blue"&gt;Of&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Integer&lt;/SPAN&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;Dim&lt;/SPAN&gt; V() &lt;SPAN style="COLOR: blue"&gt;As&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Integer&lt;/SPAN&gt; = {1, 2, 3, 4, 5}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;For&lt;/SPAN&gt; i = 0 &lt;SPAN style="COLOR: blue"&gt;To&lt;/SPAN&gt; UBound(V)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;MiaLista.Add(V(i))&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;Next&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;For&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Each&lt;/SPAN&gt; el &lt;SPAN style="COLOR: blue"&gt;As&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Integer&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;In&lt;/SPAN&gt; MiaLista&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;el *= 2 &lt;SPAN style="COLOR: #00b050"&gt;' Accolta &amp;#8220;sulla carta&amp;#8221;, ma senza REALI conseguenze&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue" lang=EN-US&gt;Next&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;For&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Each&lt;/SPAN&gt; el &lt;SPAN style="COLOR: blue"&gt;As&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Integer&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;In&lt;/SPAN&gt; MiaLista&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;Console.WriteLine(el) &lt;SPAN style="COLOR: #00b050"&gt;' Continua a indicare 1, 2, 3, 4, 5&lt;/SPAN&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;Next&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Console.WriteLine()&lt;SPAN style="COLOR: blue"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;' Solo con gl&amp;#8217;indici le cose vanno bene:&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;For&lt;/SPAN&gt; i = 0 &lt;SPAN style="COLOR: blue"&gt;To&lt;/SPAN&gt; MiaLista.Count - 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;MiaLista(i) *= 2&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;Next&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;For&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Each&lt;/SPAN&gt; el &lt;SPAN style="COLOR: blue"&gt;As&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Integer&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;In&lt;/SPAN&gt; MiaLista&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;Console.WriteLine(el) &lt;SPAN style="COLOR: #00b050"&gt;' Indica 2, 4, 6, 8, 10&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;Next&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Console.ReadLine()&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;End&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt; &lt;SPAN style="COLOR: blue"&gt;Sub&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;La stessa delusione di aspettative (ingenue?) si ha con le matrici, del tipo Dim (V).&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Qualcuno avr&amp;#224; l&amp;#8217;onest&amp;#224; di ammettere che non lo sapeva? Forse e, magari, i pi&amp;#249; esperti (per lo pi&amp;#249; dimentichi di segnalare la cosa all&amp;#8217;inclita e al volgo) forniranno dotte delucidazioni.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Ma attenzione! Non &amp;#232; finit&lt;U&gt;a&lt;/U&gt;. Infatti con le Liste (e simili) di OGGETTI le cose funzionano come ci si attende:&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;Module&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt; Module1&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;Class&lt;/SPAN&gt; Persona&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;Public&lt;/SPAN&gt; Nome &lt;SPAN style="COLOR: blue"&gt;As&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;String&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;End&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Class&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;Sub&lt;/SPAN&gt; Main()&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;Dim&lt;/SPAN&gt; VettNomiPers() = {&lt;SPAN style="COLOR: #a31515"&gt;"Ciccio"&lt;/SPAN&gt;, &lt;SPAN style="COLOR: #a31515"&gt;"Maria"&lt;/SPAN&gt;, &lt;SPAN style="COLOR: #a31515"&gt;"Luigi"&lt;/SPAN&gt;, &lt;SPAN style="COLOR: #a31515"&gt;"Paola"&lt;/SPAN&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;Dim&lt;/SPAN&gt; Persone &lt;SPAN style="COLOR: blue"&gt;As&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;New&lt;/SPAN&gt; List(&lt;SPAN style="COLOR: blue"&gt;Of&lt;/SPAN&gt; Persona)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;Dim&lt;/SPAN&gt; i &lt;SPAN style="COLOR: blue"&gt;As&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Integer&lt;/SPAN&gt; = 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;Dim&lt;/SPAN&gt; UnaPersona &lt;SPAN style="COLOR: blue"&gt;As&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;New&lt;/SPAN&gt; Persona&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;' Carica VettNomiPers nella lista Persone&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;For&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Each&lt;/SPAN&gt; NomePers &lt;SPAN style="COLOR: blue"&gt;As&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;String&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;In&lt;/SPAN&gt; VettNomiPers&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;UnaPersona.Nome = NomePers&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;Persone.Add(UnaPersona)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;UnaPersona = &lt;SPAN style="COLOR: blue"&gt;New&lt;/SPAN&gt; Persona&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;Next&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;For&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Each&lt;/SPAN&gt; UnaPersona &lt;SPAN style="COLOR: blue"&gt;In&lt;/SPAN&gt; Persone&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;Console.WriteLine(UnaPersona.Nome) &lt;SPAN style="COLOR: green"&gt;' =&amp;gt; "Ciccio", "Maria" ecc.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;UnaPersona.Nome = &lt;SPAN style="COLOR: #a31515"&gt;"Ciao"&lt;/SPAN&gt; &lt;SPAN style="COLOR: green"&gt;' =&amp;gt; "Ciao"&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;Console.WriteLine(UnaPersona.Nome)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;Next&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;Console.WriteLine()&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;Console.WriteLine(&lt;SPAN style="COLOR: #a31515"&gt;"LISTA MODIFICATA:"&lt;/SPAN&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;For&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Each&lt;/SPAN&gt; UnaPersona &lt;SPAN style="COLOR: blue"&gt;In&lt;/SPAN&gt; Persone&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;Console.WriteLine(Persone(i).Nome) &lt;SPAN style="COLOR: green"&gt;' =&amp;gt; Tutti Ciao&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;Next&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;Console.ReadLine()&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;End&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Sub&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;End&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt; &lt;SPAN style="COLOR: blue"&gt;Module&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;SPAN style="mso-ansi-language: EN-US" lang=EN-US&gt;&lt;o:p&gt;&lt;FONT face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;NOTA &amp;#8211; Funzionamento OK anche con ciclo finale indicizzato (ovvio) e con modifiche apportate a un eventuale campo numerico.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Come utenteilmente segnalerei la presenza di un problema semantico, con l&amp;#8217;aggravante della contraddizione indicata nell&amp;#8217;ultimo esempietto.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;SPAN style="mso-ansi-language: EN-US" lang=EN-US&gt;&lt;FONT face=Calibri&gt;Do not forget, anyway.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /&gt;&lt;st1:PersonName w:st="on" ProductID="LA (GIUSTA"&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'"&gt;LA (GIUSTA&lt;/SPAN&gt;&lt;/st1:PersonName&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'"&gt;) REPLICA DI &lt;st1:PersonName w:st="on" ProductID="FRANCESCO BALENA"&gt;FRANCESCO BALENA&lt;/st1:PersonName&gt;:&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;SPAN style="COLOR: #1f497d"&gt;&lt;FONT face=Calibri&gt;Mi dispiace deluderti, ma questa feature &amp;#232; ben documentata. Basta andare a leggere il manuale ufficiale del linguaggio:&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;SPAN style="COLOR: #1f497d"&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/5ebk1751.aspx"&gt;&lt;FONT color=#800080 face=Calibri&gt;http://msdn.microsoft.com/en-us/library/5ebk1751.aspx&lt;/FONT&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;SPAN class=label&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; COLOR: black; FONT-SIZE: 8pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;STRONG&gt;Modifying Collection Elements.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; COLOR: black; FONT-SIZE: 8pt; mso-ansi-language: EN-US" lang=EN-US&gt; The &lt;A href="http://msdn.microsoft.com/en-us/library/system.collections.ienumerator.current.aspx"&gt;Current&lt;/A&gt; property of the enumerator object is &lt;A href="http://msdn.microsoft.com/en-us/library/z2b2c2ka.aspx"&gt;ReadOnly (Visual Basic)&lt;/A&gt;, and it returns a local copy of each collection element. &lt;SPAN style="BACKGROUND: yellow; mso-highlight: yellow"&gt;This means that you cannot modify the elements themselves in a &lt;SPAN class=input1&gt;&lt;STRONG&gt;For Each&lt;/STRONG&gt;&lt;/SPAN&gt;...&lt;SPAN class=input1&gt;&lt;STRONG&gt;Next&lt;/STRONG&gt;&lt;/SPAN&gt; loop&lt;/SPAN&gt;. Any modification you make affects only the local copy from &lt;A href="http://msdn.microsoft.com/en-us/library/system.collections.ienumerator.current.aspx"&gt;Current&lt;/A&gt; and is not reflected back into the underlying collection. &lt;SPAN style="BACKGROUND: silver; mso-highlight: silver"&gt;However, if an element is a reference type, you can modify the members of the instance to which it points&lt;/SPAN&gt;. &lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; COLOR: black; FONT-SIZE: 8pt"&gt;The following example illustrates this.&lt;/SPAN&gt;&lt;SPAN style="COLOR: #1f497d"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;SPAN style="COLOR: #1f497d"&gt;&lt;FONT face=Calibri&gt;Il fatto che &amp;#8220;sembri&amp;#8221; funzionare con gli oggetti &amp;#232; una pura illusione, derivante probabilmente da un equivoco abbastanza comune tra i programmatori. Nel tuo esempio tu non modifichi la variabile &amp;#8220;el&amp;#8221; ma modifichi l&amp;#8217;N-esimo elemento della lista a cui &amp;#8220;el&amp;#8221; punta. Non &amp;#232; un dettaglio da poco, anzi fa tutta la differenza. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;SPAN style="COLOR: #1f497d"&gt;&lt;FONT face=Calibri&gt;Volendo fare una analogia, &amp;#8220;el&amp;#8221; &amp;#232; l&amp;#8217;indirizzo fisico di un negozio con vetrina e ingresso, che oggi contiene un fruttivendolo. &amp;#8220;el&amp;#8221; &amp;#232; a sola lettura e infatti il numero civico di quella vetrina non cambier&amp;#224; mai, ma il contenuto di quel negozio pu&amp;#242; liberamente cambiare ed ospitare ad esempio una farmacia. Non a caso, si dice che una variabile &amp;#8220;punta&amp;#8221; a qualcosa, non che &amp;#8220;contiene&amp;#8221; qualcosa.&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;SPAN style="COLOR: #1f497d"&gt;&lt;FONT color=#000000 face=Calibri&gt;[ Per la cronaca, resta il fatto che in quasi nessun altro posto ho trovato queste precisazioni, comunque da NON obliare, anzi il pi&amp;#249; delle volte si lascia credere che &lt;EM&gt;&lt;STRONG&gt;For Each&lt;/STRONG&gt;&lt;/EM&gt; e &lt;STRONG&gt;&lt;EM&gt;For i = 0 To &lt;/EM&gt;&lt;/STRONG&gt;siano equivalenti... Beh &lt;U&gt;dipende&lt;/U&gt;... ]&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/bloghelper&gt;?&gt;&lt;/span&gt;&lt;/p&gt;&lt;img src ="http://blog.shareoffice.it/giannigiaccaglini/aggbug/10227.aspx" width = "1" height = "1" /&gt;</description><body xmlns="http://www.w3.org/1999/xhtml"><h2 style="MARGIN: 10pt 0cm 6pt"><font color="#4f81bd" size="4" face="Cambria">Ambiguità sematica del ciclo For Each?</font></h2>
<p style="MARGIN: 0cm 0cm 6pt" class="MsoNormal"><font face="Calibri">Anche questa è una divagazione di mezza estate. Riporto quasi pari pari il carteggio fra me e Francesco Balena.</font></p>
<p style="MARGIN: 0cm 0cm 6pt" class="MsoNormal"><font face="Calibri">Una cosuccia strana non scritta da nessuna parte. Il ciclo <b style="mso-bidi-font-weight: normal"><i style="mso-bidi-font-style: normal">For Each... Next</i></b> si direbbe che funzioni solo IN LETTURA, come nello snippet seguente:</font></p>
<p style="MARGIN: 0cm 0cm 0pt" class="MsoNormal"><span style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang="EN-US">Sub</span><span style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang="EN-US"> Main()<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="COLOR: blue">Dim</SPAN> MiaLista <SPAN style="COLOR: blue">As</SPAN> <SPAN style="COLOR: blue">New</SPAN> List(<SPAN style="COLOR: blue">Of</SPAN> <SPAN style="COLOR: blue">Integer</SPAN>)<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="COLOR: blue">Dim</SPAN> V() <SPAN style="COLOR: blue">As</SPAN> <SPAN style="COLOR: blue">Integer</SPAN> = {1, 2, 3, 4, 5}<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="COLOR: blue">For</SPAN> i = 0 <SPAN style="COLOR: blue">To</SPAN> UBound(V)<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>MiaLista.Add(V(i))<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="COLOR: blue">Next<o:p></o:p></SPAN></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="COLOR: blue">For</SPAN> <SPAN style="COLOR: blue">Each</SPAN> el <SPAN style="COLOR: blue">As</SPAN> <SPAN style="COLOR: blue">Integer</SPAN> <SPAN style="COLOR: blue">In</SPAN> MiaLista<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>el *= 2 <SPAN style="COLOR: #00b050">' Accolta &#8220;sulla carta&#8221;, ma senza REALI conseguenze</SPAN><o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US"><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="COLOR: blue" lang=EN-US>Next<o:p></o:p></SPAN></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="COLOR: blue">For</SPAN> <SPAN style="COLOR: blue">Each</SPAN> el <SPAN style="COLOR: blue">As</SPAN> <SPAN style="COLOR: blue">Integer</SPAN> <SPAN style="COLOR: blue">In</SPAN> MiaLista<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>Console.WriteLine(el) <SPAN style="COLOR: #00b050">' Continua a indicare 1, 2, 3, 4, 5</SPAN> <o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="COLOR: blue">Next<o:p></o:p></SPAN></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>Console.WriteLine()<SPAN style="COLOR: blue"><o:p></o:p></SPAN></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="COLOR: blue">' Solo con gl&#8217;indici le cose vanno bene:<o:p></o:p></SPAN></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="COLOR: blue">For</SPAN> i = 0 <SPAN style="COLOR: blue">To</SPAN> MiaLista.Count - 1<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>MiaLista(i) *= 2<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="COLOR: blue">Next<o:p></o:p></SPAN></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="COLOR: blue">For</SPAN> <SPAN style="COLOR: blue">Each</SPAN> el <SPAN style="COLOR: blue">As</SPAN> <SPAN style="COLOR: blue">Integer</SPAN> <SPAN style="COLOR: blue">In</SPAN> MiaLista<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>Console.WriteLine(el) <SPAN style="COLOR: #00b050">' Indica 2, 4, 6, 8, 10</SPAN><o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="COLOR: blue">Next<o:p></o:p></SPAN></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>Console.ReadLine()<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt">End</SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"> <SPAN style="COLOR: blue">Sub<o:p></o:p></SPAN></SPAN></P>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt"><o:p>&nbsp;</o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><FONT face=Calibri>La stessa delusione di aspettative (ingenue?) si ha con le matrici, del tipo Dim (V).</FONT></P>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><FONT face=Calibri>Qualcuno avr&#224; l&#8217;onest&#224; di ammettere che non lo sapeva? Forse e, magari, i pi&#249; esperti (per lo pi&#249; dimentichi di segnalare la cosa all&#8217;inclita e al volgo) forniranno dotte delucidazioni.</FONT></P>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><FONT face=Calibri>Ma attenzione! Non &#232; finit<U>a</U>. Infatti con le Liste (e simili) di OGGETTI le cose funzionano come ci si attende:</FONT></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US>Module</SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US> Module1<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="COLOR: blue">Class</SPAN> Persona<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="COLOR: blue">Public</SPAN> Nome <SPAN style="COLOR: blue">As</SPAN> <SPAN style="COLOR: blue">String<o:p></o:p></SPAN></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="COLOR: blue">End</SPAN> <SPAN style="COLOR: blue">Class<o:p></o:p></SPAN></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><o:p>&nbsp;</o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="COLOR: blue">Sub</SPAN> Main()<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="COLOR: blue">Dim</SPAN> VettNomiPers() = {<SPAN style="COLOR: #a31515">"Ciccio"</SPAN>, <SPAN style="COLOR: #a31515">"Maria"</SPAN>, <SPAN style="COLOR: #a31515">"Luigi"</SPAN>, <SPAN style="COLOR: #a31515">"Paola"</SPAN>}<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="COLOR: blue">Dim</SPAN> Persone <SPAN style="COLOR: blue">As</SPAN> <SPAN style="COLOR: blue">New</SPAN> List(<SPAN style="COLOR: blue">Of</SPAN> Persona)<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="COLOR: blue">Dim</SPAN> i <SPAN style="COLOR: blue">As</SPAN> <SPAN style="COLOR: blue">Integer</SPAN> = 0<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="COLOR: blue">Dim</SPAN> UnaPersona <SPAN style="COLOR: blue">As</SPAN> <SPAN style="COLOR: blue">New</SPAN> Persona<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="COLOR: green">' Carica VettNomiPers nella lista Persone<o:p></o:p></SPAN></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="COLOR: blue">For</SPAN> <SPAN style="COLOR: blue">Each</SPAN> NomePers <SPAN style="COLOR: blue">As</SPAN> <SPAN style="COLOR: blue">String</SPAN> <SPAN style="COLOR: blue">In</SPAN> VettNomiPers<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>UnaPersona.Nome = NomePers<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>Persone.Add(UnaPersona)<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>UnaPersona = <SPAN style="COLOR: blue">New</SPAN> Persona<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="COLOR: blue">Next<o:p></o:p></SPAN></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="COLOR: blue">For</SPAN> <SPAN style="COLOR: blue">Each</SPAN> UnaPersona <SPAN style="COLOR: blue">In</SPAN> Persone<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>Console.WriteLine(UnaPersona.Nome) <SPAN style="COLOR: green">' =&gt; "Ciccio", "Maria" ecc.<o:p></o:p></SPAN></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>UnaPersona.Nome = <SPAN style="COLOR: #a31515">"Ciao"</SPAN> <SPAN style="COLOR: green">' =&gt; "Ciao"<o:p></o:p></SPAN></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>Console.WriteLine(UnaPersona.Nome)<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="COLOR: blue">Next<o:p></o:p></SPAN></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>Console.WriteLine()<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>Console.WriteLine(<SPAN style="COLOR: #a31515">"LISTA MODIFICATA:"</SPAN>)<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="COLOR: blue">For</SPAN> <SPAN style="COLOR: blue">Each</SPAN> UnaPersona <SPAN style="COLOR: blue">In</SPAN> Persone<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>Console.WriteLine(Persone(i).Nome) <SPAN style="COLOR: green">' =&gt; Tutti Ciao<o:p></o:p></SPAN></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN></SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;</SPAN></SPAN><SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US>Next<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>Console.ReadLine()<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="COLOR: blue">End</SPAN> <SPAN style="COLOR: blue">Sub<o:p></o:p></SPAN></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US>End</SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US> <SPAN style="COLOR: blue">Module</SPAN></SPAN><SPAN style="FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><SPAN style="mso-ansi-language: EN-US" lang=EN-US><o:p><FONT face=Calibri>&nbsp;</FONT></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><FONT face=Calibri>NOTA &#8211; Funzionamento OK anche con ciclo finale indicizzato (ovvio) e con modifiche apportate a un eventuale campo numerico.</FONT></P>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><FONT face=Calibri>Come utenteilmente segnalerei la presenza di un problema semantico, con l&#8217;aggravante della contraddizione indicata nell&#8217;ultimo esempietto.</FONT></P>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><SPAN style="mso-ansi-language: EN-US" lang=EN-US><FONT face=Calibri>Do not forget, anyway.<o:p></o:p></FONT></SPAN></P>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /><st1:PersonName w:st="on" ProductID="LA (GIUSTA"><SPAN style="FONT-FAMILY: 'Courier New'">LA (GIUSTA</SPAN></st1:PersonName><SPAN style="FONT-FAMILY: 'Courier New'">) REPLICA DI <st1:PersonName w:st="on" ProductID="FRANCESCO BALENA">FRANCESCO BALENA</st1:PersonName>:<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><SPAN style="COLOR: #1f497d"><FONT face=Calibri>Mi dispiace deluderti, ma questa feature &#232; ben documentata. Basta andare a leggere il manuale ufficiale del linguaggio:<o:p></o:p></FONT></SPAN></P>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><SPAN style="COLOR: #1f497d"><A href="http://msdn.microsoft.com/en-us/library/5ebk1751.aspx"><FONT color=#800080 face=Calibri>http://msdn.microsoft.com/en-us/library/5ebk1751.aspx</FONT></A><o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><SPAN class=label><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; COLOR: black; FONT-SIZE: 8pt; mso-ansi-language: EN-US" lang=EN-US><STRONG>Modifying Collection Elements.</STRONG></SPAN></SPAN><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; COLOR: black; FONT-SIZE: 8pt; mso-ansi-language: EN-US" lang=EN-US> The <A href="http://msdn.microsoft.com/en-us/library/system.collections.ienumerator.current.aspx">Current</A> property of the enumerator object is <A href="http://msdn.microsoft.com/en-us/library/z2b2c2ka.aspx">ReadOnly (Visual Basic)</A>, and it returns a local copy of each collection element. <SPAN style="BACKGROUND: yellow; mso-highlight: yellow">This means that you cannot modify the elements themselves in a <SPAN class=input1><STRONG>For Each</STRONG></SPAN>...<SPAN class=input1><STRONG>Next</STRONG></SPAN> loop</SPAN>. Any modification you make affects only the local copy from <A href="http://msdn.microsoft.com/en-us/library/system.collections.ienumerator.current.aspx">Current</A> and is not reflected back into the underlying collection. <SPAN style="BACKGROUND: silver; mso-highlight: silver">However, if an element is a reference type, you can modify the members of the instance to which it points</SPAN>. </SPAN><SPAN style="FONT-FAMILY: 'Verdana','sans-serif'; COLOR: black; FONT-SIZE: 8pt">The following example illustrates this.</SPAN><SPAN style="COLOR: #1f497d"><o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><SPAN style="COLOR: #1f497d"><FONT face=Calibri>Il fatto che &#8220;sembri&#8221; funzionare con gli oggetti &#232; una pura illusione, derivante probabilmente da un equivoco abbastanza comune tra i programmatori. Nel tuo esempio tu non modifichi la variabile &#8220;el&#8221; ma modifichi l&#8217;N-esimo elemento della lista a cui &#8220;el&#8221; punta. Non &#232; un dettaglio da poco, anzi fa tutta la differenza. <o:p></o:p></FONT></SPAN></P>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><SPAN style="COLOR: #1f497d"><FONT face=Calibri>Volendo fare una analogia, &#8220;el&#8221; &#232; l&#8217;indirizzo fisico di un negozio con vetrina e ingresso, che oggi contiene un fruttivendolo. &#8220;el&#8221; &#232; a sola lettura e infatti il numero civico di quella vetrina non cambier&#224; mai, ma il contenuto di quel negozio pu&#242; liberamente cambiare ed ospitare ad esempio una farmacia. Non a caso, si dice che una variabile &#8220;punta&#8221; a qualcosa, non che &#8220;contiene&#8221; qualcosa.</FONT></SPAN></P>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><SPAN style="COLOR: #1f497d"><FONT color=#000000 face=Calibri>[ Per la cronaca, resta il fatto che in quasi nessun altro posto ho trovato queste precisazioni, comunque da NON obliare, anzi il pi&#249; delle volte si lascia credere che <EM><STRONG>For Each</STRONG></EM> e <STRONG><EM>For i = 0 To </EM></STRONG>siano equivalenti... Beh <U>dipende</U>... ]</FONT></SPAN></P></bloghelper>?></span></p><img src ="http://blog.shareoffice.it/giannigiaccaglini/aggbug/10227.aspx" width = "1" height = "1" /></body></item><item><dc:creator>Gianni Giaccaglini</dc:creator><title>Funzioni VB6 obsolete in VB . NET (divagazioni estive)</title><link>http://blog.shareoffice.it/giannigiaccaglini/archive/2009/08/08/10226.aspx</link><pubDate>Sat, 08 Aug 2009 11:16:00 GMT</pubDate><guid>http://blog.shareoffice.it/giannigiaccaglini/archive/2009/08/08/10226.aspx</guid><wfw:comment>http://blog.shareoffice.it/giannigiaccaglini/comments/10226.aspx</wfw:comment><comments>http://blog.shareoffice.it/giannigiaccaglini/archive/2009/08/08/10226.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blog.shareoffice.it/giannigiaccaglini/comments/commentRss/10226.aspx</wfw:commentRss><trackback:ping>http://blog.shareoffice.it/giannigiaccaglini/services/trackbacks/10226.aspx</trackback:ping><description>&lt;h1 style="MARGIN: 12pt 0cm 3pt"&gt;&lt;font size="5" face="Cambria"&gt;Un paio di divagazioni estive&lt;/font&gt;&lt;/h1&gt;
&lt;p style="MARGIN: 0cm 0cm 6pt" class="MsoNormal"&gt;&lt;font face="Calibri"&gt;Svolte in contatto, a volte un po’ tempestoso ma sempre proficuo, con preclari esperti d’Informatica, come il ben noto &lt;?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /&gt;&lt;st1:PersonName w:st="on" ProductID="FRANCESCO BALENA"&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;Francesco Balena&lt;/B&gt;&lt;/st1:PersonName&gt;&lt;B style="mso-bidi-font-weight: normal"&gt; &lt;/B&gt;e il ben informato &lt;B style="mso-bidi-font-weight: normal"&gt;Diego Cattaruzza&lt;/B&gt;, solerte redattore capo dell&amp;#8217;ottimo sito Visual Basic Tips &amp;amp; Tricks (che mi ha onorato ospitando miei articoli).&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;La prima: obsolescenza delle vecchie funzioni VB6 (cum grano salis, anzi due)&lt;/B&gt;. Si riferisce a un vizietto abitudinario di cui, confesso, sono afflitto anch&amp;#8217;io come quelli che operano prevalentemente in ambito VBA, ergo VB6. Informo chi non lo sapesse che dal VB .NET in avanti le vecchie, care funzioni VB6 &amp;#8211; come &lt;B style="mso-bidi-font-weight: normal"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;Asc&lt;/I&gt;&lt;/B&gt;, &lt;B style="mso-bidi-font-weight: normal"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;Chr&lt;/I&gt; &lt;/B&gt;e le altre di trattamento stringhe, o l&amp;#8217;inattesa &lt;B style="mso-bidi-font-weight: normal"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;Ubound&lt;/I&gt;&lt;/B&gt; per il limite superiore di una matrice &amp;#8211; vanno considerate obsolete e &amp;#8220;moralmente&amp;#8221; da sostituire, ad esempio, con &lt;st1:PersonName w:st="on" ProductID="la propriet&amp;#224; Lenght. Esempio"&gt;&lt;st1:PersonName w:st="on" ProductID="la propriet&amp;#224; Lenght."&gt;la propriet&amp;#224; &lt;B style="mso-bidi-font-weight: normal"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;Lenght.&lt;/I&gt;&lt;/B&gt;&lt;/st1:PersonName&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;I style="mso-bidi-font-style: normal"&gt; &lt;/I&gt;&lt;/B&gt;Esempio&lt;/st1:PersonName&gt;:&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #00b050; FONT-SIZE: 9pt"&gt;' Vecchia versione:&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt"&gt;For i = 0 To Ubound(MiaMatr)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #00b050; FONT-SIZE: 9pt; mso-ansi-language: EN-US" lang=EN-US&gt;' Versione moderna&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #00b050; FONT-SIZE: 9pt; mso-ansi-language: EN-US" lang=EN-US&gt;F&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-ansi-language: EN-US" lang=EN-US&gt;or i = 0 To MiaMatr.Lenght - 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Per chi vuole aggiornarsi (cosa che ovviamente, con Office, riguarda i VSTO e non le normali macro VBA) indico un prezioso elenco stilato da Diego Cattaruzza:&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;FONT face=Calibri&gt;Tabella funzioni da VB6 a VB .NET&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;( su &lt;/FONT&gt;&lt;A href="http://www.visual-basic.it/areaarticoli.asp"&gt;&lt;FONT color=#800080 face=Calibri&gt;http://www.visual-basic.it/areaarticoli.asp&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri&gt; )&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Che dire? Diego predica bene, anzi ha ragione, salvo un&amp;#8217;osservazione e una strana eccezione:&lt;/FONT&gt;&lt;/P&gt;
&lt;UL style="MARGIN-TOP: 0cm" type=disc&gt;
&lt;LI style="MARGIN: 0cm 0cm 6pt; mso-list: l0 level1 lfo1" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;st1:PersonName w:st="on" ProductID="la libreria Visual Basic"&gt;&lt;st1:PersonName w:st="on" ProductID="la libreria Visual"&gt;La libreria Visual&lt;/st1:PersonName&gt; Basic&lt;/st1:PersonName&gt; (delle vecchie funzioni) non solo &amp;#232; tuttora supportata fino a VB 2010 p.v. , ma lo &amp;#232; per default (con &lt;st1:PersonName w:st="on" ProductID="FRANCESCO BALENA"&gt;Francesco Balena&lt;/st1:PersonName&gt; che sembra sostenere che funzioni antiche sono a volte pi&amp;#249; prestanti);&lt;/FONT&gt; 
&lt;LI style="MARGIN: 0cm 0cm 6pt; mso-list: l0 level1 lfo1" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;st1:PersonName w:st="on" ProductID="La funzione Mid"&gt;La funzione &lt;B style="mso-bidi-font-weight: normal"&gt;&lt;EM&gt;Mid&lt;/EM&gt;&lt;/B&gt;&lt;/st1:PersonName&gt;&lt;B style="mso-bidi-font-weight: normal"&gt; &lt;/B&gt;&amp;#232; scomparsa &lt;I style="mso-bidi-font-style: normal"&gt;in lettura &lt;/I&gt;ma continua a essere supportata &lt;U&gt;anche disabilitando &lt;st1:PersonName w:st="on" ProductID="la libreria Visual Basic"&gt;&lt;st1:PersonName w:st="on" ProductID="la libreria Visual"&gt;la libreria Visual&lt;/st1:PersonName&gt; Basic&lt;/st1:PersonName&gt; &lt;/U&gt;&lt;I style="mso-bidi-font-style: normal"&gt;in scrittura&lt;/I&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Esempi:&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;MioCar = Mid("Ambaraba", 5, 1) &lt;SPAN style="COLOR: #00b050"&gt;'Non pi&amp;#249; supportata&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;MiaStr = "Ambaraba"&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;Mid(MiaStr, 5, 1) = "*" &lt;SPAN style="COLOR: #0070c0"&gt;' SUPPORTATO! (MiaStr diventa "Amba*aba&amp;#8221;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #0070c0; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Nel corso dello scambio email un terzo guru di VB T&amp;amp;T sosteneva l&amp;#8217;obsolescenza anche di &lt;B style="mso-bidi-font-weight: normal"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;Redim&lt;/I&gt;&lt;/B&gt;. Creando, involontariamente credo, un po&amp;#8217; di confusione &lt;U&gt;in quanto tale parolina chiave non fa parte della libreria Visual Basic&lt;/U&gt; e, soprattutto, &amp;#232; viva e vegeta.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Per chiarire la vexata quaestio propongo la tabella seguente:&lt;/FONT&gt;&lt;/P&gt;
&lt;TABLE style="BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; BORDER-COLLAPSE: collapse; BORDER-TOP: medium none; BORDER-RIGHT: medium none; mso-border-alt: solid black .5pt; mso-padding-alt: 0cm 5.4pt 0cm 5.4pt; mso-yfti-tbllook: 1184; mso-border-themecolor: text1" class=MsoTableGrid border=1 cellSpacing=0 cellPadding=0&gt;
&lt;TBODY&gt;
&lt;TR style="mso-yfti-irow: 0; mso-yfti-firstrow: yes"&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; PADDING-BOTTOM: 0cm; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 118.8pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0cm; mso-border-alt: solid black .5pt; mso-border-themecolor: text1" vAlign=top width=158&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;FONT face=Calibri&gt;Vb6&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #d4d0c8; PADDING-BOTTOM: 0cm; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 134.7pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0cm; mso-border-alt: solid black .5pt; mso-border-left-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-left-themecolor: text1" vAlign=top width=180&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;FONT face=Calibri&gt;Vb .NET e succerss.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #d4d0c8; PADDING-BOTTOM: 0cm; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 148.8pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0cm; mso-border-alt: solid black .5pt; mso-border-left-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-left-themecolor: text1" vAlign=top width=198&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;FONT face=Calibri&gt;NOTE&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 1"&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; PADDING-BOTTOM: 0cm; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 118.8pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #d4d0c8; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0cm; mso-border-alt: solid black .5pt; mso-border-top-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-top-themecolor: text1" vAlign=top width=158&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt"&gt;Dim MiaMatr(5)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #d4d0c8; PADDING-BOTTOM: 0cm; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 134.7pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #d4d0c8; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0cm; mso-border-alt: solid black .5pt; mso-border-top-alt: solid black .5pt; mso-border-left-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-left-themecolor: text1; mso-border-top-themecolor: text1; mso-border-bottom-themecolor: text1; mso-border-right-themecolor: text1" vAlign=top width=180&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt"&gt;Dim MiaMatr(5)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #d4d0c8; PADDING-BOTTOM: 0cm; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 148.8pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #d4d0c8; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0cm; mso-border-alt: solid black .5pt; mso-border-top-alt: solid black .5pt; mso-border-left-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-left-themecolor: text1; mso-border-top-themecolor: text1; mso-border-bottom-themecolor: text1; mso-border-right-themecolor: text1" vAlign=top width=198&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Lecito in entrambi i mondi&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 2"&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; PADDING-BOTTOM: 0cm; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 118.8pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #d4d0c8; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0cm; mso-border-alt: solid black .5pt; mso-border-top-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-top-themecolor: text1" vAlign=top width=158&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt"&gt;Dim MiaMatr()&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #d4d0c8; PADDING-BOTTOM: 0cm; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 134.7pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #d4d0c8; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0cm; mso-border-alt: solid black .5pt; mso-border-top-alt: solid black .5pt; mso-border-left-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-left-themecolor: text1; mso-border-top-themecolor: text1; mso-border-bottom-themecolor: text1; mso-border-right-themecolor: text1" vAlign=top width=180&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt"&gt;Dim MiaMatr()&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #d4d0c8; PADDING-BOTTOM: 0cm; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 148.8pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #d4d0c8; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0cm; mso-border-alt: solid black .5pt; mso-border-top-alt: solid black .5pt; mso-border-left-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-left-themecolor: text1; mso-border-top-themecolor: text1; mso-border-bottom-themecolor: text1; mso-border-right-themecolor: text1" vAlign=top width=198&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Obbligatorio, solo in VB6, far seguire una &lt;I style="mso-bidi-font-style: normal"&gt;Redim &lt;o:p&gt;&lt;/o:p&gt;&lt;/I&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 3; mso-yfti-lastrow: yes"&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; PADDING-BOTTOM: 0cm; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 118.8pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #d4d0c8; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0cm; mso-border-alt: solid black .5pt; mso-border-top-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-top-themecolor: text1" vAlign=top width=158&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #d4d0c8; PADDING-BOTTOM: 0cm; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 134.7pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #d4d0c8; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0cm; mso-border-alt: solid black .5pt; mso-border-top-alt: solid black .5pt; mso-border-left-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-left-themecolor: text1; mso-border-top-themecolor: text1; mso-border-bottom-themecolor: text1; mso-border-right-themecolor: text1" vAlign=top width=180&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt"&gt;Dim N = 12&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt"&gt;Dim MiaMatr(N)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt"&gt;Dim MiaMatr(N * 2)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #d4d0c8; PADDING-BOTTOM: 0cm; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 148.8pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #d4d0c8; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0cm; mso-border-alt: solid black .5pt; mso-border-top-alt: solid black .5pt; mso-border-left-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-left-themecolor: text1; mso-border-top-themecolor: text1; mso-border-bottom-themecolor: text1; mso-border-right-themecolor: text1" vAlign=top width=198&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Espressioni Dim non lecite in VB6&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;La novit&amp;#224; espressa dalla seconda riga pu&amp;#242; indurre a pensare che &lt;I style="mso-bidi-font-style: normal"&gt;Redim &lt;/I&gt;nel nuovo mondo non serva pi&amp;#249;. Non &amp;#232; esatto, ha richiamato Francesco, con l&amp;#8217;esempio seguente:&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 8pt; mso-bidi-font-size: 10.0pt"&gt;Sub&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 8pt; mso-bidi-font-size: 10.0pt"&gt; ExpandArray(&lt;SPAN style="COLOR: blue"&gt;ByRef&lt;/SPAN&gt; arr() &lt;SPAN style="COLOR: blue"&gt;As&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Integer&lt;/SPAN&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 8pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&amp;nbsp; ReDim&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 8pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt; arr(arr.Length * 2 - 1)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 8pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;End&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 8pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt; &lt;SPAN style="COLOR: blue"&gt;Sub&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;In questo caso non si pu&amp;#242; sostituire Redim con Dim.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;A mia volta mi permetto due ulteriori indicazioni. La prima &amp;#232; un richiamo alle variabili definite a livello modulo (Sezione Dichiarazioni). La seconda &amp;#232; l&amp;#8217;ineludibile impiego di &lt;B style="mso-bidi-font-weight: normal"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;Redim Preserve &lt;/I&gt;&lt;/B&gt;in molte applicazioni dinamiche. L&amp;#8217;esempio seguente completa l&amp;#8217;osservazione di Francesco:&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;Module&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt; Module1&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue" lang=EN-US&gt;Sub&lt;/SPAN&gt;&lt;SPAN lang=EN-US&gt; ExpandArray(&lt;SPAN style="COLOR: blue"&gt;ByRef&lt;/SPAN&gt; Arr() &lt;SPAN style="COLOR: blue"&gt;As&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Integer&lt;/SPAN&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;Dim&lt;/SPAN&gt; Lung = Arr.Length&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;ReDim&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Preserve&lt;/SPAN&gt; arr(Lung * 2 - 1)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;For&lt;/SPAN&gt; i &lt;SPAN style="COLOR: blue"&gt;As&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Integer&lt;/SPAN&gt; = 0 &lt;SPAN style="COLOR: blue"&gt;To&lt;/SPAN&gt; UBound(arr)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;If&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt; i &amp;gt;= Lung &lt;SPAN style="COLOR: blue"&gt;Then&lt;/SPAN&gt; Arr(i) = i * i &lt;SPAN style="COLOR: #00b050"&gt;' Quadrati nelle celle aggiunte&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;' MessageBox.Show (Arr(i)) ' Servita per debug&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue" lang=EN-US&gt;Next&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;End&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Sub&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;Sub&lt;/SPAN&gt; Main()&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;Dim&lt;/SPAN&gt; MioArr(3) &lt;SPAN style="COLOR: blue"&gt;As&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Integer&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;For&lt;/SPAN&gt; i &lt;SPAN style="COLOR: blue"&gt;As&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Integer&lt;/SPAN&gt; = 0 &lt;SPAN style="COLOR: blue"&gt;To&lt;/SPAN&gt; UBound(MioArr)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;MioArr(i) = i &lt;SPAN style="COLOR: #00b050"&gt;' &amp;lt;= 0, 1, 2, 3&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;Next&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;ExpandArray(MioArr)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;For&lt;/SPAN&gt; i &lt;SPAN style="COLOR: blue"&gt;As&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Integer&lt;/SPAN&gt; = 0 &lt;SPAN style="COLOR: blue"&gt;To&lt;/SPAN&gt; UBound(MioArr)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;FONT color=#008000&gt;MessageBox.Show&lt;/FONT&gt;(MioArr(i)) &lt;SPAN style="COLOR: #00b050"&gt;' =&amp;gt; 0, 1, 2, 3, 16, 25, 36, 49&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;Next&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;End&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Sub&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;End &lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;Module&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal&gt;&lt;SPAN style="COLOR: #1f497d"&gt;&lt;o:p&gt;&lt;FONT face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BLOGHELPER&gt;?&amp;gt;&lt;/FONT&gt;
&lt;P&gt;&lt;/P&gt;&lt;/bloghelper&gt;?&gt;&lt;/font&gt;&lt;/p&gt;&lt;img src ="http://blog.shareoffice.it/giannigiaccaglini/aggbug/10226.aspx" width = "1" height = "1" /&gt;</description><body xmlns="http://www.w3.org/1999/xhtml"><h1 style="MARGIN: 12pt 0cm 3pt"><font size="5" face="Cambria">Un paio di divagazioni estive</font></h1>
<p style="MARGIN: 0cm 0cm 6pt" class="MsoNormal"><font face="Calibri">Svolte in contatto, a volte un po’ tempestoso ma sempre proficuo, con preclari esperti d’Informatica, come il ben noto <?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /><st1:PersonName w:st="on" ProductID="FRANCESCO BALENA"><B style="mso-bidi-font-weight: normal">Francesco Balena</B></st1:PersonName><B style="mso-bidi-font-weight: normal"> </B>e il ben informato <B style="mso-bidi-font-weight: normal">Diego Cattaruzza</B>, solerte redattore capo dell&#8217;ottimo sito Visual Basic Tips &amp; Tricks (che mi ha onorato ospitando miei articoli).</FONT></P>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><FONT face=Calibri><B style="mso-bidi-font-weight: normal">La prima: obsolescenza delle vecchie funzioni VB6 (cum grano salis, anzi due)</B>. Si riferisce a un vizietto abitudinario di cui, confesso, sono afflitto anch&#8217;io come quelli che operano prevalentemente in ambito VBA, ergo VB6. Informo chi non lo sapesse che dal VB .NET in avanti le vecchie, care funzioni VB6 &#8211; come <B style="mso-bidi-font-weight: normal"><I style="mso-bidi-font-style: normal">Asc</I></B>, <B style="mso-bidi-font-weight: normal"><I style="mso-bidi-font-style: normal">Chr</I> </B>e le altre di trattamento stringhe, o l&#8217;inattesa <B style="mso-bidi-font-weight: normal"><I style="mso-bidi-font-style: normal">Ubound</I></B> per il limite superiore di una matrice &#8211; vanno considerate obsolete e &#8220;moralmente&#8221; da sostituire, ad esempio, con <st1:PersonName w:st="on" ProductID="la propriet&#224; Lenght. Esempio"><st1:PersonName w:st="on" ProductID="la propriet&#224; Lenght.">la propriet&#224; <B style="mso-bidi-font-weight: normal"><I style="mso-bidi-font-style: normal">Lenght.</I></B></st1:PersonName><B style="mso-bidi-font-weight: normal"><I style="mso-bidi-font-style: normal"> </I></B>Esempio</st1:PersonName>:</FONT></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #00b050; FONT-SIZE: 9pt">' Vecchia versione:<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt">For i = 0 To Ubound(MiaMatr)<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt"><o:p>&nbsp;</o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #00b050; FONT-SIZE: 9pt; mso-ansi-language: EN-US" lang=EN-US>' Versione moderna<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #00b050; FONT-SIZE: 9pt; mso-ansi-language: EN-US" lang=EN-US>F</SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-ansi-language: EN-US" lang=EN-US>or i = 0 To MiaMatr.Lenght - 1<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-ansi-language: EN-US" lang=EN-US><o:p>&nbsp;</o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><FONT face=Calibri>Per chi vuole aggiornarsi (cosa che ovviamente, con Office, riguarda i VSTO e non le normali macro VBA) indico un prezioso elenco stilato da Diego Cattaruzza:</FONT></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><B style="mso-bidi-font-weight: normal"><FONT face=Calibri>Tabella funzioni da VB6 a VB .NET<o:p></o:p></FONT></B></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><FONT face=Calibri>( su </FONT><A href="http://www.visual-basic.it/areaarticoli.asp"><FONT color=#800080 face=Calibri>http://www.visual-basic.it/areaarticoli.asp</FONT></A><FONT face=Calibri> )</FONT></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><o:p><FONT face=Calibri>&nbsp;</FONT></o:p></P>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><FONT face=Calibri>Che dire? Diego predica bene, anzi ha ragione, salvo un&#8217;osservazione e una strana eccezione:</FONT></P>
<UL style="MARGIN-TOP: 0cm" type=disc>
<LI style="MARGIN: 0cm 0cm 6pt; mso-list: l0 level1 lfo1" class=MsoNormal><FONT face=Calibri><st1:PersonName w:st="on" ProductID="la libreria Visual Basic"><st1:PersonName w:st="on" ProductID="la libreria Visual">La libreria Visual</st1:PersonName> Basic</st1:PersonName> (delle vecchie funzioni) non solo &#232; tuttora supportata fino a VB 2010 p.v. , ma lo &#232; per default (con <st1:PersonName w:st="on" ProductID="FRANCESCO BALENA">Francesco Balena</st1:PersonName> che sembra sostenere che funzioni antiche sono a volte pi&#249; prestanti);</FONT> 
<LI style="MARGIN: 0cm 0cm 6pt; mso-list: l0 level1 lfo1" class=MsoNormal><FONT face=Calibri><st1:PersonName w:st="on" ProductID="La funzione Mid">La funzione <B style="mso-bidi-font-weight: normal"><EM>Mid</EM></B></st1:PersonName><B style="mso-bidi-font-weight: normal"> </B>&#232; scomparsa <I style="mso-bidi-font-style: normal">in lettura </I>ma continua a essere supportata <U>anche disabilitando <st1:PersonName w:st="on" ProductID="la libreria Visual Basic"><st1:PersonName w:st="on" ProductID="la libreria Visual">la libreria Visual</st1:PersonName> Basic</st1:PersonName> </U><I style="mso-bidi-font-style: normal">in scrittura</I></FONT></LI></UL>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><FONT face=Calibri>Esempi:</FONT></P>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt">MioCar = Mid("Ambaraba", 5, 1) <SPAN style="COLOR: #00b050">'Non pi&#249; supportata<o:p></o:p></SPAN></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US>MiaStr = "Ambaraba"<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US>Mid(MiaStr, 5, 1) = "*" <SPAN style="COLOR: #0070c0">' SUPPORTATO! (MiaStr diventa "Amba*aba&#8221;)<o:p></o:p></SPAN></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #0070c0; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><o:p>&nbsp;</o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><FONT face=Calibri>Nel corso dello scambio email un terzo guru di VB T&amp;T sosteneva l&#8217;obsolescenza anche di <B style="mso-bidi-font-weight: normal"><I style="mso-bidi-font-style: normal">Redim</I></B>. Creando, involontariamente credo, un po&#8217; di confusione <U>in quanto tale parolina chiave non fa parte della libreria Visual Basic</U> e, soprattutto, &#232; viva e vegeta.</FONT></P>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><FONT face=Calibri>Per chiarire la vexata quaestio propongo la tabella seguente:</FONT></P>
<TABLE style="BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; BORDER-COLLAPSE: collapse; BORDER-TOP: medium none; BORDER-RIGHT: medium none; mso-border-alt: solid black .5pt; mso-padding-alt: 0cm 5.4pt 0cm 5.4pt; mso-yfti-tbllook: 1184; mso-border-themecolor: text1" class=MsoTableGrid border=1 cellSpacing=0 cellPadding=0>
<TBODY>
<TR style="mso-yfti-irow: 0; mso-yfti-firstrow: yes">
<TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; PADDING-BOTTOM: 0cm; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 118.8pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0cm; mso-border-alt: solid black .5pt; mso-border-themecolor: text1" vAlign=top width=158>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><B style="mso-bidi-font-weight: normal"><FONT face=Calibri>Vb6<o:p></o:p></FONT></B></P></TD>
<TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #d4d0c8; PADDING-BOTTOM: 0cm; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 134.7pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0cm; mso-border-alt: solid black .5pt; mso-border-left-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-left-themecolor: text1" vAlign=top width=180>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><B style="mso-bidi-font-weight: normal"><FONT face=Calibri>Vb .NET e succerss.<o:p></o:p></FONT></B></P></TD>
<TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #d4d0c8; PADDING-BOTTOM: 0cm; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 148.8pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0cm; mso-border-alt: solid black .5pt; mso-border-left-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-left-themecolor: text1" vAlign=top width=198>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><B style="mso-bidi-font-weight: normal"><FONT face=Calibri>NOTE<o:p></o:p></FONT></B></P></TD></TR>
<TR style="mso-yfti-irow: 1">
<TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; PADDING-BOTTOM: 0cm; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 118.8pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #d4d0c8; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0cm; mso-border-alt: solid black .5pt; mso-border-top-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-top-themecolor: text1" vAlign=top width=158>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt">Dim MiaMatr(5)<o:p></o:p></SPAN></P></TD>
<TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #d4d0c8; PADDING-BOTTOM: 0cm; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 134.7pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #d4d0c8; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0cm; mso-border-alt: solid black .5pt; mso-border-top-alt: solid black .5pt; mso-border-left-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-left-themecolor: text1; mso-border-top-themecolor: text1; mso-border-bottom-themecolor: text1; mso-border-right-themecolor: text1" vAlign=top width=180>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt">Dim MiaMatr(5)<o:p></o:p></SPAN></P></TD>
<TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #d4d0c8; PADDING-BOTTOM: 0cm; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 148.8pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #d4d0c8; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0cm; mso-border-alt: solid black .5pt; mso-border-top-alt: solid black .5pt; mso-border-left-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-left-themecolor: text1; mso-border-top-themecolor: text1; mso-border-bottom-themecolor: text1; mso-border-right-themecolor: text1" vAlign=top width=198>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><FONT face=Calibri>Lecito in entrambi i mondi</FONT></P></TD></TR>
<TR style="mso-yfti-irow: 2">
<TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; PADDING-BOTTOM: 0cm; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 118.8pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #d4d0c8; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0cm; mso-border-alt: solid black .5pt; mso-border-top-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-top-themecolor: text1" vAlign=top width=158>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt">Dim MiaMatr()<o:p></o:p></SPAN></P></TD>
<TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #d4d0c8; PADDING-BOTTOM: 0cm; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 134.7pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #d4d0c8; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0cm; mso-border-alt: solid black .5pt; mso-border-top-alt: solid black .5pt; mso-border-left-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-left-themecolor: text1; mso-border-top-themecolor: text1; mso-border-bottom-themecolor: text1; mso-border-right-themecolor: text1" vAlign=top width=180>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt">Dim MiaMatr()<o:p></o:p></SPAN></P></TD>
<TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #d4d0c8; PADDING-BOTTOM: 0cm; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 148.8pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #d4d0c8; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0cm; mso-border-alt: solid black .5pt; mso-border-top-alt: solid black .5pt; mso-border-left-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-left-themecolor: text1; mso-border-top-themecolor: text1; mso-border-bottom-themecolor: text1; mso-border-right-themecolor: text1" vAlign=top width=198>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><FONT face=Calibri>Obbligatorio, solo in VB6, far seguire una <I style="mso-bidi-font-style: normal">Redim <o:p></o:p></I></FONT></P></TD></TR>
<TR style="mso-yfti-irow: 3; mso-yfti-lastrow: yes">
<TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; PADDING-BOTTOM: 0cm; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 118.8pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #d4d0c8; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0cm; mso-border-alt: solid black .5pt; mso-border-top-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-top-themecolor: text1" vAlign=top width=158>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt"><o:p>&nbsp;</o:p></SPAN></P></TD>
<TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #d4d0c8; PADDING-BOTTOM: 0cm; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 134.7pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #d4d0c8; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0cm; mso-border-alt: solid black .5pt; mso-border-top-alt: solid black .5pt; mso-border-left-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-left-themecolor: text1; mso-border-top-themecolor: text1; mso-border-bottom-themecolor: text1; mso-border-right-themecolor: text1" vAlign=top width=180>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt">Dim N = 12<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt">Dim MiaMatr(N)<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-bidi-font-size: 11.0pt">Dim MiaMatr(N * 2)<o:p></o:p></SPAN></P></TD>
<TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #d4d0c8; PADDING-BOTTOM: 0cm; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 148.8pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #d4d0c8; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0cm; mso-border-alt: solid black .5pt; mso-border-top-alt: solid black .5pt; mso-border-left-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-left-themecolor: text1; mso-border-top-themecolor: text1; mso-border-bottom-themecolor: text1; mso-border-right-themecolor: text1" vAlign=top width=198>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><FONT face=Calibri>Espressioni Dim non lecite in VB6</FONT></P></TD></TR></TBODY></TABLE>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><o:p><FONT face=Calibri>&nbsp;</FONT></o:p></P>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><FONT face=Calibri>La novit&#224; espressa dalla seconda riga pu&#242; indurre a pensare che <I style="mso-bidi-font-style: normal">Redim </I>nel nuovo mondo non serva pi&#249;. Non &#232; esatto, ha richiamato Francesco, con l&#8217;esempio seguente:</FONT></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 8pt; mso-bidi-font-size: 10.0pt">Sub</SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 8pt; mso-bidi-font-size: 10.0pt"> ExpandArray(<SPAN style="COLOR: blue">ByRef</SPAN> arr() <SPAN style="COLOR: blue">As</SPAN> <SPAN style="COLOR: blue">Integer</SPAN>)<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 8pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US>&nbsp; ReDim</SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 8pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US> arr(arr.Length * 2 - 1)<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 8pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US>End</SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 8pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US> <SPAN style="COLOR: blue">Sub<o:p></o:p></SPAN></SPAN></P>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><FONT face=Calibri>In questo caso non si pu&#242; sostituire Redim con Dim.</FONT></P>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><FONT face=Calibri>A mia volta mi permetto due ulteriori indicazioni. La prima &#232; un richiamo alle variabili definite a livello modulo (Sezione Dichiarazioni). La seconda &#232; l&#8217;ineludibile impiego di <B style="mso-bidi-font-weight: normal"><I style="mso-bidi-font-style: normal">Redim Preserve </I></B>in molte applicazioni dinamiche. L&#8217;esempio seguente completa l&#8217;osservazione di Francesco:</FONT></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt">Module</SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"> Module1<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US"><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="COLOR: blue" lang=EN-US>Sub</SPAN><SPAN lang=EN-US> ExpandArray(<SPAN style="COLOR: blue">ByRef</SPAN> Arr() <SPAN style="COLOR: blue">As</SPAN> <SPAN style="COLOR: blue">Integer</SPAN>)<o:p></o:p></SPAN></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="COLOR: blue">Dim</SPAN> Lung = Arr.Length<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="COLOR: blue">ReDim</SPAN> <SPAN style="COLOR: blue">Preserve</SPAN> arr(Lung * 2 - 1)<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="COLOR: blue">For</SPAN> i <SPAN style="COLOR: blue">As</SPAN> <SPAN style="COLOR: blue">Integer</SPAN> = 0 <SPAN style="COLOR: blue">To</SPAN> UBound(arr)<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN></SPAN><SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt">If</SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"> i &gt;= Lung <SPAN style="COLOR: blue">Then</SPAN> Arr(i) = i * i <SPAN style="COLOR: #00b050">' Quadrati nelle celle aggiunte</SPAN><o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="COLOR: green">' MessageBox.Show (Arr(i)) ' Servita per debug<o:p></o:p></SPAN></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US"><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="COLOR: blue" lang=EN-US>Next<o:p></o:p></SPAN></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="COLOR: blue">End</SPAN> <SPAN style="COLOR: blue">Sub<o:p></o:p></SPAN></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><o:p>&nbsp;</o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="COLOR: blue">Sub</SPAN> Main()<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="COLOR: blue">Dim</SPAN> MioArr(3) <SPAN style="COLOR: blue">As</SPAN> <SPAN style="COLOR: blue">Integer<o:p></o:p></SPAN></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="COLOR: blue">For</SPAN> i <SPAN style="COLOR: blue">As</SPAN> <SPAN style="COLOR: blue">Integer</SPAN> = 0 <SPAN style="COLOR: blue">To</SPAN> UBound(MioArr)<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>MioArr(i) = i <SPAN style="COLOR: #00b050">' &lt;= 0, 1, 2, 3</SPAN><o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="COLOR: blue">Next<o:p></o:p></SPAN></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>ExpandArray(MioArr)<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="COLOR: blue">For</SPAN> i <SPAN style="COLOR: blue">As</SPAN> <SPAN style="COLOR: blue">Integer</SPAN> = 0 <SPAN style="COLOR: blue">To</SPAN> UBound(MioArr)<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><FONT color=#008000>MessageBox.Show</FONT>(MioArr(i)) <SPAN style="COLOR: #00b050">' =&gt; 0, 1, 2, 3, 16, 25, 36, 49</SPAN><o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="COLOR: blue">Next<o:p></o:p></SPAN></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="COLOR: blue">End</SPAN> <SPAN style="COLOR: blue">Sub<o:p></o:p></SPAN></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US>End </SPAN><SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt">Module</SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 6pt" class=MsoNormal><SPAN style="COLOR: #1f497d"><o:p><FONT face=Calibri>&nbsp;</FONT></o:p></SPAN></P></BLOGHELPER>?&gt;</FONT>
<P></P></bloghelper>?></font></p><img src ="http://blog.shareoffice.it/giannigiaccaglini/aggbug/10226.aspx" width = "1" height = "1" /></body></item><item><dc:creator>Gianni Giaccaglini</dc:creator><title>Controlli e ActionPanes nei VSTO di Word</title><link>http://blog.shareoffice.it/giannigiaccaglini/archive/2009/06/08/10185.aspx</link><pubDate>Mon, 08 Jun 2009 16:16:00 GMT</pubDate><guid>http://blog.shareoffice.it/giannigiaccaglini/archive/2009/06/08/10185.aspx</guid><wfw:comment>http://blog.shareoffice.it/giannigiaccaglini/comments/10185.aspx</wfw:comment><comments>http://blog.shareoffice.it/giannigiaccaglini/archive/2009/06/08/10185.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blog.shareoffice.it/giannigiaccaglini/comments/commentRss/10185.aspx</wfw:commentRss><trackback:ping>http://blog.shareoffice.it/giannigiaccaglini/services/trackbacks/10185.aspx</trackback:ping><description>&lt;p style="MARGIN: 12pt 0cm 6pt" class="MsoTitle"&gt;&lt;span style="mso-no-proof: yes"&gt;&lt;font face="Tahoma"&gt;&lt;strong&gt;SEGNALAZIONE UTILE. &lt;/strong&gt;L'amico &lt;strong&gt;Emanuele &lt;/strong&gt;&lt;/font&gt;&lt;font size="4"&gt;(&lt;strong&gt;Mattei&lt;/strong&gt;! chi altro potrebbe essere?) ha varato il sito professionale &lt;a href="http://www.donetromacesta.org"&gt;&lt;strong&gt;www.donetromacesta.org&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt; &lt;/strong&gt;al quale ho pensato di offrire un piccolo contributo su Excel + VBA. Eccone il link:&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;&lt;span style="mso-no-proof: yes"&gt;
&lt;p style="MARGIN: 0cm 0cm 0pt" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;a title="http://www.dotnetromacesta.org/common/articoli/office/vba/Gestire_una_galleria_di_immagini.aspx&amp;#xD;&amp;#xA;Ctrl + clic per seguire il collegamento" href="http://www.dotnetromacesta.org/common/articoli/office/vba/Gestire_una_galleria_di_immagini.aspx"&gt;&lt;font color="#800080"&gt;http://www.dotnetromacesta.org/common/articoli/office/vba/Gestire_una_galleria_di_immagini.aspx&lt;/font&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0cm 0cm 0pt" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;/span&gt; &lt;/p&gt;
&lt;p style="MARGIN: 0cm 0cm 0pt" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;font size="4"&gt;&lt;strong&gt;Visitate gente, visitate...&lt;/strong&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="mso-fareast-font-family: 'Times New Roman'"&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/SPAN&gt;
&lt;P style="MARGIN: 12pt 0cm 6pt" class=MsoTitle&gt;&lt;SPAN style="mso-no-proof: yes"&gt;&lt;STRONG&gt;&lt;FONT size=5&gt;&lt;FONT face=Cambria&gt;Controlli e ActionPanes nei VSTO di Word&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;DIV style="BORDER-BOTTOM: windowtext 1pt solid; BORDER-LEFT: windowtext 1pt solid; PADDING-BOTTOM: 1pt; PADDING-LEFT: 4pt; PADDING-RIGHT: 4pt; BACKGROUND: #b8cce4; BORDER-TOP: windowtext 1pt solid; BORDER-RIGHT: windowtext 1pt solid; PADDING-TOP: 1pt; mso-border-alt: solid windowtext .5pt; mso-element: para-border-div; mso-background-themecolor: accent1; mso-background-themetint: 102"&gt;
&lt;P style="BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 10pt; PADDING-LEFT: 0cm; PADDING-RIGHT: 0cm; BACKGROUND: #b8cce4; BORDER-TOP: medium none; BORDER-RIGHT: medium none; PADDING-TOP: 0cm; mso-border-alt: solid windowtext .5pt; mso-background-themecolor: accent1; mso-background-themetint: 102; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;SPAN style="mso-no-proof: yes"&gt;&lt;STRONG&gt;NOTA PRELIMINARE&lt;/STRONG&gt;&lt;/SPAN&gt;. Questo post iniziza con un &lt;U&gt;appello a quanti la sanno lunga sull&amp;#8217;&lt;B style="mso-bidi-font-weight: normal"&gt;Actions pane &lt;/B&gt;e sul suo proficuo utilizzo in Word&lt;/U&gt;. Scrivere a &lt;B style="mso-bidi-font-weight: normal"&gt;&lt;A href="mailto:giannigiac@tin.it"&gt;giannigiac@tin.it&lt;/A&gt; &lt;/B&gt;. Sar&amp;#242; lieto di pubblicare ogni suggerimento &lt;SPAN style="mso-no-proof: yes"&gt;valido in materia.&lt;/SPAN&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/B&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/DIV&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;SPAN style="mso-no-proof: yes"&gt;&lt;FONT face=Calibri&gt;Incorporare controlli su un foglio di lavoro &amp;#232; una pratica accettabile, che tra l&amp;#8217;altro ha il pregio dell&amp;#8217;immediatezza, laddove sono posti accanto ai dati da elaborare con la macro (o il codice &amp;#8220;managed&amp;#8221; in ambiente &lt;B style="mso-bidi-font-weight: normal"&gt;VSTO&lt;/B&gt;, Visual Studio Tools per Office). Una controindicazione &amp;#232;, parlando in generale, il fatto che i controlli di tipo ActiveX e assimilati compaiono anche in stampa, n&amp;#233; sembra possibile occultarli anche solo pro tempore. Si provi infatti la seguente macro, che ipotizza la presenza sul foglio di lavoro sia di controlli &amp;#8220;classici&amp;#8221; di Excel che di tipo ActiveX:&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;Sub NascondiSvela(Vis As Boolean)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;For Each Sh In Me.Shapes&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Sh.Visible = Vis&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Next&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;End Sub&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 11.0pt"&gt;Sub Stampa()&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 11.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;NascondiSvela False&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 11.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Me.PrintPreview&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 11.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;NascondiSvela True&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;End Sub&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;DIV style="BORDER-BOTTOM: windowtext 1pt solid; BORDER-LEFT: windowtext 1pt solid; PADDING-BOTTOM: 1pt; PADDING-LEFT: 4pt; PADDING-RIGHT: 4pt; BACKGROUND: #b6dde8; BORDER-TOP: windowtext 1pt solid; BORDER-RIGHT: windowtext 1pt solid; PADDING-TOP: 1pt; mso-border-alt: solid windowtext .5pt; mso-element: para-border-div"&gt;
&lt;P style="BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 10pt; PADDING-LEFT: 0cm; PADDING-RIGHT: 0cm; BACKGROUND: #b6dde8; BORDER-TOP: medium none; BORDER-RIGHT: medium none; PADDING-TOP: 0cm; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="mso-no-proof: yes"&gt;Nota &lt;/SPAN&gt;&lt;/B&gt;Beninteso, in presenza di immagini o forme illustrative che perci&amp;#242; vanno conservate in stampa occorre una routine pi&amp;#249; mirata, che cio&amp;#232; occulti solo oggetti indesiderati.&lt;/FONT&gt;&lt;/P&gt;&lt;/DIV&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;SPAN style="mso-no-proof: yes"&gt;Come non ci vuol molto a capire &lt;?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /&gt;&lt;st1:PersonName ProductID="la prima Sub" w:st="on"&gt;la prima Sub&lt;/st1:PersonName&gt; al primo richiamo con &lt;I style="mso-bidi-font-style: normal"&gt;Vis = False&lt;/I&gt;&lt;/SPAN&gt; nasconde tutte le forme, inclusi i controlli ActiveX, anch&amp;#8217;essi assimilati a &lt;B style="mso-bidi-font-weight: normal"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;Shapes&lt;/I&gt;&lt;/B&gt; e inclusi in tale insieme, mentre con &lt;I style="mso-bidi-font-style: normal"&gt;Vis = True &lt;/I&gt;li visualizza tutti di nuovo. Pertanto l&amp;#8217;istruzione centrale di anteprima (o di stampa tout court) dovrebbe essere corretta, giusto? Sbagliato. I controlli classici non sono stampati ma quelli ActiveX anche se messi fuori vista vengono di fatto stampati.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Tuttavia l&amp;#8217;inconveniente pu&amp;#242; essere ovviato (o inesistente) in Excel, dove esistono pi&amp;#249; fogli di lavoro, basta che i dati da stampare si trovino su un foglio (ad esempio riepilogativo) esente da controlli incorporati.&lt;/FONT&gt;&lt;/P&gt;
&lt;H2 style="MARGIN: 12pt 0cm 3pt"&gt;&lt;EM&gt;&lt;FONT face=Cambria&gt;Il caso Word (con difficolt&amp;#224; iniziali varie)&lt;/FONT&gt;&lt;/EM&gt;&lt;/H2&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;La situazione &amp;#232; meno felice in Word, ove il documento &amp;#232; unico, soprattutto perch&amp;#233; qui non esistono i controlli-classici di Excel, ma soltanto gli ActiveX. Non occultabili a monte della stampa, come gi&amp;#224; visto con Excel. La situazione appare imbarazzante quando si lavora nel mondo &lt;B style="mso-bidi-font-weight: normal"&gt;VSTO&lt;/B&gt;. Una soluzione brutale l&amp;#8217;avrei anche trovata e la riporto in fondo al presente post, ma non pare troppo soddisfacente. Prima di proseguire trovo importante una premessa. I VSTO tradiscono diverse aspettative per chi pensa di ottenerne una sorta di applicativi office-oriented. Ecco i punti pi&amp;#249; imbarazzanti:&lt;/FONT&gt;&lt;/P&gt;
&lt;UL style="MARGIN-TOP: 0cm" type=disc&gt;
&lt;LI style="MARGIN: 0cm 0cm 10pt; mso-list: l3 level1 lfo1" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;In Excel, &lt;/B&gt;il mancato supporto di &lt;I style="mso-bidi-font-style: normal"&gt;funzioni d&amp;#8217;utente &lt;/I&gt;(&lt;B style="mso-bidi-font-weight: normal"&gt;UDF&lt;/B&gt;, User Defined Function) implementate con codice .NET;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/B&gt;&lt;/FONT&gt; 
&lt;LI style="MARGIN: 0cm 0cm 10pt; mso-list: l3 level1 lfo1" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;In Word&lt;/B&gt;, all&amp;#8217;impossibilit&amp;#224; di associare a routine scorciatoie di tastiera &amp;#8211; comode e &amp;#8220;naturali&amp;#8221; visto che la digitazione qui regna sovrana - si unisce l&amp;#8217;assenza di tali routine nel modulo &lt;B style="mso-bidi-font-weight: normal"&gt;Normal.dot&lt;/B&gt;, che ne consente l&amp;#8217;utilizzo &lt;I style="mso-bidi-font-style: normal"&gt;con qualunque documento&lt;/I&gt;.&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;In questi casi (e altri di cui non mi sovviene) l&amp;#8217;imbarazzo deriva dal fatto che &lt;U&gt;tali preziose funzionalit&amp;#224; restano possibili con il buon vecchio sistema di macro VBA anche con un &amp;#8220;applicativo&amp;#8221; VSTO&lt;/U&gt;. Ma in tal modo la security del managed code va un poco a farsi benedire. O no?&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Rimanendo a quel che passa il convento Word VSTO, che strumenti ci offre per ottenere un qualche &lt;B style="mso-bidi-font-weight: normal"&gt;MioDoc.xlx &lt;/B&gt;che abbia un minino di valenza applicativa, magari &amp;#8220;dedicata&amp;#8221; e semichiusa?&amp;nbsp;A dire il vero,&amp;nbsp;le possibilit&amp;#224; sono notevolissime, basti pensare al &lt;I style="mso-bidi-font-style: normal"&gt;trattamento di archivi Open XML su disco &lt;/I&gt;con &lt;st1:PersonName ProductID="la specifica API SDK" w:st="on"&gt;&lt;st1:PersonName ProductID="la specifica API" w:st="on"&gt;la specifica API&lt;/st1:PersonName&gt; SDK&lt;/st1:PersonName&gt; 1.0 + LINQ o &lt;st1:PersonName ProductID="la nuova SDK" w:st="on"&gt;la nuova SDK&lt;/st1:PersonName&gt; 2.0 &amp;#8220;strongly typed&amp;#8221;. Prossimamente conto di offrirne almeno un esempio, in cui un intervallo o una tabella Excel vengono importati nel documento Word. Ma la domanda cruciale &amp;#232; la seguente:&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;I style="mso-bidi-font-style: normal"&gt;&lt;FONT face=Calibri&gt;Come lanciare in modo semplice funzionalit&amp;#224; del genere?&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/I&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Confesso che&amp;nbsp;all'inizio non ho avuto modo n&amp;#233; tempo per esaminare soluzioni avanzate, in primo luogo un Ribbon opportunamente personalizzato. Fra le &amp;#8220;semplici&amp;#8221; evocate test&amp;#233; dalla domanda&amp;nbsp;comincio con&amp;nbsp;l'annoverare due possibilit&amp;#224;:&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -18pt; MARGIN: 0cm 0cm 10pt 36pt; mso-list: l0 level1 lfo2" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&amp;#216;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt;Controlli ActiveX incorporati in cima al documento, tipicamente un paio di pulsanti, &lt;B style="mso-bidi-font-weight: normal"&gt;Button1 &lt;/B&gt;e &lt;B style="mso-bidi-font-weight: normal"&gt;Button2&lt;/B&gt;;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -18pt; MARGIN: 0cm 0cm 10pt 36pt; mso-list: l0 level1 lfo2" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&amp;#216;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt;&lt;st1:PersonName ProductID="La finestra Azione" w:st="on"&gt;La finestra &lt;B style="mso-bidi-font-weight: normal"&gt;Azione&lt;/B&gt;&lt;/st1:PersonName&gt;&lt;B style="mso-bidi-font-weight: normal"&gt; documenti &lt;/B&gt;(&lt;B style="mso-bidi-font-weight: normal"&gt;Actions pane&lt;/B&gt;).&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Il secondo metodo si presenta pi&amp;#249; allettante, in quanto tale pannello si colloca alla destra del documento e promette di scatenare le azioni da noi desiderate evitando di incorporare alcunch&amp;#233; nel documento. Ma qui cominciano le dolenti note, almeno in prima battuta (per fortuna, in fondo al post c'&amp;#232; il lieto fine):&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -18pt; MARGIN: 0cm 0cm 10pt 36pt; mso-list: l2 level1 lfo3" class=MsoNormal&gt;&lt;SPAN style="mso-bidi-font-family: Calibri"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face=Calibri&gt;1)&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt;Non &amp;#232; possibile caricare l&amp;#8217;Actions pane nell&amp;#8217;IDE VSTO di Word, lo si pu&amp;#242; fare solo con il Word &amp;#8220;normale&amp;#8221;;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -18pt; MARGIN: 0cm 0cm 10pt 36pt; mso-list: l2 level1 lfo3" class=MsoNormal&gt;&lt;SPAN style="mso-bidi-font-family: Calibri"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face=Calibri&gt;2)&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt;esso non viene in alcun modo &amp;#8220;visto&amp;#8221; da macro VBA, contrariamente a quel che avviene nel mondo VSTO.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -18pt; MARGIN: 0cm 0cm 10pt 36pt; mso-list: l2 level1 lfo3" class=MsoNormal&gt;&lt;SPAN style="mso-bidi-font-family: Calibri"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face=Calibri&gt;3)&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt;Nel Word normale non c&amp;#8217;&amp;#232; alcun verso di inserire controlli nell&amp;#8217;Actions pane, mentre l&amp;#8217;operazione si direbbe consentita in ambiente VSTO, perch&amp;#233; &lt;U&gt;all'inizio non&amp;nbsp;si riesce a farlo (ma il modo esiste, v. alla fine!)&lt;/U&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Le operazioni di cui al primo punto sono tediose e per pigrizia non le riporto in dettaglio. Dico solo che si parte col pulsante Office, attivando &lt;B style="mso-bidi-font-weight: normal"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;Opzioni di Word...&lt;/I&gt;&lt;/B&gt;&lt;I style="mso-bidi-font-style: normal"&gt; &lt;/I&gt;quindi&lt;B style="mso-bidi-font-weight: normal"&gt; Componenti aggiuntivi&lt;/B&gt;&lt;I style="mso-bidi-font-style: normal"&gt; &lt;/I&gt;ecc. Dopo di che per visualizzare il sospirato pannello si agisce sulla scheda &lt;B style="mso-bidi-font-weight: normal"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;Sviluppo&lt;/I&gt; &lt;/B&gt;seguita da &lt;B style="mso-bidi-font-weight: normal"&gt;Pacchetti di espansione &lt;/B&gt;e via di seguito&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Calibri','sans-serif'; FONT-SIZE: 11pt; mso-fareast-font-family: Calibri; mso-ansi-language: IT; mso-bidi-font-family: 'Times New Roman'; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;, operazioni queste fattibili pure nei VSTO (ma che confusione, non &amp;#232; vero?)&lt;/SPAN&gt;.&lt;/FONT&gt;&lt;/P&gt;
&lt;H2 style="MARGIN: 12pt 0cm 3pt"&gt;&lt;EM&gt;&lt;FONT face=Cambria&gt;Un po&amp;#8217; di codice managed&lt;/FONT&gt;&lt;/EM&gt;&lt;/H2&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Nei VSTO di Word tutte le routine, di regola, sono racchiuse nella classe &lt;B style="mso-bidi-font-weight: normal"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;ThisDocument&lt;/I&gt;&lt;/B&gt;.&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;I style="mso-bidi-font-style: normal"&gt; &lt;/I&gt;&lt;/B&gt;Per non scontentare impazienti e frettolosi riporto subito i miei primi tentativi esplorativi, riusciti.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt"&gt;Public&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt"&gt; &lt;SPAN style="COLOR: blue"&gt;Class&lt;/SPAN&gt; ThisDocument&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;Private&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt; &lt;SPAN style="COLOR: blue"&gt;Sub&lt;/SPAN&gt; ThisDocument_Startup(&lt;SPAN style="COLOR: blue"&gt;ByVal&lt;/SPAN&gt; sender &lt;SPAN style="COLOR: blue"&gt;As&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Object&lt;/SPAN&gt;, &lt;SPAN style="COLOR: blue"&gt;ByVal&lt;/SPAN&gt; e &lt;SPAN style="COLOR: blue"&gt;As&lt;/SPAN&gt; System.EventArgs) &lt;SPAN style="COLOR: blue"&gt;Handles&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Me&lt;/SPAN&gt;.Startup&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;If&lt;/SPAN&gt; MessageBox.Show(&lt;SPAN style="COLOR: #a31515"&gt;"Cuc&amp;#249;, sono "&lt;/SPAN&gt; &amp;amp; &lt;SPAN style="COLOR: blue"&gt;Me&lt;/SPAN&gt;.Name &amp;amp; _ &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="TEXT-ALIGN: left; LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal align=left&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;vbLf &amp;amp; &lt;SPAN style="COLOR: #a31515"&gt;"Due pi&amp;#249; due = quattro?"&lt;/SPAN&gt;, , MessageBoxButtons.YesNo) _&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="TEXT-ALIGN: left; LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal align=left&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;= DialogResult.Yes &lt;SPAN style="COLOR: blue"&gt;Then&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;MsgBox(&lt;SPAN style="COLOR: #a31515"&gt;"Bravo! Sette pi&amp;#249;"&lt;/SPAN&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;End&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;If&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;ActiveWindow.ActivePane.View.Zoom.Percentage = 100&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt"&gt;ActionsPane.Show()&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;End&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Sub&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;Private&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Sub&lt;/SPAN&gt; ThisDocument_Shutdown(&lt;SPAN style="COLOR: blue"&gt;ByVal&lt;/SPAN&gt; sender &lt;SPAN style="COLOR: blue"&gt;As&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Object&lt;/SPAN&gt;, &lt;SPAN style="COLOR: blue"&gt;ByVal&lt;/SPAN&gt; e &lt;SPAN style="COLOR: blue"&gt;As&lt;/SPAN&gt; System.EventArgs) &lt;SPAN style="COLOR: blue"&gt;Handles&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Me&lt;/SPAN&gt;.Shutdown&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;End&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Sub&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;Private&lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt; Sub ActionsPane_Click(&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;ByVal&lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt; sender &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;As&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Object&lt;/SPAN&gt;, &lt;SPAN style="COLOR: blue"&gt;ByVal&lt;/SPAN&gt; e &lt;SPAN style="COLOR: blue"&gt;As&lt;/SPAN&gt; System.EventArgs) &lt;SPAN style="COLOR: blue"&gt;Handles&lt;/SPAN&gt; ActionsPane. Click&lt;SPAN style="COLOR: green"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt"&gt;MsgBox&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;(&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #a31515; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt"&gt;"Action pan cliccato!")&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;End Sub&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;Private&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Sub&lt;/SPAN&gt; ActionsPane_DoubleClick(&lt;SPAN style="COLOR: blue"&gt;ByVal&lt;/SPAN&gt; sender &lt;SPAN style="COLOR: blue"&gt;As&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Object&lt;/SPAN&gt;, &lt;SPAN style="COLOR: blue"&gt;ByVal&lt;/SPAN&gt; e &lt;SPAN style="COLOR: blue"&gt;As&lt;/SPAN&gt; System.EventArgs) &lt;SPAN style="COLOR: blue"&gt;Handles&lt;/SPAN&gt; ActionsPane.DoubleClick&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt"&gt;MsgBox(&lt;SPAN style="COLOR: #a31515"&gt;"Hai dato un doppio clic sull'ActionsPane. &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #a31515; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;Bravo!"&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;End&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Sub&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;Private&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Sub&lt;/SPAN&gt; ActionsPane_MouseDoubleClick(&lt;SPAN style="COLOR: blue"&gt;ByVal&lt;/SPAN&gt; sender &lt;SPAN style="COLOR: blue"&gt;As&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Object&lt;/SPAN&gt;, &lt;SPAN style="COLOR: blue"&gt;ByVal&lt;/SPAN&gt; e &lt;SPAN style="COLOR: blue"&gt;As&lt;/SPAN&gt; System.Windows.Forms.MouseEventArgs) &lt;SPAN style="COLOR: blue"&gt;Handles&lt;/SPAN&gt; ActionsPane.MouseDoubleClick&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt"&gt;MsgBox(&lt;SPAN style="COLOR: #a31515"&gt;"Hai dato un doppio clic. Bravo!"&lt;/SPAN&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;End&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Sub&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;Private&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Sub&lt;/SPAN&gt; Button1_Click(&lt;SPAN style="COLOR: blue"&gt;ByVal&lt;/SPAN&gt; sender &lt;SPAN style="COLOR: blue"&gt;As&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Object&lt;/SPAN&gt;, &lt;SPAN style="COLOR: blue"&gt;ByVal&lt;/SPAN&gt; e &lt;SPAN style="COLOR: blue"&gt;As&lt;/SPAN&gt; System.EventArgs) &lt;SPAN style="COLOR: blue"&gt;Handles&lt;/SPAN&gt; Button1.Click&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;MsgBox(&lt;SPAN style="COLOR: #a31515"&gt;"Bubbusette!"&lt;/SPAN&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;End&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Sub&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;Private&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Sub&lt;/SPAN&gt; Button2_Click(&lt;SPAN style="COLOR: blue"&gt;ByVal&lt;/SPAN&gt; sender &lt;SPAN style="COLOR: blue"&gt;As&lt;/SPAN&gt; System.Object, &lt;SPAN style="COLOR: blue"&gt;ByVal&lt;/SPAN&gt; e &lt;SPAN style="COLOR: blue"&gt;As&lt;/SPAN&gt; System.EventArgs) &lt;SPAN style="COLOR: blue"&gt;Handles&lt;/SPAN&gt; Button2.Click&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;MsgBox(&lt;SPAN style="COLOR: #a31515"&gt;"Bubbuotto!"&lt;/SPAN&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;End&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Sub&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;End&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt; &lt;SPAN style="COLOR: blue"&gt;Class&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Premesso che in testa al documento erano stati inseriti due controlli Button (scegliere nella sezione Controlli comuni o anche Windows Form), le routine messaggistiche ad essi abbinate sono banali, anzi ridicole. Pi&amp;#249; interessante la Sub dell&amp;#8217;evento &lt;B style="mso-bidi-font-weight: normal"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;ThisDocument_Startup &lt;/I&gt;&lt;/B&gt;ovviamente equivalente alla &lt;I style="mso-bidi-font-style: normal"&gt;Document_Open &lt;/I&gt;di Word normale entrambe scatenantesi al caricamento del documento. Interessanti e, come ripeto, possibili solo coi VSTO non tanto le prime istruzioni di squallido umorismo bens&amp;#236; le ultime due, entrambe richieste per visualizzare il sospirato riquadro di cui si parla. Richieste e, direi, indispensabili affinch&amp;#233; abbiano concreto utilizzo le altre, relative a due degli eventi dell&amp;#8217;&lt;I style="mso-bidi-font-style: normal"&gt;oggetto &lt;/I&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;ActionsPane&lt;/B&gt;. Questi sono una vera caterva, come &amp;#232; facile scoprire.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Io mi sono limitato ai tre pi&amp;#249; semplici, abbinando a ciascuno stupidissimi messaggi. Mi sarei anche accontentato di surrogare con essi &amp;#8211;nell&amp;#8217;incapacit&amp;#224; autolesionisticamente ammessa di inserire controlli nel fatidico pannello &amp;#8211; un paio di funzionalit&amp;#224; magari anche potenti &amp;amp; evolute. Purtroppo si incappa in altre due non del tutto piacevoli sorprese:&lt;/FONT&gt;&lt;/P&gt;
&lt;UL style="MARGIN-TOP: 0cm" type=disc&gt;
&lt;LI style="MARGIN: 0cm 0cm 10pt; mso-list: l1 level1 lfo4" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;L&amp;#8217;evento &lt;B style="mso-bidi-font-weight: normal"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;Click &lt;/I&gt;&lt;/B&gt;predomina sugli altri due, e li &amp;#8220;oscura&amp;#8221;per cui, volendoli usare occorre rinunciare al Click;&lt;/FONT&gt; 
&lt;LI style="MARGIN: 0cm 0cm 10pt; mso-list: l1 level1 lfo4" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;In compenso gli altri due sono &lt;I style="mso-bidi-font-style: normal"&gt;sinonimi &lt;/I&gt;per cui una doppia cliccata li scatena entrambi, uno di seguito all&amp;#8217;altro (questo punto non &amp;#232; grave n&amp;#233; del tutto inatteso, resta solo la domanda sul motivo per cui un medesimo evento abbia due nomi distinti, sottigliezza che non sono in grado di comprendere...).&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;Rimanendo nel quadro dei tentativi iniziali ecco poi, sotto forma di macro VBA, il codice brute-force per evitare di stampare i due pulsanti ipotizzati in cima al documento, &lt;U&gt;nelle sue prime due righe&lt;/U&gt;:&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;Sub MiaStampa()&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;Selection.HomeKey Unit:=wdStory&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Selection.MoveDown Unit:=wdLine, Count:=2, Extend:=wdExtend&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Selection.Cut&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;MsgBox "Adesso stampo!"&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;. . .&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;istruzioni di Stampa . . .&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Selection.Paste&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;End Sub&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;La brutalit&amp;#224; dipende dal taglio (&lt;I style="mso-bidi-font-style: normal"&gt;Cut&lt;/I&gt;) delle prime due righe, previa selezione delle medesime e, con esse, dei due bottoni. Niente paura, perch&amp;#233; a valle della stampa essi vengono re-incollati (&lt;I style="mso-bidi-font-style: normal"&gt;Paste&lt;/I&gt;)assieme alle due righe. Addirittura la routine funziona anche se evocata da uno dei pulsanti. Provare per credere con:&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;Private Sub CommandButton1_Click()&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;MiaStampa&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;End Sub&lt;/SPAN&gt;&lt;/P&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"&gt;
&lt;H2 style="MARGIN: 12pt 0cm 3pt"&gt;&lt;EM&gt;&lt;FONT face=Cambria&gt;Ma i controlli si possono inserire nell&amp;#8217;Action pane!&lt;/FONT&gt;&lt;/EM&gt;&lt;/H2&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;Come? Una tormentosa ricerca su MSDN me l&amp;#8217;ha fatto capire. Meglio tardi che mai.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;Il segreto di questo preannunciato lieto fine &amp;#232; presto detto:&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;STRONG&gt;&lt;FONT size=4 face=Calibri&gt;&lt;EM&gt;Pulsanti e controlli di ogni tipo si possono inserire nell'Action pane,. ma non lo si pu&amp;#242; fare manualmente, ma dinamicamente, tramite codice ad hoc.&amp;nbsp;&lt;/EM&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;Le delucidazioni su MSDN parlano il linguaggio di chi s&amp;#8217;intende di .NET, la qual cosa pu&amp;#242; essere criptica e scoraggiante per i praticoni come il sottoscritto e, in genere, per chi &amp;#232; alle... seconde armi con Visual Studio.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;Di fatto, per fortuna basta osare, ottenendo il risultato espresso dal codice seguente:&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-ALIGN: left; LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal align=left&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-language: IT" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Private&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-language: IT" lang=EN-US&gt; &lt;SPAN style="COLOR: blue"&gt;Sub&lt;/SPAN&gt; ThisDocument_Startup(&lt;SPAN style="COLOR: blue"&gt;ByVal&lt;/SPAN&gt; sender &lt;SPAN style="COLOR: blue"&gt;As&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Object&lt;/SPAN&gt;, &lt;SPAN style="COLOR: blue"&gt;ByVal&lt;/SPAN&gt; e &lt;SPAN style="COLOR: blue"&gt;As&lt;/SPAN&gt; System.EventArgs) &lt;SPAN style="COLOR: blue"&gt;Handles&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Me&lt;/SPAN&gt;.Startup&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="TEXT-ALIGN: left; LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal align=left&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-language: IT" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;Dim&lt;/SPAN&gt; MioButton &lt;SPAN style="COLOR: blue"&gt;As&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;New&lt;/SPAN&gt; Button()&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="TEXT-ALIGN: left; LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal align=left&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-language: IT" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;MioButton.Text = &lt;SPAN style="COLOR: #a31515"&gt;"Clicca"&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="TEXT-ALIGN: left; LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal align=left&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-language: IT" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;AddHandler&lt;/SPAN&gt; MioButton.Click, &lt;SPAN style="COLOR: blue"&gt;AddressOf&lt;/SPAN&gt; MioButton_Click&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="TEXT-ALIGN: left; LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal align=left&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-language: IT" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;ActionsPane.Controls.Add(MioButton)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="TEXT-ALIGN: left; LINE-HEIGHT: normal; MARGIN: 6pt 0cm; mso-layout-grid-align: none" class=MsoNormal align=left&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-language: IT" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;. . . &lt;B style="mso-bidi-font-weight: normal"&gt;O M I S S I S . . .&lt;SPAN style="COLOR: blue"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="TEXT-ALIGN: left; LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal align=left&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-language: IT" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;ActiveWindow.ActivePane.View.Zoom.Percentage = 100&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="TEXT-ALIGN: left; LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal align=left&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-language: IT" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;ActionsPane.Show()&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="TEXT-ALIGN: left; LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal align=left&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-language: IT" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;End&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Sub&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="TEXT-ALIGN: left; LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal align=left&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-language: IT" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;Private&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Sub&lt;/SPAN&gt; MioButton_Click(&lt;SPAN style="COLOR: blue"&gt;ByVal&lt;/SPAN&gt; sender &lt;SPAN style="COLOR: blue"&gt;As&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Object&lt;/SPAN&gt;, &lt;SPAN style="COLOR: blue"&gt;ByVal&lt;/SPAN&gt; e &lt;SPAN style="COLOR: blue"&gt;As&lt;/SPAN&gt; EventArgs)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="TEXT-ALIGN: left; LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal align=left&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-language: IT" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-fareast-language: IT"&gt;MsgBox(&lt;SPAN style="COLOR: #a31515"&gt;"Hai cliccato sul MioButton dell'Action pane!!!"&lt;/SPAN&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-fareast-language: IT"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;End&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Sub&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="TEXT-ALIGN: left; LINE-HEIGHT: normal; MARGIN: 6pt 0cm; mso-layout-grid-align: none" class=MsoNormal align=left&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-language: IT" lang=EN-US&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;. . . &lt;B style="mso-bidi-font-weight: normal"&gt;O M I S S I S . . .&lt;SPAN style="COLOR: blue"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-language: IT" lang=EN-US&gt;End&lt;/SPAN&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-language: IT" lang=EN-US&gt; &lt;SPAN style="COLOR: blue"&gt;Sub&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;Per la delizia dei sapientoni in MSDN&amp;nbsp;si spiega che sono in gioco i cosiddetti &amp;#8220;delegati&amp;#8221;... Studiate gente, ma noi praticoni per ora ci possiamo accontentare del caso appena visto, commentando le varie istruzioni (che cos&amp;#236; dovrebbero risultare eloquenti).&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -18pt; MARGIN: 0cm 0cm 10pt 36pt; mso-list: l0 level1 lfo1" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;&amp;#216;&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT size=3 face=Calibri&gt;-all&amp;#8217;avvio del documento (evento &lt;I style="mso-bidi-font-style: normal"&gt;Startup&lt;/I&gt;) viene creato un nuovo pulsante &lt;B style="mso-bidi-font-weight: normal"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;MioButton&lt;/I&gt;&lt;/B&gt;, qui etichettato col banale &amp;#8220;Clicca&amp;#8221;;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -18pt; MARGIN: 0cm 0cm 10pt 36pt; mso-list: l0 level1 lfo1" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;&amp;#216;&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT size=3 face=Calibri&gt;Subito viene definito, anzi aggiunto un, diciamo cos&amp;#236;, &amp;#8220;manipolatore&amp;#8221; (&lt;I style="mso-bidi-font-style: normal"&gt;AddHandler&lt;/I&gt;) dell&amp;#8217;evento &lt;B style="mso-bidi-font-weight: normal"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;Click &lt;/I&gt;&lt;/B&gt;del &lt;I style="mso-bidi-font-style: normal"&gt;MioButton&lt;STRONG&gt; &lt;/STRONG&gt;&lt;/I&gt;&amp;#8220;indirizzato&amp;#8221; (&lt;I style="mso-bidi-font-style: normal"&gt;AddressOf&lt;/I&gt;) allo stesso &lt;I style="mso-bidi-font-style: normal"&gt;MioButton &lt;/I&gt;(l&amp;#8217;indirizzamento pu&amp;#242; anche puntare a un altro controllo... cosa in genere da evitare, perch&amp;#233; fonte di confusione...);&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -18pt; MARGIN: 0cm 0cm 10pt 36pt; mso-list: l0 level1 lfo1" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;&amp;#216;&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT size=3 face=Calibri&gt;A questo punto,&lt;U&gt;a valle della routine di&amp;nbsp;StartUp&lt;/U&gt;, si definisce la&amp;nbsp;Sub dell&amp;#8217;evento &lt;B style="mso-bidi-font-weight: normal"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;MioButton_Click &lt;/I&gt;&lt;/B&gt;del tutto simile a quella di ogni button, interno o anche esterno all&amp;#8217;Action pane.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;Per completezza, riporto infine un&amp;#8217;istruzione che consente di inserire una serie di pulsanti (o, in genere, controlli) preliminarmente creati e definiti:&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: 140%; MARGIN: 0cm 0cm 0pt; VERTICAL-ALIGN: top; WORD-BREAK: break-all; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 140%; FONT-FAMILY: 'Courier New'; COLOR: black; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: IT" lang=EN-US&gt;.ActionsPane.Controls.AddRange(&lt;/SPAN&gt;&lt;SPAN style="LINE-HEIGHT: 140%; FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: IT" lang=EN-US&gt;New&lt;/SPAN&gt;&lt;SPAN style="LINE-HEIGHT: 140%; FONT-FAMILY: 'Courier New'; COLOR: black; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: IT" lang=EN-US&gt; Control(){button1, button2, button3})&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Calibri','sans-serif'; FONT-SIZE: 11pt; mso-fareast-font-family: Calibri; mso-ansi-language: IT; mso-bidi-font-family: 'Times New Roman'; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;Come dovrebbe essere evidente, &lt;I style="mso-bidi-font-style: normal"&gt;AddRange &lt;/I&gt;sintetizza una serie di aggiunte e altrettante istruzioni basate sul metodo &lt;I style="mso-bidi-font-style: normal"&gt;Add &lt;/I&gt;relativo a un singolo controllo&lt;I style="mso-bidi-font-style: normal"&gt;.&lt;/I&gt;&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BLOGHELPER&gt;?&amp;gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/SPAN&gt; &lt;/SPAN&gt;
&lt;P&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;/bloghelper&gt;?&gt;&lt;/span&gt;&lt;/p&gt;&lt;/span&gt;&lt;img src ="http://blog.shareoffice.it/giannigiaccaglini/aggbug/10185.aspx" width = "1" height = "1" /&gt;</description><body xmlns="http://www.w3.org/1999/xhtml"><p style="MARGIN: 12pt 0cm 6pt" class="MsoTitle"><span style="mso-no-proof: yes"><font face="Tahoma"><strong>SEGNALAZIONE UTILE. </strong>L'amico <strong>Emanuele </strong></font><font size="4">(<strong>Mattei</strong>! chi altro potrebbe essere?) ha varato il sito professionale <a href="http://www.donetromacesta.org"><strong>www.donetromacesta.org</strong></a><strong> </strong>al quale ho pensato di offrire un piccolo contributo su Excel + VBA. Eccone il link:</font></span></p><span style="mso-no-proof: yes">
<p style="MARGIN: 0cm 0cm 0pt" class="MsoNormal"><span style="FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"><a title="http://www.dotnetromacesta.org/common/articoli/office/vba/Gestire_una_galleria_di_immagini.aspx&#xD;&#xA;Ctrl + clic per seguire il collegamento" href="http://www.dotnetromacesta.org/common/articoli/office/vba/Gestire_una_galleria_di_immagini.aspx"><font color="#800080">http://www.dotnetromacesta.org/common/articoli/office/vba/Gestire_una_galleria_di_immagini.aspx</font></a></span></p>
<p style="MARGIN: 0cm 0cm 0pt" class="MsoNormal"><span style="FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"></span> </p>
<p style="MARGIN: 0cm 0cm 0pt" class="MsoNormal"><span style="FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"><font size="4"><strong>Visitate gente, visitate...</strong></font></span><span style="mso-fareast-font-family: 'Times New Roman'"><?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></SPAN></P></SPAN>
<P style="MARGIN: 12pt 0cm 6pt" class=MsoTitle><SPAN style="mso-no-proof: yes"><STRONG><FONT size=5><FONT face=Cambria>Controlli e ActionPanes nei VSTO di Word<o:p></o:p></FONT></FONT></STRONG></SPAN></P>
<DIV style="BORDER-BOTTOM: windowtext 1pt solid; BORDER-LEFT: windowtext 1pt solid; PADDING-BOTTOM: 1pt; PADDING-LEFT: 4pt; PADDING-RIGHT: 4pt; BACKGROUND: #b8cce4; BORDER-TOP: windowtext 1pt solid; BORDER-RIGHT: windowtext 1pt solid; PADDING-TOP: 1pt; mso-border-alt: solid windowtext .5pt; mso-element: para-border-div; mso-background-themecolor: accent1; mso-background-themetint: 102">
<P style="BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 10pt; PADDING-LEFT: 0cm; PADDING-RIGHT: 0cm; BACKGROUND: #b8cce4; BORDER-TOP: medium none; BORDER-RIGHT: medium none; PADDING-TOP: 0cm; mso-border-alt: solid windowtext .5pt; mso-background-themecolor: accent1; mso-background-themetint: 102; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt" class=MsoNormal><FONT face=Calibri><SPAN style="mso-no-proof: yes"><STRONG>NOTA PRELIMINARE</STRONG></SPAN>. Questo post iniziza con un <U>appello a quanti la sanno lunga sull&#8217;<B style="mso-bidi-font-weight: normal">Actions pane </B>e sul suo proficuo utilizzo in Word</U>. Scrivere a <B style="mso-bidi-font-weight: normal"><A href="mailto:giannigiac@tin.it">giannigiac@tin.it</A> </B>. Sar&#242; lieto di pubblicare ogni suggerimento <SPAN style="mso-no-proof: yes">valido in materia.</SPAN><B style="mso-bidi-font-weight: normal"><o:p></o:p></B></FONT></P></DIV>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><SPAN style="mso-no-proof: yes"><FONT face=Calibri>Incorporare controlli su un foglio di lavoro &#232; una pratica accettabile, che tra l&#8217;altro ha il pregio dell&#8217;immediatezza, laddove sono posti accanto ai dati da elaborare con la macro (o il codice &#8220;managed&#8221; in ambiente <B style="mso-bidi-font-weight: normal">VSTO</B>, Visual Studio Tools per Office). Una controindicazione &#232;, parlando in generale, il fatto che i controlli di tipo ActiveX e assimilati compaiono anche in stampa, n&#233; sembra possibile occultarli anche solo pro tempore. Si provi infatti la seguente macro, che ipotizza la presenza sul foglio di lavoro sia di controlli &#8220;classici&#8221; di Excel che di tipo ActiveX:<o:p></o:p></FONT></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US>Sub NascondiSvela(Vis As Boolean)<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>For Each Sh In Me.Shapes<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>Sh.Visible = Vis<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>Next<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US>End Sub<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><o:p>&nbsp;</o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 11.0pt">Sub Stampa()<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 11.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>NascondiSvela False<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 11.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>Me.PrintPreview<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 11.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>NascondiSvela True<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US>End Sub<o:p></o:p></SPAN></P>
<DIV style="BORDER-BOTTOM: windowtext 1pt solid; BORDER-LEFT: windowtext 1pt solid; PADDING-BOTTOM: 1pt; PADDING-LEFT: 4pt; PADDING-RIGHT: 4pt; BACKGROUND: #b6dde8; BORDER-TOP: windowtext 1pt solid; BORDER-RIGHT: windowtext 1pt solid; PADDING-TOP: 1pt; mso-border-alt: solid windowtext .5pt; mso-element: para-border-div">
<P style="BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; PADDING-BOTTOM: 0cm; MARGIN: 0cm 0cm 10pt; PADDING-LEFT: 0cm; PADDING-RIGHT: 0cm; BACKGROUND: #b6dde8; BORDER-TOP: medium none; BORDER-RIGHT: medium none; PADDING-TOP: 0cm; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt" class=MsoNormal><FONT face=Calibri><B style="mso-bidi-font-weight: normal"><SPAN style="mso-no-proof: yes">Nota </SPAN></B>Beninteso, in presenza di immagini o forme illustrative che perci&#242; vanno conservate in stampa occorre una routine pi&#249; mirata, che cio&#232; occulti solo oggetti indesiderati.</FONT></P></DIV>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri><SPAN style="mso-no-proof: yes">Come non ci vuol molto a capire <?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /><st1:PersonName ProductID="la prima Sub" w:st="on">la prima Sub</st1:PersonName> al primo richiamo con <I style="mso-bidi-font-style: normal">Vis = False</I></SPAN> nasconde tutte le forme, inclusi i controlli ActiveX, anch&#8217;essi assimilati a <B style="mso-bidi-font-weight: normal"><I style="mso-bidi-font-style: normal">Shapes</I></B> e inclusi in tale insieme, mentre con <I style="mso-bidi-font-style: normal">Vis = True </I>li visualizza tutti di nuovo. Pertanto l&#8217;istruzione centrale di anteprima (o di stampa tout court) dovrebbe essere corretta, giusto? Sbagliato. I controlli classici non sono stampati ma quelli ActiveX anche se messi fuori vista vengono di fatto stampati.</FONT></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>Tuttavia l&#8217;inconveniente pu&#242; essere ovviato (o inesistente) in Excel, dove esistono pi&#249; fogli di lavoro, basta che i dati da stampare si trovino su un foglio (ad esempio riepilogativo) esente da controlli incorporati.</FONT></P>
<H2 style="MARGIN: 12pt 0cm 3pt"><EM><FONT face=Cambria>Il caso Word (con difficolt&#224; iniziali varie)</FONT></EM></H2>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>La situazione &#232; meno felice in Word, ove il documento &#232; unico, soprattutto perch&#233; qui non esistono i controlli-classici di Excel, ma soltanto gli ActiveX. Non occultabili a monte della stampa, come gi&#224; visto con Excel. La situazione appare imbarazzante quando si lavora nel mondo <B style="mso-bidi-font-weight: normal">VSTO</B>. Una soluzione brutale l&#8217;avrei anche trovata e la riporto in fondo al presente post, ma non pare troppo soddisfacente. Prima di proseguire trovo importante una premessa. I VSTO tradiscono diverse aspettative per chi pensa di ottenerne una sorta di applicativi office-oriented. Ecco i punti pi&#249; imbarazzanti:</FONT></P>
<UL style="MARGIN-TOP: 0cm" type=disc>
<LI style="MARGIN: 0cm 0cm 10pt; mso-list: l3 level1 lfo1" class=MsoNormal><FONT face=Calibri><B style="mso-bidi-font-weight: normal">In Excel, </B>il mancato supporto di <I style="mso-bidi-font-style: normal">funzioni d&#8217;utente </I>(<B style="mso-bidi-font-weight: normal">UDF</B>, User Defined Function) implementate con codice .NET;<B style="mso-bidi-font-weight: normal"><o:p></o:p></B></FONT> 
<LI style="MARGIN: 0cm 0cm 10pt; mso-list: l3 level1 lfo1" class=MsoNormal><FONT face=Calibri><B style="mso-bidi-font-weight: normal">In Word</B>, all&#8217;impossibilit&#224; di associare a routine scorciatoie di tastiera &#8211; comode e &#8220;naturali&#8221; visto che la digitazione qui regna sovrana - si unisce l&#8217;assenza di tali routine nel modulo <B style="mso-bidi-font-weight: normal">Normal.dot</B>, che ne consente l&#8217;utilizzo <I style="mso-bidi-font-style: normal">con qualunque documento</I>.</FONT></LI></UL>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>In questi casi (e altri di cui non mi sovviene) l&#8217;imbarazzo deriva dal fatto che <U>tali preziose funzionalit&#224; restano possibili con il buon vecchio sistema di macro VBA anche con un &#8220;applicativo&#8221; VSTO</U>. Ma in tal modo la security del managed code va un poco a farsi benedire. O no?</FONT></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>Rimanendo a quel che passa il convento Word VSTO, che strumenti ci offre per ottenere un qualche <B style="mso-bidi-font-weight: normal">MioDoc.xlx </B>che abbia un minino di valenza applicativa, magari &#8220;dedicata&#8221; e semichiusa?&nbsp;A dire il vero,&nbsp;le possibilit&#224; sono notevolissime, basti pensare al <I style="mso-bidi-font-style: normal">trattamento di archivi Open XML su disco </I>con <st1:PersonName ProductID="la specifica API SDK" w:st="on"><st1:PersonName ProductID="la specifica API" w:st="on">la specifica API</st1:PersonName> SDK</st1:PersonName> 1.0 + LINQ o <st1:PersonName ProductID="la nuova SDK" w:st="on">la nuova SDK</st1:PersonName> 2.0 &#8220;strongly typed&#8221;. Prossimamente conto di offrirne almeno un esempio, in cui un intervallo o una tabella Excel vengono importati nel documento Word. Ma la domanda cruciale &#232; la seguente:</FONT></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><I style="mso-bidi-font-style: normal"><FONT face=Calibri>Come lanciare in modo semplice funzionalit&#224; del genere?<o:p></o:p></FONT></I></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>Confesso che&nbsp;all'inizio non ho avuto modo n&#233; tempo per esaminare soluzioni avanzate, in primo luogo un Ribbon opportunamente personalizzato. Fra le &#8220;semplici&#8221; evocate test&#233; dalla domanda&nbsp;comincio con&nbsp;l'annoverare due possibilit&#224;:</FONT></P>
<P style="TEXT-INDENT: -18pt; MARGIN: 0cm 0cm 10pt 36pt; mso-list: l0 level1 lfo2" class=MsoNormal><SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"><SPAN style="mso-list: Ignore">&#216;<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp; </SPAN></SPAN></SPAN><FONT face=Calibri>Controlli ActiveX incorporati in cima al documento, tipicamente un paio di pulsanti, <B style="mso-bidi-font-weight: normal">Button1 </B>e <B style="mso-bidi-font-weight: normal">Button2</B>;</FONT></P>
<P style="TEXT-INDENT: -18pt; MARGIN: 0cm 0cm 10pt 36pt; mso-list: l0 level1 lfo2" class=MsoNormal><SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"><SPAN style="mso-list: Ignore">&#216;<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp; </SPAN></SPAN></SPAN><FONT face=Calibri><st1:PersonName ProductID="La finestra Azione" w:st="on">La finestra <B style="mso-bidi-font-weight: normal">Azione</B></st1:PersonName><B style="mso-bidi-font-weight: normal"> documenti </B>(<B style="mso-bidi-font-weight: normal">Actions pane</B>).</FONT></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>Il secondo metodo si presenta pi&#249; allettante, in quanto tale pannello si colloca alla destra del documento e promette di scatenare le azioni da noi desiderate evitando di incorporare alcunch&#233; nel documento. Ma qui cominciano le dolenti note, almeno in prima battuta (per fortuna, in fondo al post c'&#232; il lieto fine):</FONT></P>
<P style="TEXT-INDENT: -18pt; MARGIN: 0cm 0cm 10pt 36pt; mso-list: l2 level1 lfo3" class=MsoNormal><SPAN style="mso-bidi-font-family: Calibri"><SPAN style="mso-list: Ignore"><FONT face=Calibri>1)</FONT><SPAN style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN></SPAN><FONT face=Calibri>Non &#232; possibile caricare l&#8217;Actions pane nell&#8217;IDE VSTO di Word, lo si pu&#242; fare solo con il Word &#8220;normale&#8221;;</FONT></P>
<P style="TEXT-INDENT: -18pt; MARGIN: 0cm 0cm 10pt 36pt; mso-list: l2 level1 lfo3" class=MsoNormal><SPAN style="mso-bidi-font-family: Calibri"><SPAN style="mso-list: Ignore"><FONT face=Calibri>2)</FONT><SPAN style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN></SPAN><FONT face=Calibri>esso non viene in alcun modo &#8220;visto&#8221; da macro VBA, contrariamente a quel che avviene nel mondo VSTO.</FONT></P>
<P style="TEXT-INDENT: -18pt; MARGIN: 0cm 0cm 10pt 36pt; mso-list: l2 level1 lfo3" class=MsoNormal><SPAN style="mso-bidi-font-family: Calibri"><SPAN style="mso-list: Ignore"><FONT face=Calibri>3)</FONT><SPAN style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN></SPAN><FONT face=Calibri>Nel Word normale non c&#8217;&#232; alcun verso di inserire controlli nell&#8217;Actions pane, mentre l&#8217;operazione si direbbe consentita in ambiente VSTO, perch&#233; <U>all'inizio non&nbsp;si riesce a farlo (ma il modo esiste, v. alla fine!)</U></FONT></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>Le operazioni di cui al primo punto sono tediose e per pigrizia non le riporto in dettaglio. Dico solo che si parte col pulsante Office, attivando <B style="mso-bidi-font-weight: normal"><I style="mso-bidi-font-style: normal">Opzioni di Word...</I></B><I style="mso-bidi-font-style: normal"> </I>quindi<B style="mso-bidi-font-weight: normal"> Componenti aggiuntivi</B><I style="mso-bidi-font-style: normal"> </I>ecc. Dopo di che per visualizzare il sospirato pannello si agisce sulla scheda <B style="mso-bidi-font-weight: normal"><I style="mso-bidi-font-style: normal">Sviluppo</I> </B>seguita da <B style="mso-bidi-font-weight: normal">Pacchetti di espansione </B>e via di seguito<SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Calibri','sans-serif'; FONT-SIZE: 11pt; mso-fareast-font-family: Calibri; mso-ansi-language: IT; mso-bidi-font-family: 'Times New Roman'; mso-fareast-language: EN-US; mso-bidi-language: AR-SA">, operazioni queste fattibili pure nei VSTO (ma che confusione, non &#232; vero?)</SPAN>.</FONT></P>
<H2 style="MARGIN: 12pt 0cm 3pt"><EM><FONT face=Cambria>Un po&#8217; di codice managed</FONT></EM></H2>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>Nei VSTO di Word tutte le routine, di regola, sono racchiuse nella classe <B style="mso-bidi-font-weight: normal"><I style="mso-bidi-font-style: normal">ThisDocument</I></B>.<B style="mso-bidi-font-weight: normal"><I style="mso-bidi-font-style: normal"> </I></B>Per non scontentare impazienti e frettolosi riporto subito i miei primi tentativi esplorativi, riusciti.</FONT></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt">Public</SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt"> <SPAN style="COLOR: blue">Class</SPAN> ThisDocument<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt"><o:p>&nbsp;</o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt"><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN></SPAN><SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US>Private</SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US> <SPAN style="COLOR: blue">Sub</SPAN> ThisDocument_Startup(<SPAN style="COLOR: blue">ByVal</SPAN> sender <SPAN style="COLOR: blue">As</SPAN> <SPAN style="COLOR: blue">Object</SPAN>, <SPAN style="COLOR: blue">ByVal</SPAN> e <SPAN style="COLOR: blue">As</SPAN> System.EventArgs) <SPAN style="COLOR: blue">Handles</SPAN> <SPAN style="COLOR: blue">Me</SPAN>.Startup<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="COLOR: blue">If</SPAN> MessageBox.Show(<SPAN style="COLOR: #a31515">"Cuc&#249;, sono "</SPAN> &amp; <SPAN style="COLOR: blue">Me</SPAN>.Name &amp; _ <o:p></o:p></SPAN></P>
<P style="TEXT-ALIGN: left; LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal align=left><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt"><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>vbLf &amp; <SPAN style="COLOR: #a31515">"Due pi&#249; due = quattro?"</SPAN>, , MessageBoxButtons.YesNo) _<o:p></o:p></SPAN></P>
<P style="TEXT-ALIGN: left; LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal align=left><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt"><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>= DialogResult.Yes <SPAN style="COLOR: blue">Then<o:p></o:p></SPAN></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt"><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>MsgBox(<SPAN style="COLOR: #a31515">"Bravo! Sette pi&#249;"</SPAN>)<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt"><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="COLOR: blue">End</SPAN> <SPAN style="COLOR: blue">If<o:p></o:p></SPAN></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt"><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US>ActiveWindow.ActivePane.View.Zoom.Percentage = 100<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt">ActionsPane.Show()<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt"><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="COLOR: blue">End</SPAN> <SPAN style="COLOR: blue">Sub<o:p></o:p></SPAN></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt"><o:p>&nbsp;</o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="COLOR: blue">Private</SPAN> <SPAN style="COLOR: blue">Sub</SPAN> ThisDocument_Shutdown(<SPAN style="COLOR: blue">ByVal</SPAN> sender <SPAN style="COLOR: blue">As</SPAN> <SPAN style="COLOR: blue">Object</SPAN>, <SPAN style="COLOR: blue">ByVal</SPAN> e <SPAN style="COLOR: blue">As</SPAN> System.EventArgs) <SPAN style="COLOR: blue">Handles</SPAN> <SPAN style="COLOR: blue">Me</SPAN>.Shutdown<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><o:p>&nbsp;</o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="COLOR: blue">End</SPAN> <SPAN style="COLOR: blue">Sub<o:p></o:p></SPAN></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><o:p>&nbsp;</o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="COLOR: blue">Private</SPAN><SPAN style="COLOR: green"> Sub ActionsPane_Click(</SPAN><SPAN style="COLOR: blue">ByVal</SPAN><SPAN style="COLOR: green"> sender </SPAN><SPAN style="COLOR: blue">As</SPAN> <SPAN style="COLOR: blue">Object</SPAN>, <SPAN style="COLOR: blue">ByVal</SPAN> e <SPAN style="COLOR: blue">As</SPAN> System.EventArgs) <SPAN style="COLOR: blue">Handles</SPAN> ActionsPane. Click<SPAN style="COLOR: green"><o:p></o:p></SPAN></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;</SPAN></SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt">MsgBox</SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US>(</SPAN><SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #a31515; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt">"Action pan cliccato!")</SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt"><o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="COLOR: green">End Sub<o:p></o:p></SPAN></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><o:p>&nbsp;</o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="COLOR: blue">Private</SPAN> <SPAN style="COLOR: blue">Sub</SPAN> ActionsPane_DoubleClick(<SPAN style="COLOR: blue">ByVal</SPAN> sender <SPAN style="COLOR: blue">As</SPAN> <SPAN style="COLOR: blue">Object</SPAN>, <SPAN style="COLOR: blue">ByVal</SPAN> e <SPAN style="COLOR: blue">As</SPAN> System.EventArgs) <SPAN style="COLOR: blue">Handles</SPAN> ActionsPane.DoubleClick<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt">MsgBox(<SPAN style="COLOR: #a31515">"Hai dato un doppio clic sull'ActionsPane. </SPAN></SPAN><SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #a31515; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US>Bravo!"</SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US>)<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="COLOR: blue">End</SPAN> <SPAN style="COLOR: blue">Sub<o:p></o:p></SPAN></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><o:p>&nbsp;</o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="COLOR: blue">Private</SPAN> <SPAN style="COLOR: blue">Sub</SPAN> ActionsPane_MouseDoubleClick(<SPAN style="COLOR: blue">ByVal</SPAN> sender <SPAN style="COLOR: blue">As</SPAN> <SPAN style="COLOR: blue">Object</SPAN>, <SPAN style="COLOR: blue">ByVal</SPAN> e <SPAN style="COLOR: blue">As</SPAN> System.Windows.Forms.MouseEventArgs) <SPAN style="COLOR: blue">Handles</SPAN> ActionsPane.MouseDoubleClick<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt">MsgBox(<SPAN style="COLOR: #a31515">"Hai dato un doppio clic. Bravo!"</SPAN>)<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt"><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="COLOR: blue">End</SPAN> <SPAN style="COLOR: blue">Sub<o:p></o:p></SPAN></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt"><o:p>&nbsp;</o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="COLOR: blue">Private</SPAN> <SPAN style="COLOR: blue">Sub</SPAN> Button1_Click(<SPAN style="COLOR: blue">ByVal</SPAN> sender <SPAN style="COLOR: blue">As</SPAN> <SPAN style="COLOR: blue">Object</SPAN>, <SPAN style="COLOR: blue">ByVal</SPAN> e <SPAN style="COLOR: blue">As</SPAN> System.EventArgs) <SPAN style="COLOR: blue">Handles</SPAN> Button1.Click<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>MsgBox(<SPAN style="COLOR: #a31515">"Bubbusette!"</SPAN>)<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="COLOR: blue">End</SPAN> <SPAN style="COLOR: blue">Sub<o:p></o:p></SPAN></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="COLOR: blue">Private</SPAN> <SPAN style="COLOR: blue">Sub</SPAN> Button2_Click(<SPAN style="COLOR: blue">ByVal</SPAN> sender <SPAN style="COLOR: blue">As</SPAN> System.Object, <SPAN style="COLOR: blue">ByVal</SPAN> e <SPAN style="COLOR: blue">As</SPAN> System.EventArgs) <SPAN style="COLOR: blue">Handles</SPAN> Button2.Click<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>MsgBox(<SPAN style="COLOR: #a31515">"Bubbuotto!"</SPAN>)<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="COLOR: blue">End</SPAN> <SPAN style="COLOR: blue">Sub<o:p></o:p></SPAN></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US>End</SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US> <SPAN style="COLOR: blue">Class<o:p></o:p></SPAN></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US" lang=EN-US><o:p>&nbsp;</o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>Premesso che in testa al documento erano stati inseriti due controlli Button (scegliere nella sezione Controlli comuni o anche Windows Form), le routine messaggistiche ad essi abbinate sono banali, anzi ridicole. Pi&#249; interessante la Sub dell&#8217;evento <B style="mso-bidi-font-weight: normal"><I style="mso-bidi-font-style: normal">ThisDocument_Startup </I></B>ovviamente equivalente alla <I style="mso-bidi-font-style: normal">Document_Open </I>di Word normale entrambe scatenantesi al caricamento del documento. Interessanti e, come ripeto, possibili solo coi VSTO non tanto le prime istruzioni di squallido umorismo bens&#236; le ultime due, entrambe richieste per visualizzare il sospirato riquadro di cui si parla. Richieste e, direi, indispensabili affinch&#233; abbiano concreto utilizzo le altre, relative a due degli eventi dell&#8217;<I style="mso-bidi-font-style: normal">oggetto </I><B style="mso-bidi-font-weight: normal">ActionsPane</B>. Questi sono una vera caterva, come &#232; facile scoprire.</FONT></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>Io mi sono limitato ai tre pi&#249; semplici, abbinando a ciascuno stupidissimi messaggi. Mi sarei anche accontentato di surrogare con essi &#8211;nell&#8217;incapacit&#224; autolesionisticamente ammessa di inserire controlli nel fatidico pannello &#8211; un paio di funzionalit&#224; magari anche potenti &amp; evolute. Purtroppo si incappa in altre due non del tutto piacevoli sorprese:</FONT></P>
<UL style="MARGIN-TOP: 0cm" type=disc>
<LI style="MARGIN: 0cm 0cm 10pt; mso-list: l1 level1 lfo4" class=MsoNormal><FONT face=Calibri>L&#8217;evento <B style="mso-bidi-font-weight: normal"><I style="mso-bidi-font-style: normal">Click </I></B>predomina sugli altri due, e li &#8220;oscura&#8221;per cui, volendoli usare occorre rinunciare al Click;</FONT> 
<LI style="MARGIN: 0cm 0cm 10pt; mso-list: l1 level1 lfo4" class=MsoNormal><FONT face=Calibri>In compenso gli altri due sono <I style="mso-bidi-font-style: normal">sinonimi </I>per cui una doppia cliccata li scatena entrambi, uno di seguito all&#8217;altro (questo punto non &#232; grave n&#233; del tutto inatteso, resta solo la domanda sul motivo per cui un medesimo evento abbia due nomi distinti, sottigliezza che non sono in grado di comprendere...).</FONT></LI></UL>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>Rimanendo nel quadro dei tentativi iniziali ecco poi, sotto forma di macro VBA, il codice brute-force per evitare di stampare i due pulsanti ipotizzati in cima al documento, <U>nelle sue prime due righe</U>:</FONT></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt">Sub MiaStampa()</SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN></SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US>Selection.HomeKey Unit:=wdStory<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>Selection.MoveDown Unit:=wdLine, Count:=2, Extend:=wdExtend<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>Selection.Cut<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>MsgBox "Adesso stampo!"<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>. . .<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>istruzioni di Stampa . . .<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>Selection.Paste<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt">End Sub<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"><o:p>&nbsp;</o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT face=Calibri>La brutalit&#224; dipende dal taglio (<I style="mso-bidi-font-style: normal">Cut</I>) delle prime due righe, previa selezione delle medesime e, con esse, dei due bottoni. Niente paura, perch&#233; a valle della stampa essi vengono re-incollati (<I style="mso-bidi-font-style: normal">Paste</I>)assieme alle due righe. Addirittura la routine funziona anche se evocata da uno dei pulsanti. Provare per credere con:</FONT></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt">Private Sub CommandButton1_Click()<o:p></o:p></SPAN></P>
<P style="LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>MiaStampa<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt">End Sub</SPAN></P><SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-bidi-font-size: 10.0pt">
<H2 style="MARGIN: 12pt 0cm 3pt"><EM><FONT face=Cambria>Ma i controlli si possono inserire nell&#8217;Action pane!</FONT></EM></H2>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT size=3 face=Calibri>Come? Una tormentosa ricerca su MSDN me l&#8217;ha fatto capire. Meglio tardi che mai.</FONT></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT size=3 face=Calibri>Il segreto di questo preannunciato lieto fine &#232; presto detto:</FONT></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><STRONG><FONT size=4 face=Calibri><EM>Pulsanti e controlli di ogni tipo si possono inserire nell'Action pane,. ma non lo si pu&#242; fare manualmente, ma dinamicamente, tramite codice ad hoc.&nbsp;</EM></FONT></STRONG></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT size=3 face=Calibri>Le delucidazioni su MSDN parlano il linguaggio di chi s&#8217;intende di .NET, la qual cosa pu&#242; essere criptica e scoraggiante per i praticoni come il sottoscritto e, in genere, per chi &#232; alle... seconde armi con Visual Studio.</FONT></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT size=3 face=Calibri>Di fatto, per fortuna basta osare, ottenendo il risultato espresso dal codice seguente:</FONT></P>
<P style="TEXT-ALIGN: left; LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal align=left><SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-language: IT" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>Private</SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-language: IT" lang=EN-US> <SPAN style="COLOR: blue">Sub</SPAN> ThisDocument_Startup(<SPAN style="COLOR: blue">ByVal</SPAN> sender <SPAN style="COLOR: blue">As</SPAN> <SPAN style="COLOR: blue">Object</SPAN>, <SPAN style="COLOR: blue">ByVal</SPAN> e <SPAN style="COLOR: blue">As</SPAN> System.EventArgs) <SPAN style="COLOR: blue">Handles</SPAN> <SPAN style="COLOR: blue">Me</SPAN>.Startup<o:p></o:p></SPAN></P>
<P style="TEXT-ALIGN: left; LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal align=left><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-language: IT" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="COLOR: blue">Dim</SPAN> MioButton <SPAN style="COLOR: blue">As</SPAN> <SPAN style="COLOR: blue">New</SPAN> Button()<o:p></o:p></SPAN></P>
<P style="TEXT-ALIGN: left; LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal align=left><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-language: IT" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>MioButton.Text = <SPAN style="COLOR: #a31515">"Clicca"<o:p></o:p></SPAN></SPAN></P>
<P style="TEXT-ALIGN: left; LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal align=left><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-language: IT" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="COLOR: blue">AddHandler</SPAN> MioButton.Click, <SPAN style="COLOR: blue">AddressOf</SPAN> MioButton_Click<o:p></o:p></SPAN></P>
<P style="TEXT-ALIGN: left; LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal align=left><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-language: IT" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>ActionsPane.Controls.Add(MioButton)<o:p></o:p></SPAN></P>
<P style="TEXT-ALIGN: left; LINE-HEIGHT: normal; MARGIN: 6pt 0cm; mso-layout-grid-align: none" class=MsoNormal align=left><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-language: IT" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>. . . <B style="mso-bidi-font-weight: normal">O M I S S I S . . .<SPAN style="COLOR: blue"><o:p></o:p></SPAN></B></SPAN></P>
<P style="TEXT-ALIGN: left; LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal align=left><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-language: IT" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>ActiveWindow.ActivePane.View.Zoom.Percentage = 100<o:p></o:p></SPAN></P>
<P style="TEXT-ALIGN: left; LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal align=left><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-language: IT" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>ActionsPane.Show()<o:p></o:p></SPAN></P>
<P style="TEXT-ALIGN: left; LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal align=left><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-language: IT" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="COLOR: blue">End</SPAN> <SPAN style="COLOR: blue">Sub<o:p></o:p></SPAN></SPAN></P>
<P style="TEXT-ALIGN: left; LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal align=left><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-language: IT" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="COLOR: blue">Private</SPAN> <SPAN style="COLOR: blue">Sub</SPAN> MioButton_Click(<SPAN style="COLOR: blue">ByVal</SPAN> sender <SPAN style="COLOR: blue">As</SPAN> <SPAN style="COLOR: blue">Object</SPAN>, <SPAN style="COLOR: blue">ByVal</SPAN> e <SPAN style="COLOR: blue">As</SPAN> EventArgs)<o:p></o:p></SPAN></P>
<P style="TEXT-ALIGN: left; LINE-HEIGHT: normal; MARGIN: 0cm 0cm 0pt; mso-layout-grid-align: none" class=MsoNormal align=left><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-language: IT" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;</SPAN></SPAN><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-fareast-language: IT">MsgBox(<SPAN style="COLOR: #a31515">"Hai cliccato sul MioButton dell'Action pane!!!"</SPAN>)<o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-fareast-language: IT"><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="COLOR: blue">End</SPAN> <SPAN style="COLOR: blue">Sub<o:p></o:p></SPAN></SPAN></P>
<P style="TEXT-ALIGN: left; LINE-HEIGHT: normal; MARGIN: 6pt 0cm; mso-layout-grid-align: none" class=MsoNormal align=left><SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-language: IT" lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>. . . <B style="mso-bidi-font-weight: normal">O M I S S I S . . .<SPAN style="COLOR: blue"><o:p></o:p></SPAN></B></SPAN></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-language: IT" lang=EN-US>End</SPAN><SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes; mso-bidi-font-size: 10.0pt; mso-ansi-language: EN-US; mso-fareast-language: IT" lang=EN-US> <SPAN style="COLOR: blue">Sub<o:p></o:p></SPAN></SPAN></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT size=3 face=Calibri>Per la delizia dei sapientoni in MSDN&nbsp;si spiega che sono in gioco i cosiddetti &#8220;delegati&#8221;... Studiate gente, ma noi praticoni per ora ci possiamo accontentare del caso appena visto, commentando le varie istruzioni (che cos&#236; dovrebbero risultare eloquenti).</FONT></P>
<P style="TEXT-INDENT: -18pt; MARGIN: 0cm 0cm 10pt 36pt; mso-list: l0 level1 lfo1" class=MsoNormal><SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"><SPAN style="mso-list: Ignore"><FONT size=3>&#216;</FONT><SPAN style="FONT: 7pt 'Times New Roman'">&nbsp; </SPAN></SPAN></SPAN><FONT size=3 face=Calibri>-all&#8217;avvio del documento (evento <I style="mso-bidi-font-style: normal">Startup</I>) viene creato un nuovo pulsante <B style="mso-bidi-font-weight: normal"><I style="mso-bidi-font-style: normal">MioButton</I></B>, qui etichettato col banale &#8220;Clicca&#8221;;</FONT></P>
<P style="TEXT-INDENT: -18pt; MARGIN: 0cm 0cm 10pt 36pt; mso-list: l0 level1 lfo1" class=MsoNormal><SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"><SPAN style="mso-list: Ignore"><FONT size=3>&#216;</FONT><SPAN style="FONT: 7pt 'Times New Roman'">&nbsp; </SPAN></SPAN></SPAN><FONT size=3 face=Calibri>Subito viene definito, anzi aggiunto un, diciamo cos&#236;, &#8220;manipolatore&#8221; (<I style="mso-bidi-font-style: normal">AddHandler</I>) dell&#8217;evento <B style="mso-bidi-font-weight: normal"><I style="mso-bidi-font-style: normal">Click </I></B>del <I style="mso-bidi-font-style: normal">MioButton<STRONG> </STRONG></I>&#8220;indirizzato&#8221; (<I style="mso-bidi-font-style: normal">AddressOf</I>) allo stesso <I style="mso-bidi-font-style: normal">MioButton </I>(l&#8217;indirizzamento pu&#242; anche puntare a un altro controllo... cosa in genere da evitare, perch&#233; fonte di confusione...);</FONT></P>
<P style="TEXT-INDENT: -18pt; MARGIN: 0cm 0cm 10pt 36pt; mso-list: l0 level1 lfo1" class=MsoNormal><SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"><SPAN style="mso-list: Ignore"><FONT size=3>&#216;</FONT><SPAN style="FONT: 7pt 'Times New Roman'">&nbsp; </SPAN></SPAN></SPAN><FONT size=3 face=Calibri>A questo punto,<U>a valle della routine di&nbsp;StartUp</U>, si definisce la&nbsp;Sub dell&#8217;evento <B style="mso-bidi-font-weight: normal"><I style="mso-bidi-font-style: normal">MioButton_Click </I></B>del tutto simile a quella di ogni button, interno o anche esterno all&#8217;Action pane.</FONT></P>
<P style="MARGIN: 0cm 0cm 10pt" class=MsoNormal><FONT size=3 face=Calibri>Per completezza, riporto infine un&#8217;istruzione che consente di inserire una serie di pulsanti (o, in genere, controlli) preliminarmente creati e definiti:</FONT></P>
<P style="LINE-HEIGHT: 140%; MARGIN: 0cm 0cm 0pt; VERTICAL-ALIGN: top; WORD-BREAK: break-all; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" class=MsoNormal><SPAN style="LINE-HEIGHT: 140%; FONT-FAMILY: 'Courier New'; COLOR: black; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: IT" lang=EN-US>.ActionsPane.Controls.AddRange(</SPAN><SPAN style="LINE-HEIGHT: 140%; FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: IT" lang=EN-US>New</SPAN><SPAN style="LINE-HEIGHT: 140%; FONT-FAMILY: 'Courier New'; COLOR: black; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: IT" lang=EN-US> Control(){button1, button2, butt