objDoc.FormFields.Item(i).Result 这个只能读到WORD 中的FormFields的值
      

解决方案 »

  1.   

    今天试了很久
    shapes 集合,inlineshapes集合,等等Excel成功了,word就是不行,明天再试up
      

  2.   

    Public Sub main()
        Dim objDocument As Word.Document
        Dim objApp As Word.Application
        
        Set objApp = New Application
        Set objDocument = objApp.Documents.Open("C:\YWG\B.DOC")
        'objDocument.VBProject.Protection=
        objDocument.Activate
        Dim i As Indexes
        Dim j As Long
        For j = 1 To objDocument.FormFields.Count Step 1
    On Error Resume Next
            Debug.Print j; objDocument.FormFields.Item(j).Result
        Next j
        objDocument.Close
        objApp.Quit
    End Sub
    Public Sub test()
        Dim obj As Object
        Dim iCount As Long
        Dim i As Long
        iCount = ThisDocument.InlineShapes.Count
        Dim strType As String
        For i = 1 To iCount Step 1
            Set obj = ThisDocument.InlineShapes(i).OLEFormat.Object
            strType = ThisDocument.InlineShapes(i).OLEFormat.ClassType
            
            Select Case strType
            Case "Forms.ComboBox.1"
                Debug.Print i; obj.Name; vbTab; obj.Value
            Case "Forms.CheckBox.1"
                Debug.Print i; obj.Name; vbTab; obj.Value
            Case "Forms.CommandButton.1"
                Debug.Print i; obj.Name; vbTab; obj.Caption
            Case "Forms.TextBox.1"
                Debug.Print i; obj.Name; vbTab; obj.Text
            End Select
        Next i
    End Sub