Manuale dell'utente di Microsoft Office Code Compatibility Inspector

Office 2010
 

Si applica a: Office 2010

Ultima modifica dell'argomento: 2012-01-27

Microsoft Office Code Compatibility Inspector consente di risolvere i problemi relativi alla compatibilità per le macro e i componenti aggiuntivi di Microsoft Visual Basic, Applications Edition (VBA).

Utilizzare questo strumento per controllare il codice VBA creato in versioni precedenti di Microsoft Office e per semplificare la conversione di eventuali chiamate API (Application Programming Interface) di Windows presenti nel codice in modo che siano compatibili con l'edizione a 64 bit di Microsoft Office 2010.

Contenuto dell'articolo:

Microsoft Office Code Compatibility Inspector è progettato per aiutare le organizzazioni e le piccole aziende ad aggiornare il codice Visual Basic, Applications Edition (VBA) e Visual Studio Tools per Office in modo che sia compatibile con Office 2010. Inspector non corregge il codice, bensì lo controlla e quindi aggiunge commenti per le righe di codice specifiche che fanno riferimento a elementi nel modello a oggetti che sono stati modificati o deprecati (nel codice VBA lo strumento aggiunge commenti anche per le istruzioni Declare relativi alla compatibilità a 64 bit). È quindi possibile modificare il codice in base ai commenti o utilizzare i collegamenti inclusi nei commenti per visualizzare argomenti sul Web che riguardano una specifica riga del codice.

Anche in questo caso, è compito dell'utente modificare il codice se ritiene che debba essere modificato.

Le caratteristiche principali di Office Code Compatibility Inspector includono le seguenti:

  • È costituito da quattro componenti aggiuntivi che vengono caricati, un componente aggiuntivo per ogni applicazione, in Excel 2010, PowerPoint 2010, Word 2010 e Visual Studio 2008.

  • Viene eseguito per singoli utenti o per singoli documenti. Nel caso di VBA, gli utenti aprono un documento ed eseguono lo strumento dalla scheda Sviluppo. Per i progetti Visual Studio, lo sviluppatore esegue lo strumento dal menu Strumenti.

  • Analizza i progetti nel documento o nella soluzione di Visual Studio corrente utilizzando una ricerca di testo, cercando combinazioni parentObject.Property e analizzando le istruzioni Declare per verificare la compatibilità a 64 bit (in VBA).

  • Aggiunge commenti al codice quando trova altri potenziali problemi.

  • Mostra un riepilogo e un report dettagliato dei risultati al termine del controllo.

Non è possibile utilizzare questo strumento per controllare codice di Microsoft Outlook o Microsoft Access. Tuttavia, è possibile utilizzarlo per controllare codice di Excel, PowerPoint e Word per l'interazione con il modello a oggetti di Outlook.

