Office中國(guó)論壇/Access中國(guó)論壇

 找回密碼
 注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

雙擊文本框就復(fù)制其內(nèi)容到剪切板的VBA代碼

2015-4-18 08:54| 發(fā)布者: tmtony| 查看: 4531| 評(píng)論: 19|原作者: rjacky|來(lái)自: Office中國(guó)論壇

摘要: 由于在數(shù)據(jù)庫(kù)里面隱藏了菜單,禁用了右鍵和ctrl+C的快捷鍵,請(qǐng)教能不能通過(guò)VBA做到請(qǐng)教雙擊文本框就復(fù)制其內(nèi)容到剪切板?謝謝了
由于在數(shù)據(jù)庫(kù)里面隱藏了菜單,禁用了右鍵和ctrl+C的快捷鍵,請(qǐng)教能不能通過(guò)VBA做到請(qǐng)教雙擊文本框就復(fù)制其內(nèi)容到剪切板?謝謝了
解決辦法:
1.一點(diǎn)通方法 ,供參考
http://www.mzhfr.cn/forum.p ... =%BC%F4%C7%D0%B0%E5

2.Grant 的方法 
    
SendKeys "{Home}+{End}"
SendKeys "^{c}", True

這個(gè)方法包你滿意

3.咱家是貓
   試試DoCmd.RunCommand acCmdCopy

4. fans.net

  
剛才發(fā)錯(cuò)位置了!

給你一個(gè)fan0217寫(xiě)的函數(shù):

Function SendToScrap(strSendText As String) As Boolean
'===============================================================================
'-函數(shù)名稱:         SendToScrap
'-功能描述:         發(fā)送文本到剪貼板
'-輸入?yún)?shù)說(shuō)明:     必選:strSendText As String 發(fā)送的文本
'-返回參數(shù)說(shuō)明:     發(fā)送成功:True  發(fā)送失敗:False
'-使用語(yǔ)法示例:     SendToScrap("你好!")
'-參考:
'-使用注意:         需要引用Microsoft Forms2.0 Object Library (%system32%\FM20.DLL)
'-兼容性:
'-作者:             fan0217 fan0217@163.com
'-更新日期:        2006-02-24
'===============================================================================
On Error GoTo Err_SendToScrap
Dim tmpData As New DataObject
    tmpData.SetText strSendText
    tmpData.PutInClipboard
    
    SendToScrap = True

Exit_SendToScrap:
    Exit Function

Err_SendToScrap:
    SendToScrap = False
    MsgBox Err.Description
    Resume Exit_SendToScrap
       
End Function

在文本框雙擊事件中調(diào)用:
    DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70  '此句是保存代碼,如果是新輸入的內(nèi)容,不加這句將復(fù)制不到內(nèi)容……
    SendToScrap (Me.Text1)

5. rjacky
   
奉上實(shí)例,又麻煩兄臺(tái)了

 copy.rar (10.4 KB, 下載次數(shù): 29)

6.  sgrshh29
  

 copy.rar (10.9 KB, 下載次數(shù): 82)

7.Grant的方法
   
給你用了一個(gè)復(fù)雜的API來(lái)調(diào)用剪貼板,里邊還包含了一些實(shí)用的東西,慢慢看吧.

copy.rar

18.8 KB, 下載次數(shù): 34

相關(guān)閱讀

發(fā)表評(píng)論

最新評(píng)論

引用 一點(diǎn)通 2007-8-7 23:43
供參考
http://www.mzhfr.cn/forum.p ... =%BC%F4%C7%D0%B0%E5
引用 rjacky 2007-8-8 00:03
謝謝一點(diǎn)通在深夜熱心回帖,我之前也找了一下,論壇上面好像都是操作圖片類型,不知道有沒(méi)有操作文本類型的呢?
引用 Grant 2007-8-8 03:36
SendKeys "{Home}+{End}"
SendKeys "^{c}", True

這個(gè)方法包你滿意
引用 咱家是貓 2007-8-8 09:23
GG,人家不是說(shuō)了嘛,程序禁用了Ctrl+C鍵了
引用 咱家是貓 2007-8-8 09:25
試試DoCmd.RunCommand acCmdCopy
引用 輕風(fēng) 2007-8-8 09:34
原帖由 咱家是貓 于 2007-8-8 09:23 發(fā)表
GG,人家不是說(shuō)了嘛,程序禁用了Ctrl+C鍵了

禁用Ctrl+C鍵,但用代碼應(yīng)該可以吧。
引用 wanshan 2007-8-8 09:59
剛才發(fā)錯(cuò)位置了!

給你一個(gè)fan0217寫(xiě)的函數(shù):

