Converting WordBasic Macros to Visual Basic

O Word 2003 e o Word 2007 convertem automaticamente as macros em um modelo do Word 6.x ou Word 95 na primeira vez que você fizer qualquer um dos seguintes procedimentos:

  • Open the template

  • Create a document based on the template

  • Manually attach the template to a document

A message is displayed on the status bar while the macros are being converted. After the conversion is complete, you must save the template to save the converted macros. If you don't save the template, Word converts the macros again the next time you use the template.

Nota O Word não pode converter macros do Word 2.x diretamente. Instead, you need to open and save your Word 2.x templates in Word 6.x or Word 95 and then open them in Word.

O processo de conversão converte cada macro em um módulo do Visual Basic. Para ver as macros convertidas, pressione Alt-F8. Os nomes de macro na caixa de diálogo Macros aparecem como nomedamacro.Main, sendo que Main se refere à sub-rotina principal da macro convertida (a sub-rotina que começava com Sub MAIN nas versões anteriores do Word). Para editar a macro convertida, selecione um nome de macro e clique em Editar para exibir o módulo do Visual Basic no Editor do Visual Basic. Cada instrução do WordBasic é modificada para funcionar com o Visual Basic for Applications. As macros do WordBasic convertidas são funcionalmente equivalentes às novas macros do Visual Basic for Applications que você pode escrever ou gravar, mas não são idênticas. The following example is a WordBasic macro in a Word 95 template.

Sub MAIN 
FormatFont .Name = "Arial", .Points = 10 
Insert "Hello World" 
End Sub

When the template is opened in Word, the macro is converted to the following code.

Public Sub Main() 
WordBasic.FormatFont Font:="Arial", Points:=10 
WordBasic.Insert "Hello World" 
End Sub

Each statement in the converted macro begins with the WordBasic property. WordBasic is a property in the Word object model that returns an object with all the WordBasic statements and functions; this object makes it possible to run WordBasic macros in Word.

Nota Se você salvar o modelo no modelo original, as macros do WordBasic serão perdidas permanentemente e as versões anteriores do Word não poderão usar as macros convertidas.

The following Visual Basic macro is functionally the same as the preceding WordBasic macro, but does not use the WordBasic property.

Public Sub Main() 
 With Selection.Font 
 .Name = "Arial" 
 .Size = 10 
 End With 
 Selection.TypeText Text:="Hello World" 
End Sub

Suporte e comentários

Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.