Prisijunkite prie „Microsoft“
Prisijunkite arba sukurkite paskyrą.
Sveiki,
Pasirinkti kitą paskyrą.
Turite kelias paskyras
Pasirinkite paskyrą, kurią naudodami norite prisijungti.

Šio straipsnio versija Microsoft Word 97, žr.
187985.

Santrauka

Šiame straipsnyje pateikiami keturi Microsoft Visual Basic for Applications makrokomandas, galite naudoti imituoti Microsoft Word 6.0 "Windows" funkcijos, klavišą ENTER, judėti tarp formos laukų saugomų dokumentų.

Daugiau informacijos

Microsoft teikia programavimo pavyzdžiai tik, be nesuteikia jokių aiškių arba numanomų garantijų, įskaitant, bet neapsiribojant, numanomas garantijas dėl perkamumo ir (arba) tinkamumo konkrečiam tikslui. Šiame straipsnyje informacija pateikiama manant, kad esate susipažinę su pateikta programavimo kalba buvo parodytas ir priemones, naudojamas siekiant kurti ir derinti. Microsoft palaikymo profesionalai gali padėti paaiškindami tam tikros procedūros funkcinę galimybę, tačiau jie nekeis šių pavyzdžių, kad numatytų papildomą funkcinę galimybę arba sukurtų jūsų konkrečius poreikius atitinkančias procedūras.
Jei turite ribotą programavimo patirties, galite susisiekti su "Microsoft" sertifikuotų partnerių ar Microsoft konsultavimo tarnybos. Jei norite gauti daugiau informacijos, apsilankykite toliau "Microsoft" žiniatinklio svetainėse:

"Microsoft" Certified partneriai - https://partner.microsoft.com/global/30000104

"Microsoft" Advisory paslaugų - http://support.microsoft.com/gp/advisoryservice

Jei norite gauti daugiau informacijos apie palaikymo parinktys, kurias galima ir apie tai, kaip susisiekti su "Microsoft", apsilankykite šioje "Microsoft" svetainėje:http://support.microsoft.com/default.aspx?scid=fh; EN-US; CNTACTMS
Jei norite gauti papildomos informacijos apie kodo pavyzdys, spustelėkite toliau straipsnio numerį peržiūrėkite straipsnį Microsoft žinių bazėje:

212536 OFF2000: kaip paleisti kodo pavyzdys iš žinių bazės straipsniai

ĮVESKITE kodo funkcija programoje Word 6.0

Word 6.0 "Windows", paspaudus klavišą ENTER dokumentų, kurie yra apsaugoti formų, įvedimo vieta pasislinks į kitą formos lauką. Word versijose, klavišą ENTER perkeliamas į kitą formos lauką, bet vietoj įterpia pastraipos žymę, kaip jis neapsaugotas dokumente. Tai suteikia galimybę įvesti kelias teksto eilutes į teksto formos lauką.

Makrokomandos

Toliau pateikiami keturi Visual Basic for Applications makrokomandas, galite naudoti kartu imituoti Word 6.0 "Windows" funkcijos ENTER klavišo dokumentuose naują apsaugotą formos lauko šabloną. Toliau pateikiamas trumpas kiekvienos makrokomandų funkcijas:

  • Pirmą kartą makrokomandą perkelia žymeklį į kitą formos lauką.

  • Antras makrokomandą priskiria pirmą makrokomandą klavišą ENTER.

  • Trečiąjį makrokomanda užtikrina, kad esmines funkcijas ir toliau atidarius dokumentą, atsižvelgiant į formos šablono ateityje.

  • Ketvirtasis makrokomandą pašalina priskirtos makrokomandos klavišą "ENTER", atkurti numatytuosius funkcijos klavišą ENTER.

Svarbu: šį kodą taip, kaip parašyta, šablonas turi būti neapsaugota. Jei šablonas yra apsaugotas, galite gauti tokį klaidos pranešimą:

Negalima modifikuoti kontekste.

Norėdami atšaukti šabloną, atlikite šiuos veiksmus:

  1. Atidarykite šabloną, kuriame yra makrokomandų, aprašytas šiame straipsnyje.

  2. Meniu Įrankiai spustelėkite Neapsaugoti dokumento.

  3. Meniu failas spustelėkite įrašyti.

  4. Meniu failas spustelėkite uždaryti.

