|
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件 ★ 免费下载 ★ ★ 使用帮助★
本帖最后由 superkugua 于 2014-10-23 08:25 编辑
Private Sub CreatVar(VarName As String)
'判断ActiveDocument中是否存在VarName变量,若不存在则创建之
Dim MyTemp As String
On Error Resume Next
If IsError(MyTemp = ActiveDocument.Variables(VarName).Value) Then
ActiveDocument.Variables.Add Name:=VarName, Value:=0
Err.Clear
End If
End Sub
Sub Document_Close()
On Error Resume Next
With ActiveDocument
'判断是否需要重新记录新的选择位置(或者说光标位置),以便下次打开文档时载入
If .Saved And .Variables("Start").Value = Selection.Start And .Variables("End").Value = Selection.End Then Exit Sub
'将光标起始位置赋值给文档变量("START")
.Variables("Start").Value = Selection.Start
'将光标结束位置赋值给文档变量("END")
.Variables("End").Value = Selection.End
End With
End Sub
Sub Document_Open()
CreatVar "Start" '创建Start变量
CreatVar "End" ' 创建End变量
With ActiveDocument
'选定区域,让文档跳至上次浏览的位置
.Range(.Variables("Start").Value, .Variables("End").Value).Select
.Saved = True '设定文档的存盘状态,True表示已存盘,若文档有修改,则该值会变成False
End With
End Sub
以上代码放于Normal的Thisdocument模块中,如图所示。
在word2003里调试通过。副作用:只要打开过的文档,并且存盘,就会增加”Strat"、"End"这两个变量存贮在文档里。
感谢
http://club.excelhome.net/forum.php?mod=viewthread&tid=102466
中的 守柔 的代码,我的代码修改自他的代码。
|
|