±³À°°úÁ¤ ³ªÀÇÇнÀ ¿ÀÇǽºÆÁ °Ë»ö ¹«·á°­ÁÂ
Home ·Î±×ÀΠȸ¿ø°¡ÀÔ °í°´¼¾ÅÍ »çÀÌÆ®¸Ê
¿ÀÇǽºÆ©ÅÍ ±â¾÷ASP¼­ºñ½º > ¹«·á°­ÁÂ
¿¢¼¿ 2000 µû¶óÇϱâ
Ȩ·¯´× ¿¢¼¿ 2000°­ÁÂ
À繫 ÇÔ¼ö °­ÁÂ
¿¢¼¿ 2002 »õ·Î¿î ±â´É
Ȳ±â¼º´ÔÀÇ VBA°­ÁÂ
°û½ÂÁÖ´ÔÀÇ VBAÀ̾߱â
Home > ¹«·á°­Á > ¿¢¼¿
¿¢¼¿, °û½ÂÁÖ´ÔÀÇ ¿ÀÆ©°ø±¸ÇÔ Á¦ÀÛÀ¸·Î ¹è¿öº¸´Â VBA À̾߱â, Excel

3. ´ÜÃà ¸Þ´º ¸¸µé±â

ÀÚ·á´Ù¿î·Îµå : ¿ÀÆ©°ø±¸ÇÔ003.xls

³¯ÀÌ¸é ³¯¸¶´Ù ¿À´Â °ÍÀº ¾Æ´Ï°í ÀÏÁÖÀϸ¶´Ù ã¾Æ °¡´Â °û½ÂÁÖÀÔ´Ï´Ù. 
26ÀÏÀº CIH¹ÙÀÌ·¯½º°¡ È°µ¿ÇÏ´Â ³¯ÀÎ °Å ´Ù ¾Æ½ÃÁÒ? ¿©·¯ºÐµéÀÇ PC´Â ¸ðµÎ ¾È³çÇϽʴϱî? ¿¹Àü¿¡ Àúµµ Á¦ PC°¡ ¹ÌÄ̶õÁ©·Î ¹ÙÀÌ·¯½º¿¡ °¨¿°µÈ ÀûÀÌ Àִµ¥, »ç½Ç ÀÌ°Ô ¹ÙÀÌ·¯½ºÅ¿ÀÎÁö, ±â°è°íÀåÀÎÁö, ¾Æ´Ï¸é ¸¶±¸´Ï(?) °°Àº ÇÁ·Î±×·¥ Å¿ÀÎÁö ¸ô¶ó ´çȲÇß¾ú½À´Ï´Ù. ¾ó¸¶Àü¿¡´Â Loveletter¶óµç°¡ Naked Wife°°Àº VBS½ºÅ©¸³Æ®¹ÙÀÌ·¯½º°¡ Çѵ¿¾È ¿ä¶õÇߴµ¥ ÀÎÅͳÝÀ» ÅëÇØ ¹ÙÀÌ·¯½º¼Ò½º¸¦ ½±°Ô ±¸ÇÒ ¼ö ÀÖ¾î ´õ¿í ¹®Á¦ÁÒ. MS¿ÀÇǽº¸¦ »ç¿ëÇÏ´Â Àú³ª ¿©·¯ºÐµé¿¡°Ô´Â ¸ÅÅ©·Î¹ÙÀÌ·¯½º°¡ ¿äÁÖÀÇ ´ë»óÀÌÁÒ. »ç½Ç Àú´Â ±× ¹ÙÀÌ·¯½º°¡ ³¢Ä¡´Â ÇÇÇغ¸´Ù´Â "´ëü ÀÌ°É ¾î¶»°Ô ¸¸µç °Å¾ß..." ±Ã½Ã··°Å¸®¸é¼­ ÇÁ·Î±×·¥ÀÇ ¿ø¸®¸¦ ¸ÕÀú ±Ã±ÝÇØÇÕ´Ï´Ù. ÀÌ Á¤µµ¸é º´À̶ö ¼ö ¹Û¿¡ ¾ø±º¿ä. 

