将单元格的值复制到文本框中

时间:2015-12-08 03:32:24

标签: excel excel-vba copy-paste vba

这就是我想做的事情:

每次点击一个复选框, - 将复制它旁边的单元格      - 找到这个文本框      - 如果有的话,在文本框中找到字符串的结尾 - 并将复制的单元格(值)粘贴到此文本框中

我设法弄清楚如何复制已检查的单元格,但我试图将其粘贴到文本框中的所有代码都无效。

下面是我到目前为止所得到的

Sub checkBoxHandler()

    Dim shp As Shape

    Set shp = ActiveSheet.Shapes(Application.Caller)

    shp.TopLeftCell.Offset(1, 1).Select    ' 1 COL below checkbox
    Selection.Copy  'copy the cell next to the checkbox
    Call UpdateTextBox


    Set shp = Nothing
End Sub

Sub UpdateTextBox()
    Dim DataObj As MSForms.DataObject
    Set DataObj = New MSForms.DataObject
    DataObj.GetFromClipboard

    strPaste = DataObj.GetText(1)    ' get ext from clipboard


End Sub

2 个答案:

答案 0 :(得分:0)

试试这个:

Visit

答案 1 :(得分:0)

这对我有用,请确保工作表和文本框名称与您匹配。

Sub ChangeText()
    Dim r As Range
    Dim sh As Shape

    Set sh = Sheets("Sheet1").Shapes("Textbox 1")
    Set r = ActiveSheet.Shapes(Application.Caller).TopLeftCell    'find the range of the button clicked.

    sh.TextFrame.Characters.Text = r.Offset(1,1)
End Sub