Function SendToScrap(strSendText As String) As Boolean
'===============================================================================
'-函數(shù)名稱:         SendToScrap
'-功能描述:         發(fā)送文本到剪貼板
'-輸入?yún)?shù)說(shuō)明:     必選:strSendText As String 發(fā)送的文本
'-返回參數(shù)說(shuō)明:     發(fā)送成功:True  發(fā)送失。篎alse
'-使用語(yǔ)法示例:     SendToScrap("你好!")
'-參考:
'-使用注意:         需要引用Microsoft Forms2.0 Object Library (%system32%\FM20.DLL)
'-兼容性:
'-作者:             fan0217 fan0217@163.com
'-更新日期:        2006-02-24
'===============================================================================
On Error GoTo Err_SendToScrap
Dim tmpData As New DataObject
    tmpData.SetText strSendText
    tmpData.PutInClipboard
   
    SendToScrap = True

Exit_SendToScrap:
    Exit Function

Err_SendToScrap:
    SendToScrap = False
    MsgBox Err.Description
    Resume Exit_SendToScrap
      
End Function

在文本框雙擊事件中調(diào)用:
    DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70  '此句是保存代碼,如果是新輸入的內(nèi)容,不加這句將復(fù)制不到內(nèi)容……
    SendToScrap (Me.Text1)
引用 rjacky 2007-8-8 13:10
感謝大家熱情的幫助。

Grant 版主的方法,代碼和思路都很簡(jiǎn)便,1選擇內(nèi)容,2復(fù)制,但試了一下不行,因?yàn)槲乙呀?jīng)使用autokey宏禁用 ^{C} 了

6樓的朋友提供的方法行不通。

萬(wàn)山大俠轉(zhuǎn)發(fā)的代碼不但要引用,而且必須要先保存操作,實(shí)行起來(lái)有點(diǎn)困難啊。
引用 eyewitnes 2007-8-8 13:17
代碼中設(shè)一個(gè)變量,雙擊的時(shí)候給變量賦值不可以嗎?
引用 sgrshh29 2007-8-8 14:57
原帖由 rjacky 于 2007-8-8 13:10 發(fā)表
感謝大家熱情的幫助。

Grant 版主的方法,代碼和思路都很簡(jiǎn)便,1選擇內(nèi)容,2復(fù)制,但試了一下不行,因?yàn)槲乙呀?jīng)使用autokey宏禁用 ^{C} 了

6樓的朋友提供的方法行不通。

萬(wàn)山大俠轉(zhuǎn)發(fā)的代碼不但要引用, ...


6樓的朋友提供的方法應(yīng)該可以用的,還可以復(fù)制你在文本框里所選中的部分字符串進(jìn)行復(fù)制.方便的話把你的數(shù)據(jù)庫(kù)簡(jiǎn)化后發(fā)上來(lái),我來(lái)試試.空口講來(lái)講去,講不清楚.

[ 本帖最后由 sgrshh29 于 2007-8-8 15:28 編輯 ]
引用 jicheng 2007-8-8 16:18
四樓的方法可行,滿意!
引用 rjacky 2007-8-8 17:22
奉上實(shí)例,又麻煩兄臺(tái)了

copy.rar (10.4 KB, 下載次數(shù): 200)
引用 sgrshh29 2007-8-8 17:30
原帖由 rjacky 于 2007-8-8 17:22 發(fā)表
奉上實(shí)例,又麻煩兄臺(tái)了

25672

copy.rar (10.9 KB, 下載次數(shù): 263)
引用 Grant 2007-8-8 17:49
給你用了一個(gè)復(fù)雜的API來(lái)調(diào)用剪貼板,里邊還包含了一些實(shí)用的東西,慢慢看吧.
引用 Grant 2007-8-8 17:51
原帖由 sgrshh29 于 2007-8-8 17:30 發(fā)表

25673



14樓的方法很巧妙

偷學(xué)了.
引用 rjacky 2007-8-8 17:57
哈哈,想不到幾分鐘不到就解決了,謝謝兩位!

sgrshh29  兄臺(tái)的方法真簡(jiǎn)便!
引用 owwen 2007-8-15 17:23
太強(qiáng)了,真的長(zhǎng)見(jiàn)識(shí)了
引用 cangqiong 2007-8-16 10:41
太強(qiáng)了.借這個(gè)機(jī)會(huì).我想問(wèn)下,
現(xiàn)在只能粘貼一個(gè).
我想多雙擊幾次上面的文本框.下面的文本框就粘貼幾個(gè).這個(gè)代碼.怎么寫(xiě)啊?
引用 WFH6898 2015-11-12 12:57
兄臺(tái)的方法真簡(jiǎn)便有用

查看全部評(píng)論(19)

QQ|站長(zhǎng)郵箱|小黑屋|手機(jī)版|Office中國(guó)/Access中國(guó) ( 粵ICP備10043721號(hào)-1 )  

GMT+8, 2025-7-17 06:08 , Processed in 0.252141 second(s), 26 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

返回頂部