¿À´ÃÀº ´ÜÃà¸Þ´º¸¦ ¸¸µå´Â ¹æ¹ýÀ» ¼±º¸ÀÌ·Á ÇÕ´Ï´Ù. ´ÜÃà¸Þ´º´Â ¸¶¿ì½º¿À¸¥ÂÊ ¹öÆ°À» ´©¸£¸é ³ª¿À´Â ¸Þ´º¸¦ ¸»ÇÕ´Ï´Ù. ¿À´ÃÀº ÀÌ ´ÜÃà¸Þ´º¿¡ ¿ì¸®ÀÇ ¿ÀÆ©°ø±¸ÇÔ ¸Þ´º¸¦ »ðÀÔÇغ¸°Ú½À´Ï´Ù. ¿·ÀÇ ±×¸²À» º¸½Ã¸é ¿ì¸®°¡ ÀÚÁÖ º¸´ø ´ÜÃà¸Þ´ºÀÔ´Ï´Ù. ±×¸®°í ÀÚ¼¼È÷ º¸½Ã¸é ´ÜÃà¸Þ´ºÀÇ »ó´Ü¿¡ "About OT-Tools"¶ó´Â ¸Þ´º¾ÆÀÌÅÛÀ» º¸½Ç ¼ö ÀÖÀ» °Ì´Ï´Ù. ¿ì¼± ´ÜÃà¸Þ´º¿¡ °ü·ÃÇÑ ¼Ò½º¸¦ ¸ÕÀú º¸½ÃÁÒ.

¡¡

¡¡

¡¡

¸ðµâ:user_menu_short
Option Explicit

Const USER_SHORTCUT_TAG As String = "UserShortCut"

Sub CreateShortCutMenu()
     DeleteShortCutMenu 
     With Application.CommandBars("cell").Controls _ 
        .Add(Type:=msoControlButton, before:=1, temporary:=True) 
        .Caption = "About OT-Tools" 
        .OnAction = "ShowSplash" 
        .Tag = USER_SHORTCUT_TAG 
     End With
End Sub

Sub DeleteShortCutMenu() 

Dim cmdShortCut As CommandBarControl 

     For Each cmdShortCut In Application.CommandBars("cell").Controls 
        If Not cmdShortCut.BuiltIn Then cmdShortCut.Delete 
     Next 
     Set cmdShortCut = Nothing
End Sub

Sub ShowSplash() 
     frmSplash.Show
End Sub

ÀÇ¿Ü·Î °£´ÜÇÏÁÒ. »ç¿ëÀÚÁ¤ÀÇ ´ÜÃà¸Þ´º ¿ª½Ã ¾Õ¼­ ¸¸µç ¸Þ´º³ª µµ±¸¸ðÀ½Ã³·³ CommandBars Ä÷º¼Ç°³Ã¼¸¦ »ç¿ëÇÏ¿© ¸¸µì´Ï´Ù. 

Const USER_SHORTCUT_TAG As String = "UserShortCut"
»ç¿ëÀÚÁ¤ÀÇ ´ÜÃà¸Þ´º¿¡ ´ëÇÑ ²¿¸®Ç¥ÀÔ´Ï´Ù. ÀÌ¹Ì ¾Õ¼­ÀÇ Ä÷³¿¡¼­µµ ÃæºÐÈ÷ ¼³¸íÇÏ¿´À¸¹Ç·Î »ý·«Çϵµ·Ï ÇÏ°Ú½À´Ï´Ù.

Sub CreateShortCutMenu()
     DeleteShortCutMenu
»ç¿ëÀÚÁ¤ÀÇ ´ÜÃà¸Þ´º¸¦ ¸¸µé±â Àü¿¡ »èÁ¦¸¦ Çغ¾´Ï´Ù. Ȥ½Ã ´ÜÃà¸Þ´º°¡ ÀÌ¹Ì ÀÖ´Â »óÅ¿¡¼­ Ãß°¡ÇÏ´Â ºÒ»ó»ç¸¦ ¸·±â À§ÇÑ °ÍÀÔ´Ï´Ù.
     With Application.CommandBars("cell").Controls _
        .Add(Type:=msoControlButton, before:=1, temporary:=True)

CommandBars Ä÷º¼Ç°³Ã¼ÀÇ "CELL" °³Ã¼¿¡ ÄÁÆ®·ÑÀ» Ãß°¡ÇÕ´Ï´Ù, ŸÀÔÀ̳ª À§Ä¡µîÀº ¾Õ¼­ÀÇ µµ±¸¸ðÀ½À̳ª ¸Þ´º¿Í °æ¿ì¿Í ´Ù¸£Áö ¾Ê¾Æ ¼³¸íÀº »ý·«ÇÕ´Ï´Ù.
        .Caption = "About OT-Tools"
