Condividi tramite


Informazioni sui parametri facoltativi nelle soluzioni Office

Aggiornamento: novembre 2007

Molti dei metodi disponibili nei modelli a oggetti delle applicazioni di Microsoft Office accettano parametri facoltativi. Questi parametri sono facoltativi solo quando si chiama un metodo mediante Visual Basic. Quando si utilizza C# per programmare per un'applicazione di Microsoft Office, è necessario passare un valore per tutti i parametri.

Differenze dei parametri facoltativi in Visual Basic e Visual C#

Se si utilizza Visual Basic per la programmazione per un'applicazione di Microsoft Office, non è necessario passare un valore per ciascun parametro facoltativo in quanto per ogni parametro mancante vengono utilizzati automaticamente i valori predefiniti. Tuttavia, i parametri facoltativi non sono supportati in C#, pertanto è necessario passare un valore al metodo per ogni parametro.

I progetti Visual Studio Tools per Office includono una variabile globale denominata missing assegnata al valore Type.Missing nel codice generato. Questa variabile globale può essere passata per utilizzare il valore predefinito di ciascun parametro facoltativo che accetti un tipo di riferimento, ad esempio Object. Per i parametri facoltativi che accettano un tipo di valore, è necessario passare il valore predefinito effettivo. Per ulteriori informazioni, vedere Passaggio di tipi di valore a parametri facoltativi in Visual C#.

Esempio in Excel

Il metodo Worksheet.CheckSpelling utilizza i seguenti parametri facoltativi che accettano tipi di riferimento:

  • CustomDictionary. Indica se utilizzare un dizionario personalizzato nel caso in cui la parola non sia presente nel dizionario principale.

  • IgnoreUppercase. Indica se ignorare le maiuscole.

  • AlwaysSuggest. Indica se in Excel dovrà essere visualizzato un elenco di suggerimenti alternativi se viene rilevata una parola non corretta.

  • SpellLang. Indica la lingua del dizionario in uso.

È possibile accettare il valore predefinito di questi parametri come indicato nel seguente esempio di codice.

Globals.Sheet1.CheckSpelling()
Globals.Sheet1.CheckSpelling(missing, missing, missing, missing);

Esempio in Word

La chiamata dei metodi di Microsoft Office Word da C#, in genere, è più complessa della chiamata dei metodi per altre applicazioni Office, poiché è necessario passare tutti i parametri facoltativi per riferimento.

Il metodo Document.CheckSpelling, ad esempio, accetta i parametri facoltativi riportati di seguito per il controllo ortografico di un documento di Word:

  • CustomDictionary. Nome file del dizionario personalizzato.

  • IgnoreUppercase. Indica se ignorare le maiuscole.

  • AlwaysSuggest. Indica se in Word dovrà essere visualizzato un elenco di suggerimenti alternativi quando viene rilevata una parola non corretta.

  • CustomDictionary2 – CustomDictionary10. Nomi file dei dizionari personalizzati aggiuntivi. È possibile specificare fino a nove dizionari aggiuntivi.

È possibile accettare il valore predefinito di questi parametri come indicato nel seguente esempio di codice.

Me.CheckSpelling()
this.CheckSpelling(
    ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, 
    ref missing, ref missing, ref missing, ref missing, ref missing, ref missing);

Paggio di tipi di valore a parametri facoltativi in Visual C#

In Visual C#, la variabile globale missing può essere passata solo per i parametri facoltativi che accettano tipi di riferimento. Per i parametri facoltativi che accettano tipi di valore, è necessario determinare e passare il valore predefinito effettivo.

Il metodo Sort della classe NamedRange accetta numerosi valori enumerati come parametri, ad esempio Microsoft.Office.Interop.Excel.XlSortOrder. Poiché si tratta di un tipo valore, è necessario specificare uno dei valori XlSortOrder invece di passare la variabile globale missing.

Per ulteriori informazioni sui parametri di tipo valore e riferimento, vedere Passaggio di argomenti per valore e per riferimento (per Visual Basic) e Passaggio di parametri (Guida per programmatori C#).

Vedere anche

Concetti

Sviluppo di soluzioni Office

Codice gestito e programmazione in Office con Visual Studio

Scrittura di codice nelle soluzioni Office