Accedi con Microsoft
Accedi o crea un account.
Salve,
Seleziona un altro account.
Hai più account
Scegli l'account con cui vuoi accedere.

Per la versione di Microsoft Word 97 di questo articolo, vedere
187985.

Riepilogo

In questo articolo contiene quattro Visual Basic, Applications Edition di Microsoft macro che è possibile utilizzare per emulare il Microsoft Word 6.0 per la funzionalità di Windows del tasto INVIO per lo spostamento tra i campi modulo nei documenti protetti.

Ulteriori informazioni

Microsoft fornisce esempi di programmazione a scopo solamente didattico, senza alcuna garanzia espressa o implicita, comprese, ma non limitate, garanzie implicite di commerciabilità o idoneità per uno scopo particolare. In questo articolo si presuppone che si abbia familiarità con il linguaggio di programmazione in questione e gli strumenti utilizzati per creare ed eseguire il debug delle procedure. Gli esperti Microsoft possono spiegare la funzionalità di una particolare procedura, ma non possono modificare questi esempi per fornire funzionalità aggiuntive o creare procedure atte a soddisfare specifiche esigenze.
Se si dispone di esperienza di programmazione limitata, si consiglia di contattare un Microsoft Certified Partner o i servizi di consulenza Microsoft. Per ulteriori informazioni, visitare i siti Web Microsoft:

Microsoft certificata partner - https://partner.microsoft.com/global/30000104

Microsoft Advisory Services - http://support.microsoft.com/gp/advisoryservice

Per ulteriori informazioni sulle opzioni di supporto disponibili e su come contattare Microsoft, visitare il seguente sito Web Microsoft:http://support.microsoft.com/default.aspx?scid=fh; EN-US; CNTACTMS
Per ulteriori informazioni sull'esecuzione di codice di esempio, fare clic sul numero dell'articolo per visualizzare l'articolo della Microsoft Knowledge Base riportato di seguito:

212536 OFF2000: come eseguire il codice di esempio da articoli della Knowledge Base

Immettere chiave funzionalità in Word 6.0

In Word 6.0 per Windows, se si preme il tasto INVIO in un documento protetto per i moduli, il punto di inserimento si sposta al campo modulo successivo. Al contrario, nelle versioni successive di Word, il tasto INVIO non si sposta il campo modulo successivo ma ma inserita un segno di paragrafo, proprio come accade in un documento protetto. In questo modo è possibile immettere più righe di testo in un campo modulo testo.

Macro

Di seguito sono riportati quattro Visual Basic, Applications Edition le macro che è possibile utilizzare congiuntamente per emulare il Word 6.0 per la funzionalità di Windows del tasto INVIO nei nuovi documenti di campo modulo protetto basato su un modello. Di seguito è una breve descrizione della funzionalità di ciascuna macro:

  • La prima macro consente di spostare il punto di inserimento nel campo modulo successivo.

  • La seconda macro assegna la prima macro del tasto INVIO.

  • La terza macro garantisce che le funzionalità chiave continuano quando si apre un documento basato sul modello di modulo in futuro.

  • La quarta macro rimuove la macro assegnata dall'invio, ripristinare la funzionalità predefinita del tasto INVIO.

Importante: per questo codice funzioni come scritti, il modello non deve essere protetto. Se il modello è protetto, viene visualizzato il seguente messaggio di errore:

Il contesto non può essere modificato.

Per rimuovere la protezione del modello, attenersi alla seguente procedura:

  1. Aprire il modello che contiene la macro descritte in questo articolo.

  2. Dal menu Strumenti , fare clic su Rimuovi protezione documento.

  3. Dal menu File, fare clic su Salva.

  4. Dal menu File , fare clic su Chiudi.

Prima Macro: Spostare il cursore nel campo modulo successivo

Questa macro consente di spostare il punto di inserimento nel campo modulo successivo. Se il campo modulo corrente è l'ultima il documento, il punto di inserimento si sposta sul primo campo modulo.

Questa macro utilizza l'insieme di segnalibri per recuperare il nome del campo modulo corrente. Il nome di ogni campo è anche il nome del segnalibro inserito per il campo modulo. Se si dispongono di eventuali altri segnalibri nel documento, è necessario aggiungere ulteriori qui il codice per gestire gli errori potenziali. La macro presuppone inoltre che tutti i campi modulo nei documenti di consentano l'input dell'utente. Se non è questo il caso del documento, è necessario aggiungere ulteriore codice della macro.

La macro controlla per vedere se la sezione corrente è protetto o non protetto e quindi sposta il campo modulo successivo (in una sezione protetta) o inserisce un segno di paragrafo (in una sezione non protetta). Questa funzionalità è necessaria per i documenti che contengono entrambe le sezioni protette per moduli di input e non protette le sezioni.

