Editarea unei macrocomenzi în Word

Pentru a modifica macrocomanda Muta_paragraf (descrisă pe pagina Înregistrarea unei macrocomenzi în Word) și a construi o altă macrocomandă pe baza acesteia, mai întâi se deschide macrocomanda în Visual Basic Editor:

    1. Se deschide sau se activează Word.
    2. Se apasă Alt+F8.
    3. Se selectează macrocomanda Muta_paragraf, apoi clic pe butonul Edit.

În fereastra Code, se poate vedea codul macrocomenzii.

  1. Sub Muta_paragraf()
  2. '
  3. ' Muta_paragraf Macrocomanda
  4. ' muta paragraful in care se afla cursorul sub paragraful urmator
  5. '
  6. Selection.Extend
  7. Selection.Extend
  8. Selection.Extend
  9. Selection.Extend
  10. Selection EscapeKey
  11. Selection.Cut
  12. Selection.MoveDown Unit:=wdParagraph, Count:=1
  13. Selection.PasteAndFormat (wdFormatOriginalFormatting)
  14. End Sub

Ce face macrocomanda:

    • Linia 1 pornește macrocomanda cu instrucțiunea Sub Muta_paragraf(), iar linia 14 încheie macrocomanda cu instrucțiunea End Sub. Liniile Sub și End Sub marchează începutul și sfârșitul oricărei macrocomenzi.
    • Liniile 2 și 5 sunt linii cu comentarii goale pe care Macro Recorder le-a introdus pentru a face macrocomanda mai ușor de citit. Într-o macrocomandă se pot folosi mai multe linii goale cu sau fără comentariu pentru a separa instrucțiunile în grupuri. (O linie goală nu trebuie să fie comentată neapărat, dar Macro Recorder adaugă și câte un apostrof la liniile albe.)
    • Liniile 3 și 4 sunt linii cu comentarii care conțin numele macrocomenzii și descrierea ei. Macro Recorder adaugă aceste linii cu informații preluate în caseta de dialog Record Macro.
    • Linia 6 a înregistrat prima apăsare a tastei F8, care pornește modul Extend – o metodă de selecție text într-un document Word.
    • Linia 7 a înregistrat a doua apăsare a tastei F8, care continuă modul Extend și selectează întregul cuvânt.
    • Linia 8 a înregistrat a treia apăsare a tastei F8, care continuă modul Extend și selectează întreaga frază.
    • Linia 9 a înregistrat a patra apăsare a tastei F8, care continuă modul Extend și selectează întregul paragraf.
    • Linia 10 a înregistrat apăsarea tastei Esc, care anulează modul Extend.
    • Linia 11 a înregistrat comanda Cut, care șterge selecția (aici, paragraful selectat) și o stochează în memoria Clipboard.
    • Linia 12 a înregistrat comanda Ctrl+↓, care mută cursorul cu un paragraf mai jos.
    • Linia 13 a înregistrat comanda Paste, care adaugă selecția din memoria Clipboard în document la poziția curentă a cursorului. Oricare este formatarea aplicată la selecție, ea este păstrată (în loc să fie aplicată formatarea din noua locație).

Parcurgerea macrocomenzii Muta_paragraf

Pentru a parcurge această macrocomandă în modul Break folosind comanda Step Into:

    1. Se aranjează pe ecran ferestrele Word și Visual Basic Editor astfel încât să fie ambele vizibile (de exemplu, cu clic dreapta pe bara Taskbar, din meniul contextual se poate alege Show Windows Stacked sau prin mutarea fiecărei ferestre pe câte o jumătate de ecran).
    2. Clic în fereastra Visual Basic Editor, apoi clic pentru a plasa cursorul în fereastra Code, la începutul macrocomenzii (în Sub).
    3. Se apasă tasta F8 pentru a parcurge codul linie cu linie. Se poate observa că VBA sare peste liniile goale și cele cu comentarii, deoarece acestea sunt ignorate de computer în timpul execuției. VBA marchează comanda curentă la fiecare apăsare a tastei F8, iar în fereastra Word se pot vedea acțiunile realizate.

