1. 아별툴
  2. 아별툴 패밀리
  3. 엑셀 질문하기
  4. 엑셀 강좌
  5. 엑셀 팁
  6. 엑셀 자료실
  7. 엑셀 연구과제
  8. 엑셀 북마크
  9. 관련 프로그램 소개

엑셀의 유저폼 관련

조회 수 10102 추천 수 11 2004.10.21 11:40:23
폼 시작시 자동 실행될 명령 등록하기.

Private Sub UserForm_Activate()    '폼이 로드되면 오늘날짜에 표시됩니다.
Calendar1 = Date
End Sub

---------------------------------------------------------------------
폼을 띄우고서도 다른 창을 선택하거나 다른 시트를 선택할 수 있게 하기..

UserForm 속성에서 ShowModal 속성을 False로 해 놓으면
다른 창을 선택하거나 다른 아이템을 선택할 수 있게 된다.
기본값인 ShowModal을 True로 해 놓으면 다른 응용프로그램으로 전환은 할 수 있어도,
같은 엑셀의 다른 창이나 시트 등 엑셀 프로그램 내의 다른 아이템을 선택할 수 없게 된다.

---------------------------------------------------------------------

유저폼 도구 상자에 달력이 안 보일때..

도구상자의 빈 여백에 오른 마우스 클릭 -> 추가 컨트롤 선택

Calendar Control 10.0 을 체크하고 확인 누르면 사용할 수 있다.

---------------------------------------------------------------------

닫기 버튼.. 또는 취소 버튼..

Private Sub CommandButton3_Click()
    Unload Me
End Sub

---------------------------------------------------------------------

유저폼 보이게 하기

Sub auto_open()     '엑셀 문서 로딩시 자동으로 시작됨
With 유저폼이름
    .Caption = "Resin Tower 입력창"
    .Show
End With
End Sub

Sub wa_open()
With 유저폼이름
    .Caption = "WA 입력창"
    .Show
End With
End Sub

---------------------------------------------------------------------
콤보박스(ComboBox)에서 셀 연결 사용하기
--> 시트에 있는 콤보박스만 해당함. 유저폼은.. comboBox1.index라고 하면 될려나?

연결된 셀에 인덱스 넘버를 입력하면 해당 콤보박스에 해당하는 아이템이 자동 선택되어 짐.
---------------------------------------------------------------------

'저장 범위를 설정하고 저장 범위를 새로운 이름으로 정의해서 콤보박스의 RowSource로 사용한다.

Dim 저장범위 As Range

        Set 저장범위 = Range([단가표!K2], [단가표!K65536].End(xlUp).Offset(0, 0))
        저장범위.Name = "자료"
        
        With Me.mcCombo2
            .RowSource = "자료"
            .ListIndex = 0
        End With

---------------------------------------------------------------------

입력상자에 포커스 집어넣기

    If TextBox1.Text = "" Then
       MsgBox "반드시 상호를 입력하세요"
       TextBox1.SetFocus
  End If
---------------------------------------------------------------------

유저폼에서 서식 적용하기

    Sheet1.매출수량레이블.Caption = Format(Round(매출표.Range("A4").Value), "#,###")

------------------------------

Format 함수를 이용해보세요.

ex)
textbox1.text = format(myvalue,"#,###")

값을 계산할 경우에도 마찬가지로 format 함수를 이용하여 계산하셔야 합니다.
왜냐하면 textbox 에 있는 숫자는 무늬만 숫자이고 실제로는 문자이기 때문입니다.

myvalue - format(textbox1.text,"0")

---------------------------------------------------------------------

'콤보 박스에 항목(아이템) 추가하기..

Private Sub UserForm_Initialize()

With ComboBox1
    .AddItem "SP-IV(415V)"
    .AddItem "SP-IV(220V)"
    .AddItem "SP-IV(480V)"
    .AddItem "EAGLE 상"
    .AddItem "EAGLE 하(415V)"
    .AddItem "EAGLE 하(220V)"
    .AddItem "EAGLE 하(480V)"
    .AddItem "STEC-340(W)"
    .AddItem "STEC-340(WS)"
    .AddItem "S1用-415V"
    .AddItem "S1用-220V"
    .AddItem "S1用-210V"
    .AddItem "INTERLOCK"
    .AddItem "SMUS FH-TYPE"
End With

End Sub

---------------------------------------------------------------------

---------------------------------------------------------------------


댓글 '1'

[레벨:4]현대자동차

2012.03.19 16:03:12
*.29.96.161

으윽 난해합니다~~

문서 첨부 제한 : 0Byte/ 2.00MB
파일 제한 크기 : 2.00MB (허용 확장자 : *.*)
List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 기타 엑셀 VBA 간단한 팁 모아놓기.. +_+ [레벨:30]아별 2007-01-24 34021
» 엑셀의 유저폼 관련 [1] [레벨:30]a☆ 2004-10-21 10102
4 엑셀에서 달력 집어 넣기.. [1] [레벨:30]a☆ 2004-10-21 11588
3 셀의 상대 위치 이동< offset(행,열) >과 절대 위치 이동.. [레벨:30]a☆ 2004-10-20 5421
2 엑셀에서 서식 지정하기.. 숫자를 한글로 표시하기 등.. [1] [레벨:30]a☆ 2004-09-24 6639
1 [10/19일 수정] 엑셀 매크로 수정하기... [2] [레벨:30]a☆ 2003-09-29 8303