»ç¿ëÀÚÁ¤ÀÇ ´ÜÃà¸Þ´º ¾ÆÀÌÅÛÀÇ À̸§À» Á¤ÇÕ´Ï´Ù. ´ÜÃà¸Þ´º¿¡´Â ¼±ÅÃÇÑ ¼¿¿¡ ´ëÇÑ Á÷Á¢ÀûÀÎ ÀÛ¾÷À» À§ÇÑ ±â´ÉÀ» Ãß°¡ÇÏ´Â °ÍÀÌ ÁÁ½À´Ï´Ù. À§ÀÇ ´ÜÃà¸Þ´º±×¸²À» º¸¸é ¿¢¼¿ÀÌ ±âº»ÀûÀ¸·Î Á¦°øÇÏ´Â À߶󳻱â,º¹»ç,ºÙ¿©³Ö±â,¼¿¼­½ÄµîÀº ¸ðµÎ ¼¿°ú °ü·ÃÇÑ ±â´ÉÀÔ´Ï´Ù. ¿ÀÆ©°ø±¸ÇÔ¿¡´Â ÇöÀç ±¸ÇöÇسõÀº ±â´ÉÀÌ ¾ø´Â °ü°è·Î ½ºÇ÷¡½ÃÈ­¸éÀ» º¸¿©ÁÖ´Â °ÍÀ¸·Î ±â´É¸¸ ³Ö¾ú½À´Ï´Ù. ³ªÁß¿¡ ¼¿°ú °ü·ÃÇÑ ±â´ÉÀÌ ¸¸µé¾îÁö¸é ´ÜÃà¸Þ´º¿¡ Ãß°¡Çϵµ·Ï ÇÏ°Ú½À´Ï´Ù.

        .OnAction = "ShowSplash"
½ºÇ÷¡½ÃÈ­¸éÀ» º¸¿©ÁÖ´Â ÇÁ·Î½ÃÁ®ÀÔ´Ï´Ù.
        .Tag = USER_SHORTCUT_TAG
     End With
End Sub

ÀÌÁ¦ »ç¿ëÀÚÁ¤ÀÇ ´ÜÃà¸Þ´º¸¦ »èÁ¦ÇÏ´Â ºÎºÐÀÔ´Ï´Ù.
Sub DeleteShortCutMenu()
Dim cmdShortCut As CommandBarControl

´ÜÃà¸Þ´ºÀÇ ¾ÆÀÌÅÛÀº ¿ª½Ã °³Ã¼ÀÔ´Ï´Ù. ÀÌ·± °³Ã¼¸¦ µÇµ¹·Á ¹Þ±â À§ÇÑ °³Ã¼º¯¼ö¸¦ ¼±¾ðÇÏ¿´½À´Ï´Ù.
     For Each cmdShortCut In Application.CommandBars("cell").Controls
        If Not cmdShortCut.BuiltIn Then cmdShortCut.Delete
À̹øÀÇ »èÁ¦¿¡¼­´Â FindControl ¸Þ¼Òµå³ª Tag ¼Ó¼º ´ë½Å BuiltinÀ̶ó´Â ¼Ó¼ºÀ» »ç¿ëÇÏ¿© Áö¿ü½À´Ï´Ù. Áö³­ Ä÷³¿¡¼­µµ Àá±ñ ¾ð±ÞÇÏ¿´Áö¸¸ ¿¢¼¿ÀÇ ³»À尳üÀΰ¡ ¾Æ´Ï¸é »ç¿ëÀÚÁ¤ÀÇ °³Ã¼Àΰ¡¸¦ ¾Ë·ÁÁÝ´Ï´Ù, ±×·¯³ª FindControl ¸Þ¼Òµå³ª Tag ¼Ó¼ºÀ» ÀÌ¿ëÇÏ¿© »èÁ¦ÇÏ´Â °Í°ú Builtin¼Ó¼ºÀ» ÀÌ¿ëÇÏ¿© »èÁ¦ÇÏ´Â °Í¿¡´Â ¾à°£ÀÇ Â÷ÀÌ°¡ ÀÖ½À´Ï´Ù. ÀüÀÚÀÇ °æ¿ì¿¡´Â »ç¿ëÀÚ°¡ ÁöÁ¤ÇÑ Á¶°Ç¿¡ µû¶ó Áö¿ì´Â °æ¿ìÀÌ´Ù. µû¶ó¼­ ³»°¡ ¸¸µç ±â´É¸¸ »èÁ¦ÇÒ ¼ö ÀÖÁö¸¸ ÈÄÀÚÀÇ °æ¿ì¿¡´Â ¿¢¼¿¿¡ ³»ÀåµÈ °ÍÀΰ¡ ¾Æ´Ñ°¡¸¸ ±¸º°ÇϹǷΠÀ̸¦ ÆÇ´ÜÇÏ¿© Áö¿ì°Ô µÇ¸é ³»°¡ ¸¸µç °³Ã¼»Ó¸¸ ¾Æ´Ï¶ó ´Ù¸¥ »ç¶÷ÀÌ ¸¸µç ¿¢¼¿ÇÁ·Î±×·¥ÀÇ °³Ã¼±îÁö Áö¿ì°Ô µÈ´Ù. 

     Next
     Set cmdShortCut = Nothing
