2011-12-26 85 views
5

¿Cómo obtengo el valor de un cuadro de texto en Word? Sé en esta es la sintaxis correcta: ActiveSheet.Shapes(x).Name.Valor de cuadro de texto de ActiveX

pensé en esta sería la sintaxis correcta
ActiveDocument.Shapes(x).Name,
pero esto no parece funcionar.

Con esta pieza de código Tampoco podía encontrar un cuadro de texto:

For i = 1 To ActiveDocument.Shapes.Count 
    MsgBox ActiveDocument.Shapes(i).Name 
Next i 

Respuesta

1

que utilizan etiquetas (propiedades de los objetos -> asignar un nombre de etiqueta) para editar el valor del objeto. Utilice esta sintaxis para cambiar el valor de un control de contenido: ActiveDocument.SelectContentControlsByTag("Your-Content-Control-Tag").Item(1).Range.Text = "your-preferred-value" De todos modos, gracias Rachel Hettinger por su paciencia;).

9
  1. para obtener el valor de un cuadro de texto estándar , utilice esto: ActiveDocument.Shapes(1).TextFrame.TextRange.Text

  2. Para obtener el valor de Controles ActiveX (OLEobjects), utilice esta sintaxis, donde TextBox1 es el nombre del control, utilice ActiveDocument.TextBox1.Value

  3. Para obtener el nombre de controles ActiveX, utilice esto: ActiveDocument.InlineShapes(1).OLEFormat.Object.Name

+0

Gracias por su respuesta, pero esto es para un cuadro de texto predeterminado, y no para un cuadro de texto de control ActiveX. Ahora estoy leyendo algo sobre 'OLEObjects' lo que parece un poco más en la dirección correcta. – jroeleveld

+0

@jroeleveld Edité la respuesta para incluir la sintaxis para los controles ActiveX. –

+0

Sí, pero ¿cómo devuelvo el nombre del control? – jroeleveld

Cuestiones relacionadas