Condividi tramite

VBA creare macro che modifica una FORMCHECKBOX di WORD in base la valore vero/falso di una cella di EXCEL

Anonimo
2014-10-17T11:14:41+00:00

Salve a tutti....

Sono poco pratico in linguaggio VBA mi dovete scusare

Sto utilizzando una macro (perfettamente funzionante) che mi permettere si sostituire i segnalibri (X001 - X002 ecc) di word di un specifico file (Verbale 2028.doc) con una relativa cella di excel.....

La macro viene fatta partire da Excel...

Sub Verbale2028()

'

' Verbale2028 Macro

' Macro registrata il 23/09/2014 da PANCIERA ROBERTO

'

'

    Sheets("Lineare").Select

Stringa001 = Range("A1").Value

Stringa003 = Range("A2767").Value

Stringa004 = Range("A2768").Value

Stringa005 = Range("A2769").Value

Stringa006 = Range("A2771").Value

Stringa007 = Range("A17").Value

Stringa008 = Range("A2376").Value

Stringa009 = Range("A2403").Value

Stringa010 = Range("A2537").Value

Stringa011 = Range("A2538").Value

Stringa012 = Range("A2782").Value

Stringa013 = Range("AA1").Value

Const sFILENAME As String = "C:\Prova\Verbale 2028.doc"

Set wrdApp = CreateObject("Word.Application")

wrdApp.Visible = True

Set wrdDoc = wrdApp.Documents.Open(sFILENAME)

With wrdDoc

.Bookmarks("X001").Range.Text = Stringa001

.Bookmarks("X003").Range.Text = Stringa003

.Bookmarks("X004").Range.Text = Stringa004

.Bookmarks("X005").Range.Text = Stringa005

.Bookmarks("X006").Range.Text = Stringa006

.Bookmarks("X007").Range.Text = Stringa007

.Bookmarks("X008").Range.Text = Stringa008

.Bookmarks("X009").Range.Text = Stringa009

.Bookmarks("X010").Range.Text = Stringa010

.Bookmarks("X011").Range.Text = Stringa011

.Bookmarks("X012").Range.Text = Stringa012

.Bookmarks("X013").Range.Text = Stringa013

    Sheets("Sel").Select

    Range("B2").Select

End With

End Sub

Ora vorrei che per poter spuntare la casellina di controllo word (FORMCHECKBOX) es "Controllo1" fosse possibile utilizzare il valore della cella D1 (che potrebbe essere VERO/FALSO o 0/1 per facilitare le cose) un comando tipo....

Stringa014 = Range("D1").Value

****

set value . Formcheckbox ("Controllo1") = Stringa014

o giù di lì....

gradirei che la funzione fosse integrata alla macro sopracitata....

Grazie mille

Microsoft 365 e Office | Word | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

Risposta accettata dall'autore della domanda

Anonimo
2015-03-06T18:09:18+00:00

ho trovato da solo la risposta...... utilizzo.... questa macro

Cross01 = Range("A1").Value

Cross02 = Range("A2").Value

Cross03 = Range("A3").Value

Const sFILENAME As String = "C:\Test\3Test.doc"

Set wrdApp = CreateObject("Word.Application")

wrdApp.Visible = True

Set wrdDoc = wrdApp.Documents.Open(sFILENAME)

With wrdDoc

.FormFields("Controllo01").CheckBox.Value = Cross01

.FormFields("Controllo02").CheckBox.Value = Cross02

.FormFields("Controllo03").CheckBox.Value = Cross03

con questa macro mi assicuro che le celle A1  /   A2   /   A3

abbiano come valore VERO o FALSO cosicchè mi va a flaggare la casella di controllo in quel determinato word (denominate Controllo01 / Controllo02 / Controllo03)

La risposta è stata utile?

0 commenti Nessun commento

0 risposte aggiuntive

Ordina per: Più utili