Worksheet1! A1에 무언가를 쓸 때 Worksheet2에 텍스트 상자를 만드는 매크로가 필요합니다. 문제는 데이터를 새로 고칠 때마다 새로 고치기를 원한다는 것입니다. 하나 만들었지 만 매크로가 다시 실행되므로 다른 텍스트 위에 하나씩 여러 텍스트 상자가 남습니다. 또한 셀이 비어 있으면 텍스트 상자를 삭제하려면.텍스트 상자 새로 고침 VBA
어떤 도움을 주셔서 감사합니다. 감사.
Sub criarcaixastexto()
Dim wsActive As Worksheet
Dim box As Shape
Set wsActive = Worksheets(2)
Set box = wsActive.Shapes.AddTextbox(msoTextOrientationHorizontal, 20, 20, 100, 50)
box.TextFrame.Characters.Text = Range("Folha1!A1").value
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$1" Then
Call criarcaixastexto
End If
End Sub
Newtextboxes를 만드는 대신 하나의 TextBox를 만든 다음 A1 셀을 변경하면 해당 TextBox 값을 변경할 수 있습니다. – danieltakeshi
@danieltakeshi - 그 좋은 생각이지만, OP는 값이 비어 있으면 그것을 삭제하려고합니다. – Vityata
그래, 나는 팁을 주었다. 왜냐하면 나는 TextBox 값을 변경하는 것이 더 간단하고 더 나은 시간 성능을 가지고 있다고 생각하기 때문이다. – danieltakeshi