excel中用VBA判断剪切板是否有数据并粘贴到B列如何实现? vba编程代码大全
如何用VBA判断单元格中是否包含形如"B数字H数字T数字"。代码如何写?
Sub RegTest()
Dim oRegExp As Object
Dim sText As String
sText = Range("A1").Text
Set oRegExp = CreateObject("vbscript.regexp")
With oRegExp
'设置是否区分大小写,True表示不区分大小写, False表示区分大小写
.IgnoreCase = True
'设置要查找的字符模式
.Pattern = "B\d+H\d+\T\d+"
'判断是否可以找到匹配的字符,若可以则返回True
MsgBox .Test(sText)
End With
Set oRegExp = Nothing
End Sub
Excel-VBA问题,怎样操作剪切板,答完再加分。
用VBA操作Office剪贴板
这两天对用VBA操作Office剪贴板的问题产生了兴趣。VBA帮助文件对此好像并无多少提及,在网上进行过一系列的搜索,基本上是用API来操作的,只因水平所限,看不明白,便试着用别的方法处理。经反复尝试,总算有些眉目,主要是用SendKeys语句处理的,经多次测试(Word2003),似可行。这样的操作可能实用意义不大,只是作为练习,也算有点收获。
以下为相关代码,欢迎测试,并提出修改意见。
Sub test1()
'检查Office剪贴板现有粘贴项目
Dim a As String
With CommandBars("Task Pane")
WordBasic.editofficeclipboard '从任务窗格调出剪贴板
With .Controls(1)
a = .Caption '提取Office剪贴板控件的题注文本
If a Like "24*" Then
MsgBox "Office剪贴板粘贴项目已满24个!"
ElseIf a Like "#*" Then
MsgBox "Office剪贴板现有" & Split(a, "/")(0) & "个粘贴项目。"
Else
MsgBox "Office剪贴板是空的!"
End If
End With
End With
End Sub
Sub test2()
'操作Office剪贴板(全部粘贴或全部清空,以及对指定粘贴项目的粘贴或删除操作)
Dim b As Byte, c As String
Application.ScreenUpdating = False
With CommandBars("Task Pane")
WordBasic.editofficeclipboard
With .Controls(1)
b = Val(Split(.Caption, "/")(0)) '取得Office剪贴板现有粘贴项目数
If b > 0 Then
c = InputBox("Office剪贴板现有" & b & "个粘贴项目。" & vbCrLf & vbCrLf _
& "请输入要粘贴的项目序号,直接按回车粘贴全部,输入0全部清空", , "全部")
If c = "全部" Then
.SetFocus '焦点移到任务窗格(剪贴板)
SendKeys "{LEFT 3}", False '定位到第一个粘贴项(最上面的项,即最后复制的项)
SendKeys "{TAB 2}", True '定位到“全部粘贴”
SendKeys "{ }", False '执行全部粘贴
ElseIf Val(c) > 0 And Val(c) <= b Then
.SetFocus
SendKeys "{LEFT 3}", False
SendKeys "{DOWN " & Val(c) - 1 & "}", False '定位到指定的粘贴项目
SendKeys "%{DOWN 2}", False '在指定的粘贴项目下拉菜单选择“粘贴”项(前面数字改为3即“删除”项)
SendKeys "{ENTER}", False '执行粘贴(前面数字为3时执行删除)
ElseIf Val(c) = 0 Then
.SetFocus
SendKeys "{LEFT 3}", False
SendKeys "{TAB 3}", True '焦点定位到“全部清空”
SendKeys "{ }", False '执行全部清空
End If
Else
MsgBox "Office剪贴板是空的!"
End If
End With
End With
SendKeys "{ESC 2}", False '焦点从任务窗格返回文档
Application.ScreenUpdating = True
End Sub
VBA 如何操作剪贴板数据
1、首先在电脑中打开Excel,进入VBA页面,实现把单元格内容清空的代码如下。
2、然后定义网址的代码如下。
3、然后实现创建对象HTML的方法代码,如下图所示。
4、然后输入发送请求和等待请求的方法代码。
5、最后把内容保存在表格中的方法代码,如下图所示,就完成了。
VBA 如何操作剪贴板数据
sub yy()
Dim D As DataObject
Set D = New DataObject
D.GetFromClipboard
MsgBox D.GetText(1)
end sub
先引用ms forms 2.0 objiect librery