Discussione:
Sostituzione di testo nel foglio word
(troppo vecchio per rispondere)
Marconio
2007-04-10 19:02:08 UTC
Permalink
Ciao a tutti ho fatto una form con vba in word, dove ci sono delle textbox in
cui inserire del testo, vorrei poi fare una macro che sostituisce il testo
scritto nella text box con quello nel testo del foglio word mantenedo la
formattazione di destinazione

Grazie a tutti
Mauro Gamberini
2007-04-11 07:16:01 UTC
Permalink
Post by Marconio
Ciao a tutti ho fatto una form con vba in word, dove ci sono delle textbox in
cui inserire del testo, vorrei poi fare una macro che sostituisce il testo
scritto nella text box con quello nel testo del foglio word mantenedo la
formattazione di destinazione
Non è chiaro quelo che vuoi fare.
Vuoi trasferire in Word quanto inserisci nella TextBox?
Seleziona il punto di inserimento.

Private Sub CommandButton1_Click()
Selection.TypeText Text:=TextBox1.Text
End Sub

Ti ricordo(scusa se già lo sai) che puoi
visualizzare la tua UserForm così:

UserForm1 vbModeless

per poter selezionare il documento anche
in presenza della UserForm.
--
---------------------------
Mauro Gamberini
http://www.riolab.org/
Marconio
2007-04-11 15:26:01 UTC
Permalink
Post by Mauro Gamberini
Post by Marconio
Ciao a tutti ho fatto una form con vba in word, dove ci sono delle textbox in
cui inserire del testo, vorrei poi fare una macro che sostituisce il testo
scritto nella text box con quello nel testo del foglio word mantenedo la
formattazione di destinazione
Non è chiaro quelo che vuoi fare.
Vuoi trasferire in Word quanto inserisci nella TextBox?
Seleziona il punto di inserimento.
Private Sub CommandButton1_Click()
Selection.TypeText Text:=TextBox1.Text
End Sub
Ti ricordo(scusa se già lo sai) che puoi
UserForm1 vbModeless
per poter selezionare il documento anche
in presenza della UserForm.
--
---------------------------
Mauro Gamberini
http://www.riolab.org/
Mi spiego meglio, io ho un file word, quando apro vorrei che mi si aprisse
prima un userform dove ci sono delle textbox in cui inserire del testo.
cliccando button1, la form si chiude e si attiva il foglio word, dove
originariamente c'era scritto un testo con una certa formattazione (allineato
a destra, giustificato, grassetto etc...) e viene operata un replace(in
Visualstudio c'è questa funzione) di alcune parole localizzate nel foglio
word.
Successivamente salvo con nome per non modificare le parole da sostituire
così il file è pronto per un uso successivo.
Spero di essere stato piu dettagliato, considera che non ho mai lavorato con
word, solo con visual studio
Mauro Gamberini
2007-04-12 07:00:51 UTC
Permalink
Post by Marconio
Mi spiego meglio, io ho un file word, quando apro vorrei che mi si aprisse
prima un userform dove ci sono delle textbox in cui inserire del testo.
cliccando button1, la form si chiude e si attiva il foglio word, dove
originariamente c'era scritto un testo con una certa formattazione (allineato
a destra, giustificato, grassetto etc...) e viene operata un replace(in
Visualstudio c'è questa funzione) di alcune parole localizzate nel foglio
word.
Successivamente salvo con nome per non modificare le parole da sostituire
così il file è pronto per un uso successivo.
Spero di essere stato piu dettagliato, considera che non ho mai lavorato con
word, solo con visual studio
Per avere la tua UserForm devi aprire un documento..
Puoi aprire la UserForm nell'evento Open del documento.
Devi inserire dei segnalibri identificando così i brani di testo
da modificare.
Puoi modificare il contenuto dei segnalibri con una cosa come
questa:

Private Sub CommandButton1_Click()

ActiveDocument.Bookmarks("aaa").Select
With Selection
.Text = TextBox1.Text
End With

ActiveDocument.Bookmarks("bbb").Select
With Selection
.Text = TextBox2.Text
End With

End Sub

Dove, penso sia comprensibile, TextBox1 e TextBox2
sostituiscono il contenuto dei segnalibri aaa e bbb.
La formattazione rimane quella del testo contenuto
nel segnalibro.

Dai un'occhiata alla guida di Word(Word, non la
guida del vba di Word) per ciò che riguarda l'uso dei
segnalibri.
--
---------------------------
Mauro Gamberini
http://www.riolab.org/
Marconio
2007-04-13 07:26:02 UTC
Permalink
Mauro non prendermi per matto (scemo) ma come/dove scrivo l'evento open.
Mi spiego meglio:
1)Accedo al file word
2)Strumenti>Macro>VisualBasicEditor
3)Si apre in modalità progettazione UserForm1(Dove già ho predisposto
button,textbox etc..)
Non riesco a capire come dichiarare l'evento open del documento e dove.

