Newsgroup: it.comp.appl.access
Titolo: gestione in VB dei rientri del testo su doc. Word

Ciao
Sto trattando del testo su Access per portarlo su Word
Qualcuno potrebbe dirmi come impostare in Vb i rientri dx e sx del testo per
inserire un indirizzo
oppure una intestazione su un documento word?
Ringrazio anticipatamente
Maurizio

 ha scritto nel messaggio
news:8tmhp9$kh0$1...@fe2.cs.interbusiness.it...

Puoi spiegarti meglio? Cosa intendi per "trattare del testo su Access"?
Ciao.

 wrote in message
8tmod2$i7s$1...@suite03.caspur.it...

intendo dire che lavoro con un DB di access e devo mandare un testo su un
documento word
creando l'oggetto Word
Dim WordDoc As Object
Set WordDoc = CreateObject("Word.Application")
WordDoc.Documents.Add
WordDoc.Visible = True
With WordDoc
    .Activate
    .Selection.TypeText " Prova1 "
End With
.........
il testo al quale devo  dare ad es. un rientro verso dx di 15 è "prova1"
qual'è l'istruziona esatta?
oltretutto vorrei anche che il documento WordDoc mi si apra a pieno schermo
ho provato con
"WordDoc.Maximize"  ma non funziona
grazie
ciao
Maurizio


Se vuoi 'scoprire' quali sono i metodi da invocare, la cosa piů semplice da
fare č (da word) creare una macro e simulare (a manina) le operazioni che
dovresti fare da VBA. Poi leggi il codice che creato e lo applichi. Il
risultato č simile a questo (chiaramente riadattato per access):
'------------------------
Dim objWord As Object
Set objWord = CreateObject("Word.Application")
With objWord
'aggiungo un nuovo documento
    .Documents.Add "normal.dot", False
'rendo visibile word
    .Visible = True
'attivo word
    .Activate
'word massimizzato
    .WindowState = wdWindowStateMaximize
'scrivo una parola
    .Selection.TypeText Text:="prova1"
'vado all'inizio riga
    .Selection.HomeKey Unit:=wdLine
End With
'imposto il paragrafo
With objWord.Selection.ParagraphFormat
'imposto il rientro sinistro
        .LeftIndent = CentimetersToPoints(15)
        .RightIndent = CentimetersToPoints(0)
        .SpaceBefore = 0
        .SpaceAfter = 0
        .LineSpacingRule = wdLineSpaceSingle
        .Alignment = wdAlignParagraphLeft
        .WidowControl = True
        .KeepWithNext = False
        .KeepTogether = False
        .PageBreakBefore = False
        .NoLineNumber = False
        .Hyphenation = True
        .FirstLineIndent = CentimetersToPoints(0)
        .OutlineLevel = wdOutlineLevelBodyText
End With
objWord.Quit
Set objWord = Nothing
'---------------------
Se vuoi puoi fare riferimento direttamente alla classe Word.Application con:
- inserisci nei riferimenti la libreria Microsoft Word Object Library e
cambi la Dim con
Dim objWord As Word.Application
Cosě facendo hai a disposizione, nella scrittura del codice, tutti i metodi
della classe dichiarata (Word.Application) appena premi il punto senza
scervellarti piů di tanto.
Ciao.


ho provato a fare una macro in word per copiare le istruzioni però essendo
su una applicazione
certe istruzioni non le riconosce
il problema in parte l'ho risolto dando direttamente dei valori, ad es.
.LeftIndent = "CentimetersToPoints(15)" non lo riconosceva e allora ho
scritto:
.LeftIndent = 250 (che ovviamente non sono più centimetri)
ora mi rimane da risolvere la massimizzazione
.WindowState = wdWindowStateMaximize
purtroppo non mi riconosce "wdWindowStateMaximize"
per utilizzare la libreria Microsoft Word Object Library come si fa? devo
reinstallare access?
se poi volessi passare il programma che realizzo su un altro computer, devo
sempre installare
questa famosa libreria?
io sto facendo ancora molta confusione, che differenza esiste fra:
Set WordDoc = CreateObject("Word.Application") e Set WordDoc =
CreateObject("Word.Basic")
ciao
Maurizio


Il modello a oggetti di word (e non solo) è strutturato ad albero; in alto
trovi la chiamata (createobject) 'Application' e sotto tutte le altre
possibilità (Basic, Document etc..)...
Ciao.


il modello ad oggetti di word (e non solo) č strutturato ad albero; la parte
principale č Application, in basso trovi le altre voci (Basic, Document
etc..)...
Ciao.