Visual Basic Editor iese din modul Break atunci când ajunge la sfârșitul macrocomenzii (în acest caz, când se apasă tasta F8 pentru a executa comanda End Sub de pe linia 14). Editorul revine în modul Design. Din modul Break se mai poate ieși în orice moment prin apăsarea butonului Reset (pătratul albastru) de pe bara cu instrumente Standard sau de pe bara Debug, sau alegând Run > Reset. Din nefericire, nu există nicio combinație de taste pentru oprirea execuției. Trebuie folosit mausul.

Executarea macrocomenzii Muta_paragraf

Dacă macrocomanda funcționează bine, ea poate fi executată din Visual Basic Editor. Se apasă tasta F5. În modul Break, tasta F5 execută macrocomanda, începând cu comanda curentă (de pe linia unde se află cursorul).

Crearea unei macrocomenzi Muta_paragraf_mai_sus

Pentru a modifica macrocomanda inițială și a crea macrocomanda Muta_paragraf_mai_sus (cu mici modificări ale macrocomenzii Muta_paragraf), se urmează etapele următoare.

1. În fereastra Code, se selectează tot codul pentru macrocomanda Muta_paragraf, de la linia Sub Muta_paragraf() până la linia End Sub. Selecția se poate face în trei moduri: prin tragerea cu mausul, prin apăsarea tastei Shift și folosirea tastelor săgeți pentru a extinde selecția sau prin poziționarea cursorului la sfârșitul macrocomenzii și apoi cu Shift+clic la celălalt capăt.

2. Se copie codul cu comanda Copy (de exemplu, cu clic dreapta și alegerea opțiunii Copy din meniul contextual sau prin apăsarea combinațiilor de taste Ctrl+C sau Ctrl+Insert).

3. Clic pe linia de sub instrucțiunea End Sub a macrocomenzii Muta_paragraf din fereastra Code.

4. Se adaugă codul cu comanda Paste (cu clic dreapta și alegerea opțiunii Paste din meniul contextual sau prin apăsarea combinațiilor de taste Ctrl+V sau Shift+Insert). Visual Basic Editor adaugă automat o linie orizontală între instrucțiunea End Sub a macrocomenzii Muta_paragraf și noua macrocomandă adăugată.

5. Se modifică numele macrocomenzii din Muta_paragraf în Muta_paragraf_mai_sus prin editarea liniei Sub:

Sub Muta_paragraf_mai_sus()

6. Se editează și liniile de comentariu de la începutul macrocomenzii - de exemplu,

'Muta_paragraf_mai_sus Macrocomanda
'muta paragraful in care se afla cursorul peste paragraful anterior

7. Apoi se înlocuiește metoda MoveDown cu metoda MoveUp.

Astfel, cursorul va fi mutat cu un paragraf mai sus în loc să fie mutat mai jos. În loc să fie înlocuită manual, se poate folosi și funcția List Properties / Methods:

    • Clic pentru a plasa cursorul în cuvântul MoveDown.
    • Clic pe butonul List Properties/Methods din bara cu instrumente Edit pentru a afișa lista cu proprietăți și metode – primul buton din stânga. Sau se apasă combinația de taste Ctrl+J. (Dacă bara cu instrumente Edit nu este vizibilă, clic dreapta pe una din barele existente și se alege Edit din meniul contextual.)
    • Dublu clic pe metoda MoveUp din listă pentru a o înlocui cu metoda MoveDown din linia de cod.

Macrocomanda modificată ar trebui să arate astfel:

Sub Muta_paragraf_mai_sus() 
' 
' Muta_paragraf Macrocomanda 
' muta paragraful in care se afla cursorul peste paragraful anterior 
' 
Selection.Extend 
Selection.Extend 
Selection.Extend 
Selection.Extend
Selection EscapeKey
Selection.Cut 
Selection.MoveUp Unit:=wdParagraph, Count:=1 
Selection.PasteAndFormat (wdFormatOriginalFormatting) 
End Sub

Se verifică dacă macrocomanda funcționează. În cazul în care funcționează, poate fi salvată și i se poate atribui un buton pe bara Quick Access Toolbar, sau o combinație de taste în Word dacă se intenționează folosirea ei.


Salvarea lucrului

După terminarea lucrului cu orice macrocomandă, se alege Ctrl+S sau File > Save din Visual Basic Editor pentru a salva documentul sau șablonul care conține acea macrocomandă și modificările făcute.

Apoi se apasă Alt+Q sau File > Close And Return To Microsoft Word pentru a închide Visual Basic Editor și a reveni la Word.