Se potessi aiutarmi ulteriormente, te ne sarei davvero grato.
Ciao e Buon lavoro
Post by Mauro Gamberini
Post by Marconio
Mi spiego meglio, io ho un file word, quando apro vorrei che mi si aprisse
prima un userform dove ci sono delle textbox in cui inserire del testo.
cliccando button1, la form si chiude e si attiva il foglio word, dove
originariamente c'era scritto un testo con una certa formattazione (allineato
a destra, giustificato, grassetto etc...) e viene operata un replace(in
Visualstudio c'è questa funzione) di alcune parole localizzate nel foglio
word.
Successivamente salvo con nome per non modificare le parole da sostituire
così il file è pronto per un uso successivo.
Spero di essere stato piu dettagliato, considera che non ho mai lavorato con
word, solo con visual studio
Per avere la tua UserForm devi aprire un documento..
Puoi aprire la UserForm nell'evento Open del documento.
Devi inserire dei segnalibri identificando così i brani di testo
da modificare.
Puoi modificare il contenuto dei segnalibri con una cosa come
Private Sub CommandButton1_Click()
ActiveDocument.Bookmarks("aaa").Select
With Selection
.Text = TextBox1.Text
End With
ActiveDocument.Bookmarks("bbb").Select
With Selection
.Text = TextBox2.Text
End With
End Sub
Dove, penso sia comprensibile, TextBox1 e TextBox2
sostituiscono il contenuto dei segnalibri aaa e bbb.
La formattazione rimane quella del testo contenuto
nel segnalibro.
Dai un'occhiata alla guida di Word(Word, non la
guida del vba di Word) per ciò che riguarda l'uso dei
segnalibri.
--
---------------------------
Mauro Gamberini
http://www.riolab.org/
Mauro Gamberini
2007-04-13 07:48:14 UTC
Permalink
Post by Marconio
Mauro non prendermi per matto (scemo) ma come/dove scrivo l'evento open.
1)Accedo al file word
2)Strumenti>Macro>VisualBasicEditor
3)Si apre in modalità progettazione UserForm1(Dove già ho predisposto
button,textbox etc..)
Non riesco a capire come dichiarare l'evento open del documento e dove.
Nell'editor del vba, finestra Progetto-Project
individua: Project(NomeDelTuoDocumento)
Apri: Microsoft Word Oggetti
Trovi ThisDocument
Doppio click su ThisDocument
Sopra al modulo bianco trovi due ComboBox
Fai click in quella di sx(Generale) e seleziona:
Document
Adesso nella ComboBox di dx hai a disposizione gli
eventi del documento, fra i quali l'evento: Open
Se lo selezioni ti trovi sul modulo:

Private Sub Document_Open()

End Sub

All'interno dell'evento inserirai il codice di chiamata
alla tua UserForm, es:

Private Sub Document_Open()
UserForm1.Show
End Sub

o

Private Sub Document_Open()
UserForm1.Show vbModeless
End Sub

a seconda del fatto tu voglia o meno
poter accedere al documento con la UserForm attiva.
--
---------------------------
Mauro Gamberini
http://www.riolab.org/
Loading...