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

유저폼 크기 조절 가능하게 만들기

조회 수 6057 추천 수 0 2009.05.07 13:58:21
출처 : 엑사모_팁

관련파일 : VBA_UserForm-UserResizable.xls


 Option Explicit

Private Const MResizer = "ResizeGrab"
Private WithEvents m_objResizer As MSForms.Label
Private m_sngLeftResizePos As Single
Private m_sngTopResizePos As Single
Private m_blnResizing As Single

Private Sub m_AddResizer()
'
' 유저폼의 오른쪽 아래 코너에 크기조절 버튼을 추가합니다
'
    Set m_objResizer = Me.Controls.Add("Forms.label.1", MResizer, True)
    With m_objResizer
        With .Font
            .Name = "Marlett"
            .Charset = 2
            .Size = 14
            .Bold = True
        End With
        .BackStyle = fmBackStyleTransparent
        .AutoSize = True
        .BorderStyle = fmBorderStyleNone
        .Caption = "o"
        .MousePointer = fmMousePointerSizeNWSE
        .ForeColor = RGB(0, 0, 255)
        .ZOrder
        .Top = Me.InsideHeight - .Height
        .Left = Me.InsideWidth - .Width
    End With
    
End Sub


Private Sub cmdClose_Click()
Unload Me
End Sub

Private Sub m_objResizer_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)

    If Button = 1 Then
        m_sngLeftResizePos = X
        m_sngTopResizePos = Y
        m_blnResizing = True
    End If
    
End Sub
Private Sub m_objResizer_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)

    If Button = 1 Then
        With m_objResizer
            .Move .Left + X - m_sngLeftResizePos, .Top + Y - m_sngTopResizePos
            Me.Width = Me.Width + X - m_sngLeftResizePos
            Me.Height = Me.Height + Y - m_sngTopResizePos
            .Left = Me.InsideWidth - .Width
            .Top = Me.InsideHeight - .Height
        End With
        Me.cmdClose.Top = UserForm1.Height - Me.cmdClose.Height - 40
        Me.cmdClose.Left = UserForm1.Width - Me.cmdClose.Width - 20
    End If
    
End Sub
Private Sub m_objResizer_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
    If Button = 1 Then
        m_blnResizing = False
    End If
End Sub
Private Sub UserForm_Initialize()

    m_AddResizer
    
End Sub
Private Sub UserForm_Terminate()

    Me.Controls.Remove MResizer
    
End Sub





문서 첨부 제한 : 0Byte/ 2.00MB
파일 제한 크기 : 2.00MB (허용 확장자 : *.*)
List of Articles
번호 제목 글쓴이 날짜 조회 수sort
공지 기타 엑셀 VBA 간단한 팁 모아놓기.. +_+ [레벨:30]아별 2007-01-24 35063

기타 [VBA] 엑셀 파일을 PDF로 저장(EXPORT) 시키기 [1]

  • [레벨:30]아별
  • 2015-01-21
  • 조회 수 7985

기타 엑셀 2013에서 웹 브라우저 컨트롤(ActiveX, web browser)을 시트에 삽입할 수 없는 문제.. imagefile

  • [레벨:30]아별
  • 2014-01-19
  • 조회 수 8074

[VBA팁] 화일이 존재하는지 확인하기

  • [레벨:30]아별
  • 2009-07-31
  • 조회 수 8192

기타 엑셀 기본 제공 대화 상자 인수 목록 file

  • [레벨:30]아별
  • 2009-11-04
  • 조회 수 8344

[10/19일 수정] 엑셀 매크로 수정하기... [2]

  • [레벨:30]a☆
  • 2003-09-29
  • 조회 수 8515

기타 [ VBA Tip ] 엑셀 VBA로 사진(JPG)의 EXIF 정보(GPS 포함) 불러 들이기.. imagefile [6]

  • [레벨:30]아별
  • 2012-02-27
  • 조회 수 8562

[엑셀VBA] 네이버 지식인 답변 _ 엑셀 쿼리를 이용해서 펀드 기준가 데이터를 읽어오기. file

  • [레벨:30]아별
  • 2008-04-30
  • 조회 수 9375

기타 VBA _ 레지스트리 다루기 ( registry control ) imagefile

  • [레벨:30]아별
  • 2011-03-19
  • 조회 수 9382

기타 오피스2010 64bit(64비트)를 위한 API Declare 방법 file [2]

  • [레벨:30]아별
  • 2011-10-05
  • 조회 수 9935

엑셀에서 줄바꿈에 대해서.. 줄바꿈하기 제거하기 등등..

  • [레벨:30]a☆
  • 2004-11-15
  • 조회 수 10233

엑셀의 유저폼 관련 [1]

  • [레벨:30]a☆
  • 2004-10-21
  • 조회 수 10277

엑셀2007에서 셀의 색상을 RGB로 뽑아내기 file

  • [레벨:30]아별
  • 2009-10-06
  • 조회 수 10447

기타 [링크] VBA로 파일을 다루는 방법에 대한 강좌들을 모아놓은 겁니다.

  • [레벨:30]아별
  • 2010-03-03
  • 조회 수 10572

[엑셀VBA] 자동필터를 매크로로 구현하기

  • [레벨:30]아별
  • 2008-08-28
  • 조회 수 11458

엑셀에서 달력 집어 넣기.. [1]

  • [레벨:30]a☆
  • 2004-10-21
  • 조회 수 11822

기타 [Excel VBA] 피벗테이블(PivotTable)을 VBA로 컨트롤해보자..

  • [레벨:30]아별
  • 2008-12-19
  • 조회 수 12620

엑셀에서 사용하는 언어 확인하기. file [1]

  • [레벨:30]아별
  • 2009-06-03
  • 조회 수 14033

기타 [펌] VBA 공부를 시작하시는분들에게 추천하는 강의자료 imagefile [4]

  • [레벨:30]아별
  • 2011-03-21
  • 조회 수 14285

[VBA] 전역변수 설정하기. Public 문, Private 문 imagefile

  • [레벨:30]아별
  • 2008-07-01
  • 조회 수 14314

메시지 박스 대용으로 Shape 사용하기 file

  • [레벨:30]아별
  • 2009-05-07
  • 조회 수 16265