LL 방법 @ 당신이 shapes.addtextbox 함께 일을 이런 식으로 작업을 수행합니다
With ActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal, 146#, 68#, _
301#, 181#).TextFrame
.Characters.Font.Color = RGB(255, 0, 0)
.Characters.Text = "Whatever your string is"
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
End With
내가 다음 나머지는 포장되는 텍스트 상자에 입력을 유지하는 경우 빨간색으로 표시되고 첫 번째 과제가있는 곳이면 무엇이든간에 스크린 샷의 명령 버튼은 위의 코드를 실행하여 재생됩니다.
텍스트를 텍스트 상자에 계속 추가하고 빼는 경우 이름이 지정된 모양을 얻는 것이 좋습니다. 그런 다음 거기에있는 문자열을 잡고 추가 할 수 있습니다. . 아래 코드는 VBA를 사용하여 텍스트 상자에서 이름을 지정하고 텍스트를 추가하는 방법을 보여줍니다. . 당신은 이제 텍스트 상자 내의 특정 텍스트의 색을 변경할 수 있습니다. 이것은 멋지지만 또 다른 주제 일 수 있습니다.
Option Explicit
Private Sub CommandButton1_Click()
Dim tbShape As Shape
Dim WKS As Worksheet
Dim newText As String
Dim previousText As String
Dim textRange As Range
Set WKS = ThisWorkbook.ActiveSheet
Set textRange = WKS.Range("C1") 'define where to grab the new text
newText = CStr(textRange) 'convert what is in the cell to string
With ActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal, 146#, 68#, _
301#, 181#)
.Name = "myTextBox"
End With
Set tbShape = ActiveSheet.Shapes("myTextBox")
With tbShape.TextFrame
.Characters.Font.Color = RGB(255, 0, 0)
.Characters.Text = "This is the intial text of the textbox 11111111 222222 "
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
End With
'grab the previous textbox string
previousText = tbShape.TextFrame.Characters.Text
'add your new text to what was there before
tbShape.TextFrame.Characters.Text = previousText & newText
End Sub
그래서 도움이 되길 바랍니다. 개발자 탭이있는 경우 가장 쉬운 방법은 ActiveX 텍스트 상자를 추가하는 것입니다 (생각하지 않는 .characters를 사용할 수 없지만 텍스트 상자 이름과 여러 속성을 지정할 수 있습니다 : 텍스트 글꼴, 크기, 색상 .forecolor)를 속성 탭이나 vba에서 바로 사용할 수 있습니다 (모든 색상을 만들기 쉽고 텍스트 상자에서 선택한 텍스트 만 VBA에서 특정 색상으로 바꿀 수 있음). 전체 상자? 쉬운.
'get comments
comments = msrSheet.OLEObjects("TextBox1").Object.Text
: 당신이이 방법을하고 VBA에서 텍스트 상자의 내용을 잡아하려면
, 당신은 당신의 코드에서 AA 설명 문자열을 어둡게하고 당신이 당신의 액티브 X 텍스트 상자에 TextBox1에 이름을 말할 수
텍스트 상자를 삽입하는 첫 번째 방법 (현재 사용하고있는 첫 번째 방법)을 사용하여 선택한 텍스트 만 새로운 색상으로 변경할 수 있습니다. 실전에서보고 싶습니까? 위이지만, 단지 최종 하위 전에, 이전에 거기 지금 무엇을 빨간색, 발견 경우 파란색 될 것입니다 코드 블록에서 정의하는 문자열,이 경우에 나는 느리게
'grab the previous textbox string
previousText = tbShape.TextFrame.Characters.Text
'Change the color of the new string in the textbox to blue
Dim blueText As String
blueText = newText
With tbShape.TextFrame
.Characters(InStr(previousText, blueText), Len(blueText)).Font.Color = RGB(0, 0, 255)
End With
를 newText
에 할당 할 것을 아래에이 코드를 추가합니다
진심으로이 텍스트 상자가 제다이 검색에 도움이되기를 바랍니다. 환호 - WWC
나는 이것을 위해 몇 가지 해결책을 찾았습니다. ** https : // stackoverflow를보십시오.co.kr/questions/28960875/change-font-color-of-a-textbox ** 및 ** https://www.computing.net/answers/office/vba-textbox-font-color/10760.html** – Zac
다음은 텍스트 상자의 속성과 메서드입니다. https://msdn.microsoft.com/en-us/library/microsoft.office.tools.excel.controls.textbox.aspx 일부 문자 만 변경하려고합니까? 모든 캐릭터? –
스택 오버플로에 오신 것을 환영합니다! [둘러보기]는 물론 [ask]와 [mcve]도 확인하십시오. – ashleedawg