q411139597 2015-01-10 10:24 采纳率: 50%
浏览 2099

vb.net操作word最后一步求解

If e.KeyCode = Keys.Enter Then
Dim q As Integer = InputBox("请输入搜索页码的次数")
If q > 0 Then
Static Dim p(q) As String
Dim j As Integer
For j = 0 To q - 1
p(j) = InputBox("请输入关键字")

            Next
            Dim temp
            If p(j) = p(q) Then
                For j = 0 To q - 1
                    If p(j) > p(j + 1) Then
                        temp = p(j)
                        p(j) = p(j + 1)
                        p(j + 1) = temp

                    End If
                Next

            End If

            For j = 0 To q - 1
                Dim WDAPP As Object
                WDAPP = New Word.Application
                WDAPP.visible = True

                WDAPP.Documents.open(FileName:=TextBox1.Text)



                WDAPP.Selection.Find.ClearFormatting()
                With WDAPP.Selection.Find.text = p(j)
                    WDAPP.Selection.Find.Execute(p(j))
                    Dim i As String
                    i = WDAPP.Selection.Information(3)


                    Dim WDAPP1 As Object
                    WDAPP1 = New Word.Application
                    WDAPP1.visible = True

                    WDAPP1.documents.open(FileName:=TextBox2.Text)
                    Dim missing = System.Reflection.Missing.Value
                    Dim unit = Word.WdUnits.wdStory
                    WDAPP1.Selection.EndKey(unit, missing)
                    WDAPP1.Selection.TypeText(text:=p(j))
                    WDAPP1.Selection.MoveDown(Unit:=4, Count:=1)
                    WDAPP.Documents.Close(Word.WdSaveOptions.wdDoNotSaveChanges)
                    WDAPP1.Selection.EndKey()

                    WDAPP1.Selection.ParagraphFormat.TabStops.Add(Position:=WDAPP1.CentimetersToPoints(20), Alignment:=2, Leader:=2)

                    WDAPP1.Selection.TypeText(Text:=vbTab)

                    WDAPP1.Selection.TypeText(Text:=i)

                    WDAPP1.Selection.TypeText(Text:=vbCrLf)
                    If WDAPP1.ActiveDocument.Saved = False Then


                        WDAPP1.ActiveDocument.Save()
                    End If
                    WDAPP.Quit()
                    WDAPP1.Quit()
                    WDAPP = Nothing
                    WDAPP1 = Nothing

                End With
            Next

        End If


    End If
        报错这句 WDAPP1.Selection.TypeText(text:=p(j))
        “System.Runtime.InteropServices.COMException”类型的未经处理的异常在 Microsoft.VisualBasic.dll 中发生 

其他信息: 类型不匹配。 (异常来自 HRESULT:0x80020005 (DISP_E_TYPEMISMATCH))
说是调用的目标发生了异常
我查资料说是这个错误是因为要调用com里的东西。但始终不知道应该加什么
这段代码的功能是循环查询在textbox1的关键字所在页码,然后输出在textbox2中输出关键字所在页码
弄了一夜了来个高手吧
是数组的问题么????

  • 写回答

2条回答 默认 最新

  • q411139597 2015-01-10 14:00
    关注

    我初学没办法,很多东西没学过查资料查不到。来个大神帮帮我把

    评论

报告相同问题?

悬赏问题

  • ¥20 为什么我写出来的绘图程序是这样的,有没有lao哥改一下
  • ¥15 js,页面2返回页面1时定位进入的设备
  • ¥200 关于#c++#的问题,请各位专家解答!网站的邀请码
  • ¥50 导入文件到网吧的电脑并且在重启之后不会被恢复
  • ¥15 (希望可以解决问题)ma和mb文件无法正常打开,打开后是空白,但是有正常内存占用,但可以在打开Maya应用程序后打开场景ma和mb格式。
  • ¥15 绘制多分类任务的roc曲线时只画出了一类的roc,其它的auc显示为nan
  • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝
  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
  • ¥15 错误 LNK2001 无法解析的外部符号