
你的题目要求的还是可以实现的,但是要是获取光标位置的字符,还没有见过,
第一个字符 = Mid(Text1Text, 1, 1)
n = 4
If n > Len(Text1Text) Then n = Len(Text1Text)
第N个字符 = Mid(Text1Text, n, 1)
MsgBox 第一个字符 & "," & 第N个字符
移动光标至文档开始
SelectionHomeKey unit:=wdStory
下面的供参考:
Sub MoveToCurrentLineStart()
'移动光标至当前行首
SelectionHomeKey unit:=wdLine
End Sub
Sub MoveToCurrentLineEnd()
'移动光标至当前行尾
SelectionEndKey unit:=wdLine
End Sub
Sub SelectToCurrentLineStart()
'选择从光标至当前行首的内容
SelectionHomeKey unit:=wdLine, Extend:=wdExtend
End Sub
Sub SelectToCurrentLineEnd()
'选择从光标至当前行尾的内容
SelectionEndKey unit:=wdLine, Extend:=wdExtend
End Sub
Sub SelectCurrentLine()
'选择当前行
SelectionHomeKey unit:=wdLine
SelectionEndKey unit:=wdLine, Extend:=wdExtend
End Sub
Sub MoveToDocStart()
'移动光标至文档开始
SelectionHomeKey unit:=wdStory
End Sub
Sub MoveToDocEnd()
'移动光标至文档结尾
SelectionEndKey unit:=wdStory
End Sub
Sub SelectToDocStart()
'选择从光标至文档开始的内容
SelectionHomeKey unit:=wdStory, Extend:=wdExtend
End Sub
Sub SelectToDocEnd()
'选择从光标至文档结尾的内容
SelectionEndKey unit:=wdStory, Extend:=wdExtend
End Sub
Sub SelectDocAll()
'选择文档全部内容(从WholeStory可猜出Story应是当前文档的意思)
SelectionWholeStory
End Sub
Sub MoveToCurrentParagraphStart()
'移动光标至当前段落的开始
SelectionMoveUp unit:=wdParagraph
End Sub
Sub MoveToCurrentParagraphEnd()
'移动光标至当前段落的结尾
SelectionMoveDown unit:=wdParagraph
End Sub
Sub SelectToCurrentParagraphStart()
'选择从光标至当前段落开始的内容
SelectionMoveUp unit:=wdParagraph, Extend:=wdExtend
End Sub
Sub SelectToCurrentParagraphEnd()
'选择从光标至当前段落结尾的内容
SelectionMoveDown unit:=wdParagraph, Extend:=wdExtend
End Sub
Sub SelectCurrentParagraph()
'选择光标所在段落的内容
SelectionMoveUp unit:=wdParagraph
SelectionMoveDown unit:=wdParagraph, Extend:=wdExtend
End Sub
Sub DisplaySelectionStartAndEnd()
'显示选择区的开始与结束的位置,注意:文档第1个字符的位置是0
MsgBox ("第" & SelectionStart & "个字符至第" & SelectionEnd & "个字符")
End Sub
Sub DeleteCurrentLine()
'删除当前行
SelectionHomeKey unit:=wdLine
SelectionEndKey unit:=wdLine, Extend:=wdExtend
SelectionDelete
End Sub
Sub DeleteCurrentParagraph()
'删除当前段落
SelectionMoveUp unit:=wdParagraph
SelectionMoveDown unit:=wdParagraph, Extend:=wdExtend
SelectionDelete
End Sub
给个代码:
Private Sub Worksheet_Change(ByVal Target As Range)
r = SelectionRow
c = SelectionColumn
If c < 17 Then
Cells(r - 1, c + 1)Select
Else
Cells(r, 1)Select
End If
End Sub
用法:复制以上代码,右键点工作表标签,选查看代码,粘贴到新开的窗口中。关闭新窗口,回到Excel中,就可以使用了。
晕,不知道你解决了没有,看一下下面
代码
,你应该能举一反三。
If
ActiveDocumentRangeEnd
=
SelectionStart
+
1
Then
MsgBox
"页尾"
Else
MsgBox
Selectionend
+
1
'当前位置
End
If
Selection的end
和start
视需要而定,折叠状态下是一样的。
我觉得从逻辑上是行不通的
因为
假定原光标在a文本框
我们可以设置一个中间变量存放当前光标(在a)的位置
现在鼠标指针移动到b文本框
如果双击时触发一个事件
则可以在此事件过程中将b的内容写入中间变量指示的(a)位置
即可满足你的要求
但是,双击好像是触发两个事件
一个是单击、一个是双击
当触发单击时
中间变量的指针指向了b
那么双击事件的过程就只能将b的内容赋给了b而不是a
建议在每个文本框旁添加一个按钮
仍然设置中间变量存放光标所在位置
当想要把某个文本框的内容赋给它时
单击该文本框旁的按钮
就可以实现你的要求了
(水平有限,仅供参考)
以上就是关于VBA问题,如何选择文本框内的第一个或第N个字符全部的内容,包括:VBA问题,如何选择文本框内的第一个或第N个字符、word vba怎样把光标定位到指定字符串的位置、VBA光标定位等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)