Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在outlook VBA中将范围设置为当前位置_Vba_Outlook - Fatal编程技术网

在outlook VBA中将范围设置为当前位置

在outlook VBA中将范围设置为当前位置,vba,outlook,Vba,Outlook,我有一个宏,可以在活动电子邮件中插入一个表。现在我的问题是,我不知道如何添加用户在运行宏时键入的表。我想我必须定义一个范围,我已经研究了折叠方法,但是我被卡住了 这是我的代码: sub insertmytable() <br> Dim oRng As Object <br> Dim wdDoc As Object<br> If TypeName(ActiveWindow) = "Inspector" Then<br> If Active

我有一个宏,可以在活动电子邮件中插入一个表。现在我的问题是,我不知道如何添加用户在运行宏时键入的表。我想我必须定义一个范围,我已经研究了折叠方法,但是我被卡住了

这是我的代码:

sub insertmytable() <br>
Dim oRng As Object <br> 
Dim wdDoc As Object<br>
  If TypeName(ActiveWindow) = "Inspector" Then<br>
   If ActiveInspector.IsWordMail And ActiveInspector.EditorType = olEditorWord Then<br>
    Set wdDoc = ActiveInspector.WordEditor<br>
    With wdDoc<br>
     Set oRng = wdDoc.Range<br>
     oRng.collapse<br>
     .tables.Add Range:=oRng, numrows:=2, numcolumns:=5, defaulttablebehavior:=1, autofitbehavior:=0<br>
    end with<br>
   end if<br>
 end if<br>
end sub<br>

谢谢你的帮助

尝试使用.InsertBefore

编辑2014 11 17

Sub insertmytable()

Dim oRng As Object
Dim wdDoc As Object

Dim objSel As Word.Selection

If TypeName(ActiveWindow) = "Inspector" Then

    If ActiveInspector.IsWordMail And ActiveInspector.EditorType = olEditorWord Then

        Set wdDoc = ActiveInspector.WordEditor
        Set objSel = wdDoc.Windows(1).Selection
        Set oRng = objSel.Range
        oRng.Tables.Add Range:=oRng, NumRows:=2, NumColumns:=5, DefaultTableBehavior:=1, AutoFitBehavior:=0

    End If

End If

End Sub

谢谢尼顿。这样我就可以在插入点插入文本。但是如何使用.InsertBefore添加表呢?是的!这给了我最初没有定义的用户定义类型,但后来我在工具->引用下添加了MicrosoftWord14.0对象库,现在它工作得非常好。非常感谢。
Sub insertmytable()

Dim oRng As Object
Dim wdDoc As Object

Dim objSel As Word.Selection

If TypeName(ActiveWindow) = "Inspector" Then

    If ActiveInspector.IsWordMail And ActiveInspector.EditorType = olEditorWord Then

        Set wdDoc = ActiveInspector.WordEditor
        Set objSel = wdDoc.Windows(1).Selection
        Set oRng = objSel.Range
        oRng.Tables.Add Range:=oRng, NumRows:=2, NumColumns:=5, DefaultTableBehavior:=1, AutoFitBehavior:=0

    End If

End If

End Sub