EXCEL Userform에서 여러 텍스트 상자가 있습니다. 그들의 수는 동적으로 생성 될 때 달라질 수 있습니다.사용자 양식의 Excel VBA 텍스트 상자 클릭 이벤트
다음을 얻고 싶습니다. 사용자가 텍스트 상자를 클릭하면 메시지 상자를 표시하지만이 특정 userform에만 표시되고 첫 번째 클릭에 대해서는 한 번만 표시됩니다.
이 작업을 수행하는 데 도움이되는 설명서를 알려 주실 수 있습니까?
이에 인터넷 검색을 한 후, 내 코드는 다음과 같습니다
정의 폼 : 텍스트 상자
의 변수 번호를 만들Option Explicit
Dim oKlasseExcel() As Klasse1
Sub userform_initialize()
Dim i As Long
Dim k As Long
k = InputBox("insert number")
i = 0
Do
ReDim oKlasseExcel(0 To i)
Set oKlasseExcel(i) = New Klasse1
Set oKlasseExcel(i).objTextbox = Userform1.Controls.Add("Forms.Textbox.1", "Textbox" & CStr(i))
With oKlasseExcel(i).objTextbox
.Left = 30
.Top = 75 + 25 * i
.Width = 300
.Height = 25
.MultiLine = True
End With
i = i + 1
Loop Until i = k
End Sub
클래스 모듈 :
Option Explicit
Public WithEvents objTextbox As MSForms.TextBox
Sub objTextbox_click()
MsgBox objTextbox.Name & ": Changeereignis ausgelöst!"
End Sub
은 내가 만들 수 있다고 생각 아마도 클래스 모듈 일 것입니다. 그러나 저는 완전히 이것에 익숙하지 않습니다. 그리고 저는 약간의 설명문이있는 잘 쓰여진 예제가 필요하다고 생각합니다. 텍스트 상자를 클릭하면 위 코드가 아무런 효과가 없습니다.
* 실마리가 없습니다. * 글쎄 ... 너 뭔가 해봤 니? 어떤 종류의 플래그를 사용하여 클릭을 캡처 한 후에 텍스트 상자가 클릭되었는지 여부를 알 수 있습니다. 제발, 몇 가지 코드로 질문을 완료하십시오. –
당신이 옳습니다. 내 편집 게시물에 도움이 되었으면합니다. –