Logg på med Microsoft
Logg på, eller opprett en konto.
Hei,
Velg en annen konto.
Du har flere kontoer
Velg kontoen du vil logge på med.

Hvis en Microsoft Word 97-versjon av denne artikkelen, kan du se
187985.

Sammendrag

Denne artikkelen inneholder fire Microsoft Visual Basic for Applications-makroer som du kan bruke til å emulere Microsoft Word 6.0 for Windows-funksjonalitet for ENTER-tasten for å flytte mellom felt i beskyttede dokumenter.

Hvis du vil ha mer informasjon

Microsoft gir programmeringseksempler som illustrasjon, uten garanti enten direkte eller indirekte, inkludert, men ikke begrenset til, eventuelle stilltiende garantier om salgbarhet og/eller anvendelighet for særskilte formål. Denne artikkelen forutsetter at du er kjent med programmeringsspråket som blir brukt, og verktøyene som brukes til å lage og feilsøke prosedyrer. Microsoft-teknikere kan hjelpe deg med å forklare funksjonaliteten til en bestemt prosedyre, men de endrer ikke disse eksemplene for å lage forbedret funksjonalitet eller lage prosedyrer som dekker dine spesifikke behov.
Hvis du har begrenset erfaring med programmering, bør du kontakte en Microsoft-sertifisert partner eller Microsofts rådgivningstjenester. Hvis du vil ha mer informasjon, kan du besøke disse webområdene for Microsoft:

Microsoft-sertifiserte partnere - https://partner.microsoft.com/global/30000104

Microsoft rådgivningstjenester - http://support.microsoft.com/gp/advisoryservice

Hvis du vil ha mer informasjon om kundestøttealternativene som er tilgjengelige og om hvordan du kontakter Microsoft, kan du gå til følgende Microsoft-webområde:http://support.microsoft.com/default.aspx?scid=fh; EN-US; CNTACTMS
Hvis du vil ha mer informasjon om hvordan du kjører eksempelkoden, kan du klikke følgende artikkelnummer for å vise artikkelen i Microsoft Knowledge Base:

212536 OFF2000: hvordan kjøre eksempelkode fra Knowledge Base-artikler

Angi viktige funksjoner i Word 6.0

I Word 6.0 for Windows flyttes innsettingspunktet til neste skjemafelt hvis du trykker ENTER-tasten i et dokument som er beskyttet for skjemaer. Derimot i senere versjoner av Word, ENTER-tasten beveger ikke seg til neste skjemafelt, men setter inn et avsnittsmerke, akkurat som den gjør i et dokument som er ubeskyttet. Dette gjør at du kan skrive inn flere linjer med tekst i et tekstfelt i skjemaet.

Makroer

Nedenfor er fire Visual Basic for Applications-makroer som du kan bruke sammen til å emulere Word 6.0 for Windows-funksjonalitet for ENTER-tasten i nye beskyttet skjema feltet dokumenter basert på en mal. Det følgende er en kort beskrivelse av funksjonaliteten til hver makro:

  • Den første makroen flytter innsettingspunktet til neste skjemafelt.

  • Den andre makroen tilordner den første makroen til ENTER-tasten.

  • Tredje makroen sikrer at nøkkelfunksjonalitet for fortsetter når du åpner et dokument som er basert på skjemamalen i fremtiden.

  • Fjerde makroen fjerner den tilordnede makroen fra ENTER-tasten, gjenopprette standardfunksjonaliteten for ENTER-tasten.

Viktig: For denne koden fungerer som skrevet, bør du ikke beskyttet malen. Hvis malen er beskyttet, får du følgende feilmelding:

Kan ikke endre konteksten.

Hvis du vil oppheve beskyttelsen av malen, gjør du følgende:

  1. Åpne malen som inneholder makroer som er beskrevet i denne artikkelen.

  2. Klikk Opphev dokumentbeskyttelsepå Verktøy -menyen.

  3. Klikk Lagrepå fil -menyen.

  4. Klikk Lukkpå fil -menyen.