Sub EnterKeyMacro()
' Check whether the document is protected for forms
' and whether the protection is active.
If ActiveDocument.ProtectionType = wdAllowOnlyFormFields And _
Selection.Sections(1).ProtectedForForms = True Then
' Retrieve the bookmark of the current selection.
' This is equivalent to the name of the form field.
myformfield = Selection.Bookmarks(1).Name
' Go to the next form field if the current form field
' is not the last one in the document.
If ActiveDocument.FormFields(myformfield).Name <> _
ActiveDocument.FormFields(ActiveDocument.FormFields.Count) _
.Name Then
ActiveDocument.FormFields(myformfield).Next.Select
Else
' If the current form field is the last one,
' go to the first form field in the document.
ActiveDocument.FormFields(1).Select
End If
Else
' If the document is not protected for forms,
' insert a tab stop character.
Selection.TypeText Chr(13)
End If
End Sub

Seconda Macro: Assegnare la Macro EnterkeyMacro per il tasto INVIO

Questa macro, la macro EnterKeyMacro connette il tasto INVIO, quindi riprogrammare la funzione del tasto quando viene utilizzata nei campi modulo documento protetto. Quando si utilizza questa macro in un modello personalizzato, denominarlo AutoNew. In questo modo la funzionalità del tasto INVIO in tutti i nuovi documenti modulo basato sul modello.

Sub AutoNew()
' Do Not protect the template containing these macros.
CustomizationContext = ActiveDocument.AttachedTemplate
' Bind the ENTER key to the EnterKeyMacro.
KeyBindings.Add KeyCode:=BuildKeyCode(wdKeyReturn), _
KeyCategory:=wdKeyCategoryMacro, Command:="EnterKeyMacro"
' Reprotect the document with Forms protection.
ActiveDocument.Protect Type:=wdAllowOnlyFormFields, NoReset:=True
End Sub

Terza Macro: La Macro AutoOpen assegnandogli il tasto INVIO

Aggiungere una macro AutoOpen con il codice seguente. Questo assicura che la funzionalità chiave continua quando si apre un documento basato sul modello di modulo in futuro.

Sub AutoOpen()
' This macro will reassign the ENTER key when you open an existing
' Word form fields document.
CustomizationContext = ActiveDocument.AttachedTemplate
' Bind the Enter key to the EnterKeyMacro.
KeyBindings.Add KeyCode:=BuildKeyCode(wdKeyReturn), _
KeyCategory:=wdKeyCategoryMacro, Command:="EnterKeyMacro"
End Sub

Nota: eseguire le macro possono disattivare alcune funzionalità, quali la correzione automatica e voci di glossario e può influire sulle altre funzionalità che dipendono per il corretto funzionamento del tasto INVIO. È necessario eseguire la macro quarto per ripristinare la funzionalità predefinita del tasto INVIO o riavviare Microsoft Word.

Quarto Macro: Rimuovere il comando assegnato al tasto INVIO

Questa macro consente di ripristinare la funzionalità predefinita del tasto INVIO. Quando si utilizza questa macro in un modello personalizzato, denominarlo AutoClose.

Sub AutoClose()
CustomizationContext = ActiveDocument.AttachedTemplate
FindKey(KeyCode:=BuildKeyCode(wdKeyReturn)).Disable
' Disables prompt to save template changes.
Templates(1).Save
End Sub

Nota: la proprietà CustomizationContext imposta la posizione in cui la personalizzazione della tastiera verrà salvato, in questo caso il modello associato al documento attivo.

Riferimenti

Per ulteriori informazioni sulle risorse disponibili per la creazione di soluzioni personalizzate utilizzando Visual Basic, Applications Edition e Microsoft Word 2000, fare clic sui numeri per visualizzare gli articoli della Microsoft Knowledge Base riportato di seguito:

212623 WD2000: risorse di programmazione di Macro

226118 OFF2000: risorse di programmazione per Visual Basic, Applications Edition

Serve aiuto?

Vuoi altre opzioni?

Esplorare i vantaggi dell'abbonamento e i corsi di formazione, scoprire come proteggere il dispositivo e molto altro ancora.

Le community aiutano a porre e a rispondere alle domande, a fornire feedback e ad ascoltare gli esperti con approfondite conoscenze.

Queste informazioni sono risultate utili?

Come valuti la qualità della lingua?
Cosa ha influito sulla tua esperienza?
Premendo Inviare, il tuo feedback verrà usato per migliorare i prodotti e i servizi Microsoft. L'amministratore IT potrà raccogliere questi dati. Informativa sulla privacy.

Grazie per il feedback!

×