End Sub

Sub ShowSplash()
     frmSplash.Show
End Sub

½ºÇ÷¡½Ã È­¸éÀ» º¸¿©ÁÖ´Â ÇÁ·Î½ÃÁ®ÀÔ´Ï´Ù

Áö³­ Ä÷³ÀÇ Ã·ºÎÆÄÀÏ¿¡ ¸»µµ ¾øÀÌ ½½±×¸Ó´Ï »ðÀÎÇÑ °ÍÀÌ Àִµ¥ ½ºÇ÷¡½ÃÆûÀÔ´Ï´Ù. ½ºÇ÷¡½ÃÆûÀº º°´Ù¸¥ ±â´ÉÀº ¾ø½À´Ï´Ù. ´Ù¸¸ ÇÁ·Î±×·¥ÀÇ Á¦¸ñ°ú °æ¿ì¿¡ µû¶ó¼­´Â ¿¢¼¿Ã³·³ ½Ã½ºÅÛÁ¤º¸¸¦ º¸¿©ÁÙ ¼ö ÀÖÁö¸¸ ¿©±â¼­´Â °£´ÜÇÏ°Ô ±¸¼ºÇÏ¿´½À´Ï´Ù.

¡¡

¡¡

À§ÀÇ ¸ðµâ°ú °ü·ÃÇÏ¿© À̸¦ ÂüÁ¶ÇÏ´Â ºÎºÐµµ ¹Ù²î¾î¾ß ÇÒ °ÍÀÔ´Ï´Ù.

ThisWorkbook°³Ã¼ÀÇ ÄÚµù
Private Sub Workbook_BeforeClose(Cancel As Boolean) 
     DeleteUserToolbar 
     DeleteShortCutMenu 
     DeleteUserMenu
End Sub

Private Sub Workbook_Open() 
     CreateUserMenu 
     CreateShortCutMenu 
     CreateUserToolbar
End Sub

Sub Workbook_BeforeClose()¿¡´Â »èÁ¦ÇÏ´Â ÇÁ·Î½ÃÁ®°¡, Sub Workbook_Open()¿¡´Â »ç¿ëÀÚÁ¤ÀÇ ´ÜÃà¸Þ´º¸¦ ¸¸µå´Â ÇÁ·Î½ÃÁ®°¡ Ãß°¡µÇ¾ú½À´Ï´Ù.

À§ÀÇ ÇÁ·ÎÁ§Æ®¿Í´Â º°°³ÀÎÁö¸¸ »ç¿ëÀÚÁ¤ÀÇ ´ÜÃà¸Þ´º¿Í °ü·ÃÇÏ¿© »ç¿ëÀÚÁ¤ÀÇ ´ÜÃà¸Þ´º°¡ ƯÁ¤ ¿öÅ©½ÃÆ®¿¡¼­¸¸ ³ªÅ¸°Å³ª ¾Æ´Ï¸é ƯÁ¤ÇÑ ¹üÀ§¿¡¼­¸¸ ³ªÅ¸³ªµµ·Ï ÇÏ·Á¸é ´ÙÀ½°ú °°ÀÌ ÄÚµùÇÕ´Ï´Ù.

»ç¿ëÀÚÁ¤ÀÇ ´ÜÃà¸Þ´º°¡ ƯÁ¤ ¿öÅ©½ÃÆ®¿¡¼­¸¸ »ç¿ëµÇ´Â ¿¹Á¦
Private Sub Workbook_SheetBeforeRightClick(ByVal Sh As Object, ByVal Target As Excel.Range, Cancel As Boolean) 

     Select Case Target.Worksheet 
     Case "sheet1", "Sheet2" 
        DeleteShortCutMenu 
        Exit Sub 
     Case Else 
        CreateShortCutMenu 
     End Select


End Sub

¡¡

