USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Dicas

  Visual Basic    (VBA)

Título da Dica:  Entendendo o método createobject
Postada em 14/3/2004 por geronimo            
Até a versão 7.0 o Word utilizava o WordBasic, a partir da versão 8.0
(MSOFFICE 97) o WordBasic foi substituído pelo VBA , mas mantém o objeto
WordBasic apenas por questão de compatibilidade com as versões anteriores.

No VBA foi introduzida uma estrutura de objetos hierarquizada, e para programar em VBA é necessário conhecer esta estrutura. Apenas para ilustrar a diferença vou postar um exemplo parecido, onde leio de um banco de dados e insiro os dados no word
Option Explicit

' Referencias => DAO 3.X
' Referencias => Microsoft Word 8.0 Object Library

Private WordApp As Word.Application
Private doc As Word.Document
Private sel As Word.Selection

Private db As Database
Private rs As Recordset

Private Sub cmdExport_Click()

If txtbd.Text <> "" And txttabela.Text <> "" Then

Dim i As Integer
Set db = OpenDatabase(txtbd.Text)
Set rs = db.OpenRecordset("select * from " & txttabela.Text & " where State = 'MA'")

Set WordApp = New Word.Application

lblStatus.Visible = True

On Error Resume Next
WordApp.Documents.Add
Set doc = WordApp.ActiveDocument
Set sel = WordApp.Selection

'define o número de colunas da tabela

doc.Tables.Add Range:=sel.Range, NumRows:=1, NumColumns:=2

i = 0
Do Until rs.EOF
lblStatus.Caption = "Registros Exportados : " & i

sel.TypeText Text:=rs!Name
sel.MoveRight unit:=12 ' 12 = proxima celula

sel.TypeText Text:=rs!Address
sel.MoveRight unit:=12


rs.MoveNext
DoEvents

i = i + 1

Loop

lblStatus.Caption = "Registros Exportados : " & i
WordApp.Visible = True

Set WordApp = Nothing
Else
MsgBox "Informe um Caminho/Nome valido para o Banco de dados/Tabela ! "
End If
End Sub
 


CyberWEB Network Ltda.    © Copyright 2000-2024   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página