Vba 从文本框复制文本并粘贴到新工作表的单元格中

Vba 从文本框复制文本并粘贴到新工作表的单元格中,vba,excel,Vba,Excel,我正在寻找一种方法来复制由上一个宏创建的文本框的所有文本,并将其粘贴到Sheet3上的单元格A1中 有什么建议吗 以下是上一个宏: Sub Copy() Dim srng As Range Dim sWs As Worksheet: Set sWs = Sheets("Sheet1") Set srng = sWs.Range("L1", sWs.Range("L" & sWs.Rows.Count).End(xlUp)) With Sheets("S

我正在寻找一种方法来复制由上一个宏创建的文本框的所有文本,并将其粘贴到Sheet3上的单元格A1中

有什么建议吗

以下是上一个宏:

  Sub Copy()
    Dim srng As Range
    Dim sWs As Worksheet: Set sWs = Sheets("Sheet1")
    Set srng = sWs.Range("L1", sWs.Range("L" & sWs.Rows.Count).End(xlUp))
    With Sheets("Sheet4").Shapes("Textbox 2").OLEFormat.Object
        .Text = Join(Application.Transpose(srng), vbCrLf)
    End With
End Sub

你可以数形状。然后将文本放在顶部计数的文本框中。 比如说

    Sub Copy()
    Dim ws As Worksheet, sh As Worksheet
    Dim Rws As Long, Rng As Range
    Dim i As Long
    Dim shP As Shape

    Set sh = Sheets("Sheet1")
    Set ws = Sheets("Sheet4")

    With sh
        Rws = .Cells(Rows.Count, "F").End(xlUp).Row
        Set Rng = .Range(.Cells(1, "F"), .Cells(Rws, "F"))
    End With

    With ws.Shapes
        i = .Count
    End With

    Set shP = ws.Shapes(i)

    shP.TextFrame.Characters.Text = Join(Application.Transpose(Rng), vbCrLf)

End Sub

创建的
文本框是否保留在工作表中?比如,如果你运行它10次,你会得到10个
文本框
?第一次运行宏时会发生什么,并且没有任何
文本框
?文本框将是相同的,在本例中是文本框1,并且在工作表3上始终是相同的。你已经有一些可以共享的代码了吗?了解如何创建这些文本框会有所帮助。这是一个关于组合框的问题,但我相信它会提供您查找最新文本框所需的信息。