Pirmą kartą makro: Perkelti žymeklį į kitą formos lauką

Ši makrokomanda perkelia žymeklį į kitą formos lauką. Jei formos laukas yra naujausia dokumente, jis perkelia teksto žymeklį į pirmąjį formos lauką.

Ši makrokomanda naudoja žymelės rinkimo gauti esamo formos lauko pavadinimą. Kiekvieno formos lauko pavadinimą taip pat įtrauktas į formos lauką žymelės pavadinimą. Jei dokumente yra žymelių kitų, turite įtraukti daugiau kodą tvarkyti galimų klaidų. Makrokomandą taip pat manoma, kad visi formos laukai dokumentuose leisti vartotojo įvesties. Jei taip ir yra ne jūsų dokumente, jums reikia pridėti papildomą kodą makrokomandos.

Makrokomanda tikrina, ar sekcijoje yra apsaugotas ar neapsaugotus ir tada perkeliamas į kitą formos lauką (apsaugota sekcija) arba įterpia pastraipos žymę (į skyrius neapsaugotos). Ši funkcija yra reikalingi dokumentai, kuriuose yra abu skyriai, kurie saugomi formos įvesties ir neapsaugotus skyriuose.

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

Antras makro: Priskyrimas EnterkeyMacro makrokomandos, įveskite kodą

Ši makrokomanda suteikia EnterKeyMacro makrokomanda klavišą "ENTER", tokiu būdu pakeisti rakto funkciją, kai ji naudojama apsaugotą dokumentą formos laukus. Naudodami šią makrokomandą pasirinktinį šabloną, pavadinkite jį AutoNew. Tai pakeičia formos visuose naujuose dokumentuose, kuriamuose naudojant šabloną ENTER klavišo funkciją.

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

Trečioji makro: Priskyrimas AutoOpen makrokomandos, įveskite kodą

Įtraukti į AutoOpen makrokomandų kodas. Taip užtikrinama, kad klavišų funkcijas ir toliau atidarius dokumentą, atsižvelgiant į formos šablono ateityje.

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

Pastaba: šias makrokomandas išjungti kai kurias funkcijas, pvz., automatinės taisos ir automatinio teksto, ir gali paveikti kitas funkcijas, kurios priklauso nuo klavišą ENTER, kad tinkamai veiktų. Jums reikia atkurti numatytuosius funkcijos klavišą ENTER, arba paleisti iš naujo Microsoft Word ketvirtasis makrokomandos.

Ketvirtasis makro: Pašalinti priskirti komandą, įveskite kodą

Ši makrokomanda atkuria numatytuosius funkcijos klavišą ENTER. Naudodami šią makrokomandą pasirinktinį šabloną, pavadinkite jį AutoClose.

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

Pastaba: CustomizationContext ypatybė nustato vietą, kur klaviatūros pritaikymas yra įrašyti, šiuo atveju prie aktyvaus dokumento pridėtą šabloną.

Nuorodos

Jei norite gauti papildomos informacijos apie išteklius kurti pasirinktinius sprendimus, "Visual Basic", skirtos taikomosios programos ir "Microsoft Word 2000", spustelėkite toliau straipsnių numerius ir peržiūrėkite straipsnius Microsoft žinių bazėje:

212623 WD2000: makrokomandų programavimo išteklių

226118 OFF2000: Visual Basic for Applications programavimo ištekliai

Reikia daugiau pagalbos?

Norite daugiau parinkčių?

Sužinokite apie prenumeratos pranašumus, peržiūrėkite mokymo kursus, sužinokite, kaip apsaugoti savo įrenginį ir kt.

Bendruomenės padeda užduoti klausimus ir į juos atsakyti, pateikti atsiliepimų ir išgirsti iš ekspertų, turinčių daug žinių.

Ar ši informacija buvo naudinga?

Ar esate patenkinti kalbos kokybe?
Kas turėjo įtakos jūsų įspūdžiams?
Paspaudus mygtuką Pateikti, jūsų atsiliepimai bus naudojami tobulinant „Microsoft“ produktus ir paslaugas. Jūsų IT administratorius galės rinkti šiuos duomenis. Privatumo patvirtinimas.

Dėkojame už jūsų atsiliepimą!

×