Per installare Office Code Compatibility Inspector, eseguire la procedura seguente:

  1. Scaricare la versione Update 1 di Office Code Compatibility Inspector da Strumento di Office 2010: Compatibility Inspector (le informazioni potrebbero essere in lingua inglese) (http://go.microsoft.com/fwlink/?linkid=171093&clcid=0x410) (le informazioni potrebbero essere in lingua inglese). Salvare il file scaricato sul desktop o in un altro percorso a scelta e quindi individuarlo e aprirlo per avviare l'installazione.

    • È possibile scegliere di installare solo il componente aggiuntivo per Visual Studio.

    • È possibile scegliere di installare solo i componenti aggiuntivi per Office.

    • In alternativa, è possibile scegliere di installare entrambi.

  2. Seguire le istruzioni e quindi fare clic su Fine per completare l'installazione.

Per ogni applicazione Office in cui si intende utilizzare lo strumento, eseguire le operazioni seguenti:

  1. Aprire Excel 2010, PowerPoint 2010 o Word 2010, se non è già aperto.

  2. Nella scheda File scegliere Opzioni.

  3. Scegliere Personalizzazione barra multifunzione.

  4. In Scegli comandi da nella parte sinistra della finestra di dialogo scegliere Comandi più utilizzati.

  5. In Personalizza barra multifunzione nella parte laterale della finestra di dialogo scegliere Schede principali e quindi selezionare la casella di controllo Sviluppo.

  6. Fare clic su OK.

Per ogni applicazione Office in cui si intende utilizzare lo strumento, eseguire le operazioni seguenti:

  1. Aprire Excel 2010, PowerPoint 2010 o Word 2010, se non è già aperto.

  2. Nella scheda File scegliere Opzioni.

  3. Scegliere Centro protezione.

  4. Scegliere Impostazioni Centro protezione.

  5. Nella scheda Impostazioni macro selezionare Considera attendibile l'accesso al modello a oggetti dei progetti VBA.

Per controllare la compatibilità di un documento, eseguire la procedura seguente:

  1. Aprire il documento in Excel 2010, PowerPoint 2010 o Word 2010.

  2. Nella scheda Sviluppo scegliere Inspect VBA Code.

    Figura 1. Opzioni di Code Compatibility Inspector nella scheda Sviluppo

    Opzioni di controllo nella scheda Sviluppo
  3. Nella finestra di dialogo Inspect VBA Project selezionare o deselezionare le opzioni desiderate e quindi scegliere Inspect.

    Figura 2. Finestra di dialogo Inspect VBA Project

    Finestra di dialogo per il controllo del progetto VBA
    1. Scegliere Inspect Visual Basic for Application Projects per controllare se nel progetto VBA sono presenti elementi del modello a oggetti che sono stati modificati o rimossi.

    2. Scegliere Inspect Declare statements se il progetto verrà eseguito solo su Office 2010 o in un sistema che esegue la versione di Office 2010 a 64 bit.

    3. Scegliere Add comments per inserire commenti nel codice quando lo strumento identifica potenziali problemi di compatibilità. I commenti aggiunti da Inspector sono simili a quelli mostrati nell'esempio seguente.

      '<VBA_INSPECTOR>
      '      <DEPRECATION>
      '        <MESSAGE>Potentially contains ... </MESSAGE>
      '        <ITEM>AnswerWizard.ResetFileList</ITEM>
      '        <URL>http://go.microsoft.com/fwlink/?linkid=171730&clcid=0x410
      
    4. Scegliere Detailed Report per creare un report alla fine del processo di controllo. Il report è un file di testo simile a quello mostrato nell'esempio seguente.

      SUMMARY:
      ========
      
      Document scanned:        c:\TestFile.xls
      Date Scanned:            Thursday, November 12, 2009
      Total lines scanned:     101
      Total items found:       1
      Deprecated items:        0
      Changed items:           1
      Redesigned items:        0
      Declare statements:      0
      
      DETAILS:
      ========
      
      MODULE:            Module1
      FUNCTION:          Macro1
      LINE:              19
      TYPE:              CHANGE
      ITEM:              Workbook.VBProject
      URL:               http://go.microsoft.com/fwlink/?linkid=170116&clcid=0x410:              For Each comp In
      ActiveWorkbook.VBProject.VBComponents
      
      
  4. Al termine dell'analisi di Inspector, viene visualizzato un report di riepilogo simile al seguente.

    Figura 2a. Riepilogo di Code Compatibility Inspector

    Riepilogo del controllo della compatibilità del codice
    • Total lines scanned: numero totale di righe del codice VBA analizzate nel documento.

    • Total items found: numero totale di elementi problematici rilevati da Inspector nel codice, tra cui istruzioni Declare da aggiornare, elementi modificati, elementi deprecati ed elementi interessati dalle modifiche alla struttura.

    • Deprecated items: elementi nel codice che sono stati rimossi dal modello a oggetti o non sono più supportati in tale modello. Se il codice dipende da un elemento deprecato, è necessario riscrivere tale parte del codice.

    • Changed items: elementi del codice che utilizzano un comando la cui sintassi è stata modificata. Se il codice utilizza una sintassi obsoleta, è necessario aggiornarlo.

    • Redesigned items: elementi del codice la cui sintassi esiste già ed è invariata, ma la cui struttura aggiornata può produrre risultati imprevisti nel codice analizzato. Ad esempio, la formattazione di una specifica casella di testo può essere stata modificata in seguito all'aggiunta di nuovi servizi di testo e, pertanto, il codice potrebbe creare una casella di testo, ma il layout del testo nella casella potrebbe risultare diverso dalle versioni precedenti.

    • Declare statements: il numero totale di istruzioni API di Windows rilevate nel codice VBA e quindi aggiornate per la compatibilità a 64 bit aggiungendo la parola chiave PTRSAFE.

Per controllare la compatibilità di un documento, eseguire la procedura seguente:

  1. Aprire la soluzione che si desidera controllare in Visual Studio Tools per Office.

  2. Scegliere Inspect VSTO Code dal menu Strumenti.

    Figura 3. Menu Tools di VSTO

    Menu di Visual Studio Tools per Office
  3. Nella finestra di dialogo Inspect VSTO Project selezionare o deselezionare le opzioni desiderate e quindi scegliere Inspect.

    Figura 4. Finestra di dialogo Inspect VSTO Project

    Finestra di dialogo per il controllo del progetto di Visual Studio Tools per Office
    1. Selezionare Inspect Visual Studio Tools for Office Source (VB.NET and C#) per controllare il progetto Visual Studio Tools per Office per individuare eventuali elementi nel modello a oggetti che sono stati modificati o rimossi.

    2. Scegliere Add comments per inserire commenti nel codice quando lo strumento identifica potenziali problemi di compatibilità. I commenti aggiunti da Inspector sono simili a quelli mostrati nell'esempio seguente.

      //<VSTO_INSPECTOR>
      //  <DEPRECATION>
      //      <MESSAGE>Potentially contains removed items...</MESSAGE>
      //      <ITEM>[mso]AnswerWizard.ResetFileList</ITEM>
      //      <URL>http://go.microsoft.com/fwlink/?linkid=171730&clcid=0x410
      
    3. Scegliere Detailed Report per creare un report alla fine del processo di controllo. Il report è un file di testo simile a quello mostrato nell'esempio seguente.

      SUMMARY:
      ========
      
      Solution scanned:        ExcelAddIn1
      Date scanned:            Thursday, November 12, 2009
      Total lines scanned:     43
      Total items found:       3
      Deprecated items:        3
      Changed items:           0
      Redesigned items:        0
      
      DETAILS:
      ========
      
      MODULE:      ThisAddIn.cs
      FUNCTION:    ThisAddIn_Startup
      LINE:        17
      TYPE:        DEPRECATION
      APP:         mso
      ITEM:        AnswerWizard
      URL:         http://go.microsoft.com/fwlink/?linkid=171730&clcid=0x410:        xlApp.AnswerWizard.ResetFileList();
      
      MODULE:      ThisAddIn.cs
      FUNCTION:    ThisAddIn_Startup
      LINE:        19
      TYPE:        DEPRECATION
      APP:         xls
      ITEM:        SmartTagRecognizers
      URL:         http://go.microsoft.com/fwlink/?linkid=170614&clcid=0x410:        xlApp.SmartTagRecognizers.Recognize = true;
      
      MODULE:      ThisAddIn.cs
      FUNCTION:    ThisAddIn_Startup
      LINE:        22
      TYPE:        DEPRECATION
      APP:         xls
      ITEM:        SmartTags
      URL:         http://go.microsoft.com/fwlink/?linkid=170617&clcid=0x410:        MessageBox.Show(r.SmartTags.Count.ToString());
      
    4. Scegliere Backup per eseguire il backup dei file del progetto prima di controllare il codice.

  4. Al termine dell'analisi di Inspector, viene visualizzato un report di riepilogo simile al seguente.

    Figura 5. Riepilogo di Code Compatibility Inspector

    Riepilogo del controllo della compatibilità del codice
    • Total lines scanned: numero totale di righe del codice Visual Basic .NET o C# analizzate nel documento.

    • Total items found: numero totale di elementi problematici rilevati da Inspector nel codice, tra cui elementi modificati, elementi deprecati ed elementi interessati dalle modifiche alla struttura.

    • Deprecated items: elementi nel codice che sono stati rimossi dal modello a oggetti o non sono più supportati in tale modello. Se il codice dipende da un elemento deprecato, è necessario riscrivere tale parte del codice.

    • Changed items: elementi del codice che utilizzano un comando la cui sintassi è stata modificata. Se il codice utilizza una sintassi obsoleta, è necessario aggiornarlo.

    • Redesigned items: elementi del codice la cui sintassi esiste già ed è invariata, ma la cui struttura aggiornata può produrre risultati imprevisti nel codice analizzato. Ad esempio, la formattazione di una specifica casella di testo può essere stata modificata in seguito all'aggiunta di nuovi servizi di testo e, pertanto, il codice potrebbe creare una casella di testo, ma il layout del testo nella casella potrebbe risultare diverso dalle versioni precedenti.

    • Declare statements: numero totale di istruzioni API di Windows rilevate nel codice VBA e quindi aggiornate per la compatibilità a 64 bit aggiungendo la parola chiave PTRSAFE.

Se vengono rilevati elementi Changed, Deprecated o Redesigned nel codice, è necessario eseguire il debug del codice e risolvere eventuali problemi. È consigliabile eseguire un test completo sul codice, controllando ogni funzione. Mentre si esegue il debug del codice, controllare i comandi di Office Code Compatibility Inspector sulle righe che interrompono il codice. Tali commenti possono essere utili per determinare il problema alla base di tale specifica riga di codice. Se il problema non è evidente, incollare l'URL presente nei commenti all'interno del browser per ottenere maggiori informazioni.

Per rimuovere i commenti dal codice al termine del processo e verificare la compatibilità con Office 2010 del codice, scegliere Rimuovi commenti nella scheda Sviluppo dell'applicazione Office 2010 in uso.

Inspector rimuoverà tutti i commenti inseriti nel progetto VBA e segnalerà il numero di elementi rimossi.

Figura 6. Messaggio in cui è indicato il numero di elementi rimossi

Messaggio in cui viene specificato il numero di elementi rimossi

Per rimuovere i commenti dal codice al termine del processo e verificare la compatibilità con Office 2010 del codice, scegliere Remove VSTO Inspector Comments dal menu Strumenti di Visual Studio.

Inspector rimuoverà tutti i commenti inseriti nel progetto Visual Studio Tools per Office e segnalerà il numero di elementi rimossi.

Figura 6a. Messaggio in cui è indicato il numero di elementi rimossi

Messaggio in cui viene specificato il numero di elementi rimossi

Mostra: