excel如何用vba实现当鼠标单击单元格时,自动将该单元格的内容复制到剪切板
强调:不是复制单元格,是复制单元格的内容。PrivateSubWorksheet_SelectionChange(ByValTargetAsRange)Target.Co...
强调:不是复制单元格,是复制单元格的内容。
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Target.Copy
End Sub
像这样的只能复制单元格,无法单纯复制单元格的内容,不符合需要。
这个问题我百度了一晚上,发现从2005年起就有人在问,一直没有答案,请大侠出手!
(只有20分了,还请高手不吝赐教。) 展开
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Target.Copy
End Sub
像这样的只能复制单元格,无法单纯复制单元格的内容,不符合需要。
这个问题我百度了一晚上,发现从2005年起就有人在问,一直没有答案,请大侠出手!
(只有20分了,还请高手不吝赐教。) 展开
4个回答
推荐于2016-07-08 · 知道合伙人旅游行家
关注
展开全部
如果单纯是文肆桐本很容易呀。
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim a As String
a = Target.text
SetText a
End Sub
如稿陵果键雹戚有图片就麻烦了。
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim a As String
a = Target.text
SetText a
End Sub
如稿陵果键雹戚有图片就麻烦了。
追问
就是纯文本的,感觉你的方向对了,但是调试时提示“编译错误:子过程或函数未定义”
因为对vba不熟,还请再麻烦处理下。
追答
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim a As String
Dim Clip As Object
a = Target.Text
if a<>"" then
Set Clip = CreateObject("new:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}")
With Clip
.SetText a '变量
.PutInClipboard
End With
Set Clip = Nothing
end if
End Sub
放入sheet1中。
我调试了一下,缺少的是一个剪切板的对象。编辑一个剪切板的对象clip,然后就可以了。
你可以试一下。不过这段代码有点缺点。就是无法判断你要复制的内容,只要是SHEET1中,点击哪个非空单元格就复制哪个。无法判断你要复制的内容。你也可以在复制内容中加入筛选的条件,一遍进行复制。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用copy方法不会只复制内容,他包含了格式等。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
直接用target.value.copy 不行吗
追问
提示“运行时错误‘424’ 要求对象”
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询