Første makro: Flytte innsettingspunktet til neste skjemafelt

Denne makroen, flyttes innsettingspunktet til neste skjemafelt. Hvis gjeldende skjemafelt er den siste i dokumentet, flytter du innsettingspunktet til det første skjemafeltet.

Denne makroen bruker bokmerker-samlingen til å hente navnet på gjeldende skjemafelt. Navnet på hvert skjemafelt er også navnet på et bokmerke som er satt inn for skjemafeltet. Hvis du har andre bokmerker i dokumentet, må du kanskje legge til mer kode her for å håndtere potensielle feil. Makroen forutsetter også at alle skjemafelt i dokumenter tillater at inndata fra brukeren. Hvis dette ikke er tilfellet i dokumentet, må du legge til ekstra kode i makroen.

Makroen kontrollerer om den gjeldende inndelingen er beskyttet eller ubeskyttet og deretter flytter til neste skjemafelt (i en beskyttet inndeling) eller setter inn et avsnittsmerke (i en ubeskyttet delen). Denne funksjonaliteten er nødvendig for dokumenter som inneholder begge inndelingene som er beskyttet for skjema-inngang og ubeskyttet inndelinger.

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

Ny makro: Tilordne makroen EnterkeyMacro ENTER-tasten

Denne makroen fester EnterKeyMacro makroen til ENTER-tasten, og dermed omprogrammere funksjonen tasten når den brukes i beskyttede dokumentet skjemafelt. Når du bruker denne makroen i en egendefinert mal, gi den navnet AutoNy. Dette endrer funksjonaliteten for ENTER-tasten i alle nye skjema dokumenter basert på malen.

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

Tredje makro: Tilordne AutoOpen-makro til ENTER-tasten

Legge til en AutoOpen-makro med følgende kode. Dette sikrer at nøkkelfunksjonalitet for fortsetter når du åpner et dokument som er basert på skjemamalen i fremtiden.

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

Merknad: kjører disse makroene kan deaktivere enkelte funksjoner som Autokorrektur og Autotekst, og kan påvirke andre funksjoner som er avhengige av ENTER-tasten for ordentlig. Du må kjøre fjerde makroen hvis du vil gjenopprette standardfunksjonaliteten for ENTER-tasten, eller Start Microsoft Word på nytt.

Fjerde makro: Fjerne kommandoen som er tilordnet ENTER-tasten

Denne makroen gjenoppretter standardfunksjonaliteten for ENTER-tasten. Når du bruker denne makroen i en egendefinert mal, gi den navnet AutoClose.

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

Merknad: CustomizationContext -egenskapen angir stedet der tilpassing av tastaturet skal lagres, i dette tilfellet malen som er knyttet til det aktive dokumentet.

Referanser

Hvis du vil ha mer informasjon om tilgjengelige ressurser for å opprette tilpassede løsninger ved hjelp av Visual Basic for Applications og Microsoft Word 2000, klikker du artikkelnumrene nedenfor for å vise artiklene i Microsoft Knowledge Base:

212623 WD2000: makro programmeringsressurser

OFF2000 226118 : programmeringsressurser for Visual Basic for Applications

Trenger du mer hjelp?

Vil du ha flere alternativer?

Utforsk abonnementsfordeler, bla gjennom opplæringskurs, finn ut hvordan du sikrer enheten og mer.

Fellesskap hjelper deg med å stille og svare på spørsmål, gi tilbakemelding og høre fra eksperter med stor kunnskap.

Var denne informasjonen nyttig?

Hvor fornøyd er du med språkkvaliteten?
Hva påvirket opplevelsen din?
Når du trykker på Send inn, blir tilbakemeldingen brukt til å forbedre Microsoft-produkter og -tjenester. IT-administratoren kan samle inn disse dataene. Personvernerklæring.

Takk for tilbakemeldingen!

×