none
word vba 使用AddOLEControl时,当要插入控件的页面存在软回车(shift+enter/ctrl+enter)位置不准确 RRS feed

  • 问题

  • word的vba编程,使用AddOLEControl时,当要插入控件的页面存在软回车(shift+enter/ctrl+enter)位置不准确,控件跳到上面的页面了。

    Sub ctrl()
        ActiveDocument.ToggleFormsDesign
        Dim rg As Word.Range
        Set rg = Selection.GoTo(wdGoToPage, wdGoToAbsolute, 2)
        ActiveDocument.Shapes.AddOLEControl "forms.checkbox.1", 100, 100, , , rg
    End Sub

    当运行上面代码时,效果如下图:

    有什么办法让控件准确地插入到第二页的相应位置上?

    • 已移动 Mike Feng 2012年2月8日 6:30 VBA (发件人:Visual Basic)
    2012年2月3日 3:22

全部回复

  • Please try this,

    ActiveDocument.ToggleFormsDesign
        Selection.InsertBreak Type:=wdPageBreak
        Dim rg As Word.Range
        Set rg = Selection.GoTo(wdGoToPage, wdGoToAbsolute, 2)
        ActiveDocument.Shapes.AddOLEControl "forms.checkbox.1", 100, 100, , , rg


    亂馬客blog: http://www.dotblogs.com.tw/rainmaker/
    2012年2月3日 6:47
  • Please try this,

    ActiveDocument.ToggleFormsDesign
        Selection.InsertBreak Type:=wdPageBreak
        Dim rg As Word.Range
        Set rg = Selection.GoTo(wdGoToPage, wdGoToAbsolute, 2)
        ActiveDocument.Shapes.AddOLEControl "forms.checkbox.1", 100, 100, , , rg


    亂馬客blog: http://www.dotblogs.com.tw/rainmaker/
    In fact, this kind of situation is ctrl+enter. The Checkbox also added to the first page.
    2012年2月3日 8:35
  • Sorry, 我在word中,直接Run Macro,會在第2頁哦! 還是您是不是在Macro中執行呢!?

    Sub Macro1()
    '
    ' Macro1 Macro
    '
    '
        Selection.InsertBreak Type:=wdPageBreak
        Dim rg As Word.Range
        Set rg = Selection.GoTo(wdGoToPage, wdGoToAbsolute, 2)
        ActiveDocument.Shapes.AddOLEControl "forms.checkbox.1", 100, 100, , , rg
     
    End Sub


    亂馬客blog: http://www.dotblogs.com.tw/rainmaker/
    2012年2月3日 10:58
  • 是啊,也许你的文档不是直接按shift+enter回车的吧!

    2012年2月6日 2:08
  • Dim rg As Word.Range
    Set rg = Selection.GoTo(wdGoToPage, wdGoToAbsolute, 2)

     

    =>

    Dim rg As Word.Range

     Set rg = Selection.GoTo(What:=wdGoToPage, Which:=wdGoToNext, Name:="2")

     
    亂馬客blog: http://www.dotblogs.com.tw/rainmaker/
    2012年2月6日 2:51
  • 一样的效果!!

     

    2012年2月6日 3:07
  • 那只好用Macro錄一下,然後Try看看~~ 

     


    亂馬客blog: http://www.dotblogs.com.tw/rainmaker/
    2012年2月6日 3:12
  • VBA的问题请在这里问: http://social.msdn.microsoft.com/Forums/en-US/isvvba/threads

    谢谢 


    Mike Feng
    MSDN Community Support | Feedback to us
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    2012年2月8日 6:30