'excelのセルの値ををクリップボードにコピーする関数。A4の一行上のセルA3の値です。
'セルA1=5
'セルA2=6
'セルA3=A1+A2
'セルA4=myex2cl()
'--------------------------------------------------------------------------------
'問題点①2行目を直したら正しいですが、1行目を直したら2行目が入ります。
'問題点②セルを移動せずに、参照で対応できますか。短くしたいです。
'問題点③さらに、myex2cl(A3)とセルのアドレス指定ができると助かります。
'よろしくお願いします。
'--------------------------------------------------------------------------------
Function myex2cl()
Application.Volatile
i = ActiveCell.Row
j = ActiveCell.Column
Range(myfuncpos()).Select
myClipboardIn (Cells(ActiveCell.Row + 1, ActiveCell.Column).Value)
Cells(i, j).Select
myex2cl = ""
End Function
Function myfuncpos()
Dim r As Range
Set r = Application.Caller
myfuncpos = r.Address(False, False)
End Function
Sub myClipboardIn(x)
Dim myData As DataObject
Dim myCb As Variant
Set myData = New DataObject
myData.SetText x
myCb = myData.GetText
myData.PutInClipboard
End Sub
'--------------------------------------------------------------------------------
'(参考)VBEの参照設定で『Microsoft Forms 2.0 Object Library』が見つからない
'http://www.tomodachihiroba.org/square/2016/01/vbemicrosoft-fo.html
'(参考)EXCEL/VBA 変数の値をクリップボードにコピーする方法
'http://oshiete.goo.ne.jp/qa/5650002.html

回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/10/11 15:09