»ç¿ëÀÚÁ¤ÀÇ ´ÜÃà¸Þ´º°¡ ƯÁ¤ ¹üÀ§¿¡¼­¸¸ »ç¿ëµÇ´Â ¿¹Á¦
Private Sub Workbook_SheetBeforeRightClick(ByVal Sh As Object, ByVal Target As Excel.Range, Cancel As Boolean) 
     DeleteShortCutMenu 
     If Not Application.Intersect(Target, Range("A:C")) Is Nothing Then 
        CreateShortCutMenu 
     End If

End Sub

ÀÌ·¯ÇÑ ±â´ÉÀº Sub Workbook_SheetBeforeRightClick() ÇÁ·Î½ÃÁ®¸¦ ÀÌ¿ëÇÏ´Â °ÍÀÔ´Ï´Ù. ÀÌÇÁ·Î½ÃÁ®´Â ¿öÅ©½ÃÆ®¿¡¼­ ¸¶¿ì½º ¿À¸¥ÂʹöÆ°À» Ŭ¸¯ÇÏ¸é ¹ß»ýÇÏ´Â WorkbookÀÇ À̺¥Æ®ÀÔ´Ï´Ù.
ÀÚ¼¼ÇÑ ¼³¸íÀº ¿©·¯ºÐ¿¡°Ô ¸Ã°Ü µÎ°Ú½À´Ï´Ù. Á¦°¡ ÀÏÀÏÀÌ ¼³¸íÇÏ´Â °Íº¸´Ù´Â ¿©·¯ºÐÀÌ °øºÎÇغ¸½Ã´Â °ÍÀÌ ´õ¿í ÇнÀÈ¿°ú°¡ ÁÁÀ» °Í °°±º¿ä. Àú¿¡°Ô Çؼ³À» º¸³»ÁÖ½Ã¸é º¸³»Áֽô ºÐÀÇ ±ÛÀ» ¼Ò°³Çص帮°Ú½À´Ï´Ù. 

Ä÷³À» ÁøÇàÇÏ´Ùº¸´Ï ¹®µæ ÇÁ·Î±×·¥À̸§ÀÌ ¿ÀÆ©°ø±¸ÇÔÀε¥ ÇöÀç ±â´É(¸¸µé¾î ÁöÁö ¾Ê¾ÒÁö¸¸)Àº ¿¢¼¿¸¸À» À§ÇÑ °ÍÀÓÀ» ±ú´Þ¾Ò½À´Ï´Ù. Àû¾îµµ ¿ÀÆ©°ø±¸ÇÔÀ̶ó¸é ¿öµå³ª ÆÄ¿öÆ÷ÀÎÆ®¸¦ À§ÇÑ °Íµµ ÀÖ¾î¾ß ÇÏÁö ¾ÊÀ» ±î ½Í±º¿ä. ÇöÀç´Â ¿¢¼¿À» À§ÇÑ °ÍÀ» ÀÛ¼ºÇÏ°í ÀÖÁö¸¸ ³ªÁß¿¡´Â ¿öµå³ª ÆÄ¿öÆ÷ÀÎÆ® µîµî ´Ù¸¥ ¿ÀÇǽºÁ¦Ç°À» À§ÇÑ ¿ÀÆ©°ø±¸ÇÔÀ» ¸¸µé¾î¾ß ÇÒ °Í °°½À´Ï´Ù.

´ÙÀ½ ½Ã°£¿¡´Â ¿öÅ©½ÃÆ® ³» Áߺ¹µÈ µ¥ÀÌÅ͸¦ ó¸®ÇÏ´Â ±â´ÉÀ» ¸ÕÀú ¼Ò°³ ÇÒ±î ÇÕ´Ï´Ù. ¿¢¼¿ÀÇ ÇÊÅ͵îÀ» »ç¿ëÇÏÁö ¾Ê°í ¸¸µé¾î º¸¾Ò½À´Ï´Ù. ±×·³ ´ÙÀ½ ½Ã°£¿¡ ºËÁÒ!

¸ñÂ÷ | ÀÌÀü | ´ÙÀ½

¡¡

¿ÀÇǽºÆ©ÅÍ ±â¾÷ASP¼­ºñ½º 135-880 ¼­¿ï½Ã °­³²±¸ »ï¼ºµ¿ 157-3 ¿¤ÁöÆ®À©ÅÚ 2Â÷ 1603È£ ¢Ï070-7098-2554
Copyright ¨Ï 1999-2008 Officetutor.com All rights reserved
¡¡