|
9. VBA·Î
¼ºÀû °ü¸® ÇÁ·Î±×·¥ ¸¸µé±â 2

°è¼ÓÇØ¼ ¼ºÀû°ü¸®±â¸¦ ¸¸µé°Ú½À´Ï´Ù. ¾Õ¿¡¼
¹è¿ü´ø VBA ÇÁ·Î±×·¡¹ÖÀÇ ¼ø¼¸¦ Àß »ý°¢ÇÏ¸é¼ µû¶ó¿À½Ã±â ¹Ù¶ø´Ï´Ù.
2-2> 2 ´Ü°è - ¼Ó¼º ÁöÁ¤Çϱ⠨ç ÀÌÁ¦ VBA ÇÁ·Î±×·¡¹ÖÀÇ Ã¹ ¹øÂ° ´Ü°èÀÎ "ÄÁÆ®·Ñ
ÀÛ¼º"ÀÌ ³¡³µ½À´Ï´Ù. ´ÙÀ½À¸·Î ÄÁÆ®·Ñ¿¡ ¼Ó¼ºÀ» ÁöÁ¤ÇØÁÖ¾î¾ß ÇÕ´Ï´Ù.
Çаú ÀÔ·ÂÀº "¸ñ·Ï»óÀÚ"¸¦ ÀÌ¿ëÇÒ °ÍÀ̹ǷΠ¿¬°áµÇ´Â ¸ñ·ÏÀÌ
¹Ì¸® ¸¸µé¾îÁ® ÀÖ¾î¾ß ÇÕ´Ï´Ù. Sheet1ÀÇ À̸§À» "¸ñ·Ï"À¸·Î
º¯°æÇÑ ÈÄ ¼¿¿¡ ´ÙÀ½°ú °°Àº ¸ñ·ÏÀ» ÀÔ·ÂÇÕ´Ï´Ù.  ¨è ´Ù½Ã "´ëÈ»óÀÚ"
½ÃÆ®·Î µ¹¾Æ¿É´Ï´Ù. ÇаúÀԷ¶õÀÇ ¸ñ·Ï »óÀÚ¸¦ ¼±ÅÃÇÏ°í ¸¶¿ì½º ¿À¸¥ÂÊÀ»
Ŭ¸¯ÇÕ´Ï´Ù. ´ÜÃà¸Þ´º°¡ ³ªÅ¸³ª¸é "ÄÁÆ®·Ñ ¼½Ä"À» ¼±ÅÃÇÕ´Ï´Ù.

¨é ÄÁÆ®·Ñ ¼½Ä ´ëÈ»óÀÚ°¡ ³ªÅ¸³³´Ï´Ù. ÀԷ¹üÀ§ Ç׸ñÀÇ ÂüÁ¶
¹öưÀ» Ŭ¸¯ÇÕ´Ï´Ù. "¸ñ·Ï" ½ÃÆ®¸¦ ¼±ÅÃÇÑ ÈÄ ÀÔ·ÂµÈ ¸ñ·ÏÀÇ
¹üÀ§¸¦ ¼±ÅÃÇÕ´Ï´Ù.  ¨ê ¸ñ·Ï ÀÔ·ÂÀÌ ³¡³µÀ¸¸é ´Ù½Ã ÂüÁ¶ ¹öư( )À»
Ŭ¸¯ÇÕ´Ï´Ù. ÄÁÆ®·Ñ ¼½Ä ´ëÈ»óÀÚ°¡ ³ªÅ¸³ª¸é, ÀÔ·ÂµÈ ¸ñ·ÏÀ» È®ÀÎÇÑ
ÈÄ [È®ÀÎ]À» Ŭ¸¯ÇÕ´Ï´Ù.  ¨ë ´ëÈ»óÀÚÀÇ ¸ñ·Ï ÄÁÆ®·Ñ¿¡ ÀÔ·Â ¹üÀ§ÀÇ Ç׸ñµéÀÌ
³ªÅ¸³³´Ï´Ù. 
2-3> 3 ´Ü°è(¸¶Áö¸· ´Ü°è) - ÄÚµå
ÀÛ¼ºÇϱ⠨ç ÀÌÁ¦ VBA ÇÁ·Î±×·¡¹ÖÀÇ
2´Ü°è±îÁö ³¡³µ½À´Ï´Ù. ³²Àº °ÍÀº °¢ ÄÁÆ®·Ñ¿¡ ¿¬°èµÈ Äڵ带 ÀÛ¼ºÇÏ´Â
°úÁ¤ÀÔ´Ï´Ù.(ÄÚµù) Äڵ带 ÀÛ¼ºÇϱâ À§ÇØ + À» ´·¯¼ Visual Basic
Editor¸¦ ½ÇÇàÇÕ´Ï´Ù.  ¨è ÄÚµùÀ» ÇÏ·Á¸é ¸ðµâ(Module)À» »ðÀÔÇØµÎ¾î¾ß
ÇÕ´Ï´Ù. ¸ðµâÀ̶õ ÄÚµåÀÇ ³»¿ëÀ» Æ÷ÇÔÇϰí ÀÖ´Â ½ÃÆ®¶ó°í »ý°¢ÇÏ¸é µË´Ï´Ù.
[»ðÀÔ-¸ðµâ]À» Ŭ¸¯ÇÕ´Ï´Ù.  ¨é ´ÙÀ½ ±×¸²°ú °°ÀÌ ¸ðµâÀÌ »ðÀԵǾú½À´Ï´Ù.
»ðÀÔµÈ ¸ðµâ¿¡ Äڵ带 ÀÛ¼ºÇÏ¸é µË´Ï´Ù.  ¨ê Áö±ÝºÎÅÍ °¢°¢ÀÇ
À̺¥Æ®¿¡ ÇØ´çÇÏ´Â Äڵ带 ¸¸µé°Ú½À´Ï´Ù. ÀÌ·¯ÇÑ Äڵ带 ÇÁ·Î½ÃÁ®(Procedeur)¶ó°í
ÇÕ´Ï´Ù. Á¦ÀÏ ¸ÕÀú ¸¸µé °ÍÀº Çаú¸¦ ÀÔ·ÂÇÏ´Â °ÍÀÔ´Ï´Ù. ´ëÈ»óÀÚ¿¡¼
ÀԷ¹ÞÀº Çаú¸íÀ» Á¤ÇØÁø ½ÃÆ®¿¡ µÇµ¹¸®´Â ÀÛ¾÷ÀÔ´Ï´Ù. ¸ðµâ¿¡ ´ÙÀ½°ú
°°ÀÌ Äڵ带 ÀÔ·ÂÇÕ´Ï´Ù.  Áö±Ý ÀÔ·ÂÇÑ ÇÁ·Î½ÃÀúÀÇ ³»¿ëÀ» Á¶±Ý ´õ ¾Ë¾Æº¸°Ú½À´Ï´Ù.
Sub ÇаúÀÔ·Â() <-
ÇаúÀÔ·ÂÀ̶ó´Â ÇÁ·Î½ÃÀú¸¦ ½ÃÀÛÇÑ´Ù. Sub¿Í End Sub »çÀÌÀÇ ³»¿ëÀÌ
ÇϳªÀÇ ÇÁ·Î½ÃÀú·Î ÀνĵȴÙ. Sheets("¼ºÀû°á°ú").Select
<- "¼ºÀû°á°ú"¶ó´Â
½ÃÆ®¸¦ ¼±ÅÃÇÑ´Ù. Range("a3").Select
<- a3 ¼¿À» ¼±ÅÃÇÑ´Ù. Çаú¸í = DialogSheets("´ëÈ»óÀÚ").EditBoxes("ÇаúÀԷ¶õ").Text
<- ´ëÈ»óÀÚÀÇ ÇаúÀԷ¶õÀ̶ó´Â
ÅØ½ºÆ® ¹Ú½º(Editbox)¿¡ ÀԷ¹ÞÀº °ªÀ» "Çаú¸í"À̶ó´Â
º¯¼ö¿¡ ´ã´Â´Ù. ActiveCell.FormulaR1C1
= Çаú¸í <- ÇöÀç ¼±ÅõÈ
¼¿¿¡ "Çаú¸í" º¯¼öÀÇ ³»¿ëÀ» Ãâ·ÂÇÑ´Ù.
End Sub <- ÇаúÀÔ·ÂÀ̶ó´Â
ÇÁ·Î½ÃÀú¸¦ ³¡³½´Ù. Visual BasicÀº
´Ù¸¥ ÇÁ·Î±×·¡¹Ö ¾ð¾î¿Í´Â ´Þ¸® »ç¶÷ÀÌ ¾Ë¾Æº¸±â ½¬¿î ±¸¹®À¸·Î µÇ¾î
ÀÖ½À´Ï´Ù. ºñÁê¾ó º£ÀÌÁ÷À» óÀ½ Á¢ÇÏ´Â ºÐµéµµ Å©°Ô ¾î·Á¿òÀÌ ¾øÀ»
°ÍÀÔ´Ï´Ù. ¨ë ¸ðµç °á°ú¸¦ "¼ºÀû°á°ú"¶ó´Â ½ÃÆ®¿¡
µÇµ¹¸± °ÍÀ̹ǷΠSheet 2ÀÇ À̸§À» ¼ºÀû°á°ú·Î º¯°æÇÕ´Ï´Ù. Âü°í·Î ½ÃÆ®ÅÇÀ»
´õºíŬ¸¯ÇÏ¸é ½ÃÆ®À̸§À» ½±°Ô º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù. Áö±Ý±îÁö ÀÛ¾÷À¸·Î
¸ðµÎ 3°³ÀÇ ½ÃÆ®°¡ ÇÊ¿äÇÕ´Ï´Ù.  ¨ì °è¼ÓÇØ¼ À̸§°ú Çйø ÀÔ·Â,
±×¸®°í °¢ Á¡¼ö¸¦ ÀÔ·ÂÇÏ´Â ÇÁ·Î½ÃÀú¸¦ ÀÛ¼ºÇÕ´Ï´Ù. ÀÏÀÏÀÌ Äڵ带 ÀÔ·ÂÇØµµ
µÇÁö¸¸, °ÅÀÇ ºñ½ÁÇϱ⠶§¹®¿¡ º¹»çÇØ¼ ºÙ¿©³Ö±â¸¦ ÇÏ´Â °ÍÀÌ È¿À²ÀûÀÔ´Ï´Ù.
±× ÈÄ ÇÊ¿äÇÑ ºÎºÐ¸¸ º¯°æÇØÁÖ´Â °ÍÀÔ´Ï´Ù.  "¼ºÀû°á°ú"
½ÃÆ®¿¡ µÇµ¹·ÁÁö´Â ¼¿¸¸ Â÷À̰¡ ÀÖÀ» »Ó ¸ðµÎ °°Àº ±¸¹®À̹ǷΠ½±°Ô
ÀÌÇØÇÒ ¼ö ÀÖ½À´Ï´Ù. ¨í Áö±Ý±îÁö ¸¸µç ÇÁ·Î½ÃÀú°¡ Á¦´ë·Î
ÀÛµ¿ÇÏ´ÂÁö¸¦ È®ÀÎÇØº¸°Ú½À´Ï´Ù. "´ëÈ»óÀÚ" ½ÃÆ®·Î µ¹¾Æ¿Â
ÈÄ ¾ç½Ä µµ±¸¸ðÀ½¿¡¼ ´ëÈ»óÀÚ ½ÇÇà ¹öưÀ» Ŭ¸¯ÇÕ´Ï´Ù. ´ÙÀ½°ú °°ÀÌ
´ëÈ»óÀÚ°¡ ½ÇÇàµÉ °ÍÀÔ´Ï´Ù.  ¨î Çаú¿Í Çйø, ±×¸®°í °¢ °ú¸ñÀ»
Á¡¼ö¸¦ ÀÔ·ÂÇÑ ÈÄ [È®ÀÎ]À» Ŭ¸¯ÇÕ´Ï´Ù. [È®ÀÎ]À» Ŭ¸¯Çصµ ¾Æ¹«·± °á°ú°¡ »ý±âÁö ¾Ê´Â °ÍÀº ÇöÀç
[È®ÀÎ] ¹öư°ú ¿¬°áµÈ ÇÁ·Î½ÃÀú°¡ ¾ø±â ¶§¹®ÀÔ´Ï´Ù.
¨ï "¼ºÀû°á°ú" ½ÃÆ®¸¦ ¼±ÅÃÇÑ ÈÄ [µµ±¸-¸ÅÅ©·Î-¸ÅÅ©·Î]¸¦
¼±ÅÃÇÏ¸é ¸ÅÅ©·Î ´ëÈ»óÀÚ¿¡ Áö±Ý±îÁö ÀÛ¼ºÇÑ ÇÁ·Î½ÃÀú°¡ ³ªÅ¸³³´Ï´Ù.
¨ð "ÇйøÀÔ·Â" ¸ÅÅ©·Î¸¦ ¼±ÅÃÇϰí [½ÇÇà] ¹öưÀ» Ŭ¸¯ÇÕ´Ï´Ù.
±×·¯¸é ÇйøÀÔ·Â ÇÁ·Î½ÃÀú¿¡ ÀÇÇØ¼ ´ëÈ»óÀÚ¿¡ ÀÔ·ÂµÈ Çйø¿¡ "¼ºÀû°á°ú"
½ÃÆ®ÀÇ B3¼¿¿¡ µÇµ¹·ÁÁö°Ô µË´Ï´Ù.
¨ñ Áö±Ý±îÁö ÀÛ¼ºÇÑ ÇÁ·Î½ÃÀú´Â ÀÌ»ó¾øÀÌ
Àß ÀÛµ¿ÇÏ´Â °ÍÀ» ¾Ë¾Ò½À´Ï´Ù. °è¼ÓÇØ¼ ÃÑÁ¡, Æò±Õ, ¼öÁØÀ» ³ªÅ¸³»´Â
ÇÁ·Î½ÃÀú¸¦ ÀÛ¼ºÇϰڽÀ´Ï´Ù. Visual Basic Editor·Î µ¹¾Æ¿Í¼ ´ÙÀ½ Äڵ带
ÀÔ·ÂÇÕ´Ï´Ù. ÃÑÁ¡_Æò±Õ_¼öÁØ ÇÁ·Î½ÃÀúÀÇ ³»¿ëÀº ´ÙÀ½°ú °°½À´Ï´Ù.
Sub ÃÑÁ¡_Æò±Õ_¼öÁØ() ÇàÁ¤»çÁ¡¼ö = Int(DialogSheets("´ëÈ»óÀÚ").EditBoxes("ÇàÁ¤»çÁ¡¼ö").Text)
<-´ëÈ»óÀÚÀÇ ÇàÁ¤»çÁ¡¼ö ÅØ½ºÆ®¶õ¿¡
ÀÔ·ÂµÈ Á¡¼ö¸¦ "ÇàÁ¤»çÁ¡¼ö"¶ó´Â º¯¼ö¿¡ ´ã´Â´Ù Á¤¼ö·Î ÀνĽÃ۱â
À§Çؼ Int ÇÔ¼ö¸¦ »ç¿ëÇß´Ù. Á¤Ä¡ÇÐÁ¡¼ö
= Int(DialogSheets("´ëÈ»óÀÚ").EditBoxes("Á¤Ä¡ÇÐÁ¡¼ö").Text)
Çå¹ýÇÐÁ¡¼ö = Int(DialogSheets("´ëÈ»óÀÚ").EditBoxes("Çå¹ýÇÐÁ¡¼ö").Text)
ÃÑÁ¡ = ÇàÁ¤»çÁ¡¼ö + Á¤Ä¡ÇÐÁ¡¼ö + Çå¹ýÇÐÁ¡¼ö <-ÇàÁ¤»çÁ¡¼ö¿Í Á¤Ä¡ÇÐÁ¡¼ö, Çå¹ýÇÐÁ¡¼ö¸¦ ÇÕÇÑ °ªÀ»
"ÃÑÁ¡"À̶ó´Â º¯¼ö¿¡ ´ã´Â´Ù.
DialogSheets("´ëÈ»óÀÚ").EditBoxes("ÃÑÁ¡").Text
= ÃÑÁ¡ <-"ÃÑÁ¡"À»
´ëÈ»óÀÚÀÇ "ÃÑÁ¡"ÀԷ¶õ¿¡ ³ªÅ¸³½´Ù. Sheets("¼ºÀû°á°ú").Select
Range("g3").Select ActiveCell.FormulaR1C1 = ÃÑÁ¡
<-¼ºÀû°á°ú ½ÃÆ®ÀÇ g3¼¿À» ¼±ÅÃÇÑ
ÈÄ "ÃÑÁ¡"À» Ãâ·ÂÇÑ´Ù. Æò±Õ =
ÃÑÁ¡ / 3 <-ÃÑÁ¡¿¡¼ 3À»
³ª´« °ªÀ» "Æò±Õ"À̶ó´Â º¯¼ö¿¡ ´ã´Â´Ù. DialogSheets("´ëÈ»óÀÚ").EditBoxes("Æò±Õ").Text
= ÃÑÁ¡ Range("h3").Select ActiveCell.FormulaR1C1
= Æò±Õ If Æò±Õ >= 85 Then DialogSheets("´ëÈ»óÀÚ").EditBoxes("¼öÁØ").Text
= "A" <-¸¸¾à
Æò±ÕÀÌ 85Á¡ ÀÌ»óÀÌ¸é ´ëÈ»óÀÚÀÇ ¼öÁØ ÅØ½ºÆ® ÀԷ¶õ¿¡ A¸¦ Ç¥½ÃÇÑ´Ù.
ElseIf Æò±Õ >= 60 Then DialogSheets("´ëÈ»óÀÚ").EditBoxes("¼öÁØ").Text
= "B" <-Æò±ÕÀÌ
65Á¡¿¡¼ 85Á¡ »çÀÌÀÌ¸é ´ëÈ»óÀÚÀÇ ¼öÁØ ÅØ½ºÆ® ÀԷ¶õ¿¡ B¸¦ Ç¥½ÃÇÑ´Ù.
Else DialogSheets("´ëÈ»óÀÚ").EditBoxes("¼öÁØ").Text
= "C" End If Range("i3").Select
°á°ú = DialogSheets("´ëÈ»óÀÚ").EditBoxes("¼öÁØ").Text
<-´ëÈ»óÀÚÀÇ ¼öÁØ ÀԷ¶õÀÇ
°ªÀ» "°á°ú"¶ó´Â º¯¼ö¿¡ ´ã´Â´Ù. ActiveCell.FormulaR1C1
= °á°ú <-i3¼¿À» ¼±ÅÃÇÑ
ÈÄ "°á°ú"¸¦ Ãâ·ÂÇÑ´Ù. End Sub
¨ò ¸ðµç ÇÏÀ§ ÇÁ·Î½ÃÀú°¡ ¸¸µé¾îÁ³½À´Ï´Ù. ÀÌÁ¦ ÀÌ ÇÁ·Î½ÃÀúµéÀ»
Çѹø¿¡ ½ÇÇàÇÒ ¼ö ÀÖ´Â ÇÁ·Î½ÃÀú¸¦ ¸¸µé¾î¾ß ÇÕ´Ï´Ù. ÀÌ ÇÁ·Î½ÃÀúÀÇ
À̸§Àº "Àüü½ÇÇà"À¸·Î ÇÕ´Ï´Ù.  Àüü½ÇÇà ÇÁ·Î½ÃÀú°¡
¸¸µé¾îÁ³À¸¹Ç·Î, ¾ÕÀ¸·Î´Â "Àüü½ÇÇà" ÇÁ·Î½ÃÀú¸¸ ½ÇÇàÇϸé
¸ðµç ÇÏÀ§ ÇÁ·Î½ÃÀú°¡ ÀÚµ¿À¸·Î ½ÇÇàµÇ°Ô µË´Ï´Ù. ¨ó Àüü½ÇÇà
ÇÁ·Î½ÃÀú°¡ ¿Ã¹Ù·Î ÀÛµ¿ÇÏ´ÂÁö Å×½ºÆ®Çغ¸°Ú½À´Ï´Ù. "¼ºÀû°á°ú"
½ÃÆ®¸¦ ¼±ÅÃÇÕ´Ï´Ù. [µµ±¸-¸ÅÅ©·Î-¸ÅÅ©·Î]¸¦ ¼±ÅÃÇÑ ÈÄ "Àüü½ÇÇà"
¸ÅÅ©·Î¸¦ ¼±ÅÃÇϰí [½ÇÇà]À» Ŭ¸¯ÇÕ´Ï´Ù.  ¨ô 3Çà¿¡ ´ëÈ»óÀÚ¿¡
ÀÔ·ÂµÈ °ªÀÌ ±×´ë·Î µÇµ¹·ÁÁ³½À´Ï´Ù.  ¨õ ÀÌÁ¦ ´ëÈ»óÀÚ°¡
Ç×»ó ½ÇÇàµÇ°Ô²û ¼Ò½º¸¦ ¼öÁ¤ÇØÁÖ¾î¾ß ÇÕ´Ï´Ù. ´ëÈ»óÀÚ°¡ °è¼Ó ½ÇÇàµÇ¾î¾ß¸¸
´Ù¸¥ »ç¶÷µéÀÇ Á¤º¸µµ ÀÔ·ÂÇÒ ¼ö ÀÖ½À´Ï´Ù. "Àüü½ÇÇà" ÇÁ·Î½ÃÁ®ÀÇ
¼Ò½º¸¦ ´ÙÀ½°ú °°ÀÌ º¯°æÇÕ´Ï´Ù. 
ÀÌ ¼Ò½ºÀÇ Àǹ̴ ´ÙÀ½°ú °°½À´Ï´Ù.
Sub Àüü½ÇÇà() Àç½ÇÇà: If DialogSheets("´ëÈ»óÀÚ").Show
Then <- ¸¸¾à ´ëÈ»óÀÚ°¡
°è¼Ó º¸¿©Áø´Ù¸é (Áï, »ç¿ëÀÚ°¡ Ãë¼Ò ¹öưÀ» ´©¸£Áö ¾Ê´Â´Ù¸é) ÇаúÀÔ·Â ÇйøÀÔ·Â À̸§ÀÔ·Â ÇàÁ¤»çÁ¡¼öÀÔ·Â
Á¤Ä¡ÇÐÁ¡¼öÀÔ·Â Çå¹ýÇÐÁ¡¼öÀÔ·Â ÃÑÁ¡_Æò±Õ_¼öÁØ GoTo
Àç½ÇÇà <- ¹Ýº¹Çؼ ÇÁ·Î½ÃÀú¸¦
½ÇÇàÇÑ´Ù. Else End If <- ±×·¸Áö ¾ÊÀ¸¸é(Áï, »ç¿ëÀÚ°¡ Ãë¼Ò¹öưÀ»
´·¯ ´ëÈ»óÀÚ¸¦ ¾ø¾Ø´Ù¸é) ÇÁ·Î½ÃÀú¸¦ Á¾·áÇÑ´Ù.
End Sub ´Ù½Ã ÇÁ·Î½ÃÀú¸¦ È®ÀÎÇØ º¾´Ï´Ù. "¼ºÀû°á°ú"
½ÃÆ®¿¡¼ "Àüü½ÇÇà" ¸ÅÅ©·Î¸¦ ½ÇÇàÇÕ´Ï´Ù. ´ëÈ»óÀÚ°¡
¾ø¾îÁöÁö ¾Ê°í °è¼ÓÇØ¼ »ý±â´Â °ÍÀ» º¼ ¼ö ÀÖ½À´Ï´Ù. »ç¿ëÀÚ°¡ [Ãë¼Ò]
¹öưÀ» Ŭ¸¯Çؾ߸¸ Àüü ¸ÅÅ©·Î°¡ ÁßÁöµË´Ï´Ù.  ±×·±µ¥ ÀÌ»óÇÑ Á¡À»
¹ß°ßÇßÀ» °ÍÀÔ´Ï´Ù. »õ·Î¿î µ¥ÀÌÅ͸¦ ÀÔ·ÂÇØµµ °è¼ÓÇØ¼ 3Çà¿¡¸¸ ÀÔ·ÂÀ̵ÇÁÒ?
ÀÌ ¹®Á¦¸¦ ÇØ°áÇϱâ À§ÇØ Àüü ÇÁ·Î½ÃÀú¸¦ º¯°æÇØÁÖ¾î¾ß ÇÕ´Ï´Ù. ÀԷµǴÂ
µ¥ÀÌÅ͸¦ °è¼ÓÇØ¼ ´ÙÀ½Çà¿¡ ÀÔ·ÂÇϱâ À§Çؼ "ÇöÀç ¼¿ÀÇ ¿µ¿ª(Current
Region)"À̶ó´Â °³³äÀ» ÀÌ¿ëÇÏ°Ô µË´Ï´Ù. ½ÃÆ®¿¡ ´ÙÀ½°ú °°ÀÌ Ç׸ñÀ»
ÀÔ·ÂÇÕ´Ï´Ù. 
A1¼¿À» ¼±ÅÃÇÑ ÈÄ [ÆíÁý-À̵¿]À» ¼±ÅÃÇÕ´Ï´Ù. À̵¿ ´ëÈ»óÀÚ°¡
³ªÅ¸³ª¸é [¿É¼Ç] ¹öưÀ» Ŭ¸¯ÇÕ´Ï´Ù. À̵¿ ¿É¼Ç ´ëÈ»óÀÚ°¡ ³ªÅ¸³ª¸é
"ÇöÀç ¼¿ÀÌ ÀÖ´Â ¿µ¿ª"À» ¼±ÅÂÇϰí [È®ÀÎ]À» ´©¸¨´Ï´Ù.

A1¼¿À» ±âÁØÀ¸·Î ÇöÀç ¼¿ÀÌ ÀÖ´Â ¿µ¿ªÀÇ ¹üÀ§°¡ ¼±ÅõǾú½À´Ï´Ù.
ÇöÀç ¼¿ÀÌ ÀÖ´Â ¿µ¿ªÀº ÇöÀç ¼¿ ÁÖÀ§ÀÇ »ç°¢Çü ¼¿ ¹üÀ§¸¦ ¼±ÅÃÇÏ°Ô µË´Ï´Ù.
Áï, ºó Çà°ú ºó ¿À» °æ°è·Î ¹üÀ§°¡ ¼±ÅõǾîÁö´Â °ÍÀÔ´Ï´Ù. 
»ç°¢ÇüÀ¸·Î ¹üÀ§°¡ ¼±ÅõDZ⠶§¹®¿¡ A1:I4ÀÇ ¹üÀ§°¡ ¸ðµÎ ¼±ÅõȴÙ.
´ÙÀ½ ±×¸²Àº A4¼¿¿¡ µ¥ÀÌÅͰ¡ µé¾îÀÖ´Â °æ¿ì¿¡ ÇöÀç ¼¿ÀÌ ÀÖ´Â ¿µ¿ªÀ»
¼±ÅÃÇÑ ¸ð½ÀÀÔ´Ï´Ù.  Ç×»ó µ¥ÀÌÅͰ¡ ÀÔ·ÂµÈ ´ÙÀ½Çà¿¡ µ¥ÀÌÅ͸¦ Ãß°¡ÀûÀ¸·Î
ÀÔ·ÂÇÒ ¼ö ÀÖ´Ù. ÀÌ·¯ÇÑ "ÇöÀç ¼¿ÀÌ ÀÖ´Â ¿µ¿ª"À» ÀÌ¿ëÇØ¼
"ÇаúÀÔ·Â" ÇÁ·Î½ÃÀúÀÇ ³»¿ëÀ» ´ÙÀ½°ú °°ÀÌ º¯°æÇÕ´Ï´Ù.

ÀÌ ÇÁ·Î½ÃÀúÀÇ Àǹ̴ ´ÙÀ½°ú °°½À´Ï´Ù. Sub ÇаúÀÔ·Â()
Sheets("¼ºÀû°á°ú").Select 'Range("a3").Select
<- ±¸¹®¾Õ¿¡ '¸¦ ÀÔ·ÂÇϸé ÀÌ
±¸¹®Àº ½ÇÇàµÇÁö ¾Ê´Â´Ù. Set ÇöÀ缿¿µ¿ª
= Sheets("¼ºÀû°á°ú").Range("a1").CurrentRegion
<- ÇöÀ缿¿µ¿ªÀ» ¼³Á¤Çϴµ¥,
¼ºÀû°á°ú ½ÃÆ®ÀÇ a1¼¿À» ±âÁØÀ¸·Î ÇöÀç ¼¿ÀÌ ÀÖ´Â ¿µ¿ªÀ»
¼±ÅÃÇÑ´Ù. ÇаúÇà = ÇöÀ缿¿µ¿ª.Rows.Count
+ 1 <-ÇöÀ缿¿µ¿ª¿¡ 1ÄÀ»
Áõ°¡½ÃŲ ÇàÀ» ÇаúÇàÀ¸·Î ÁöÁ¤ÇÑ´Ù. Range(Cells(ÇаúÇà,
1), Cells(ÇаúÇà, 1)).Select <-ÇаúÇàÀ»
±âÁØÀ¸·Î ù ¹øÂ° Çà, ù ¹øÂ° ¿À» ¼±ÅÃÇÑ´Ù. Çаú¸í
= DialogSheets("´ëÈ»óÀÚ").EditBoxes("ÇаúÀԷ¶õ").Text
ActiveCell.FormulaR1C1 = Çаú¸í End Sub ÀÌ ¹æ¹ýÀº ´ëÈ»óÀÚ·Î
µ¥ÀÌÅ͸¦ ÀÔ·ÂÇÏ´Â ±âº»ÀûÀÎ ¹æ¹ýÀ̹ǷΠÀß ¾Ë¾ÆµÎ½Ã±â ¹Ù¶ø´Ï´Ù.
21) ³ª¸ÓÁö ÇÏÀ§ ÇÁ·Î½ÃÁ®µµ °°Àº ¹æ¹ýÀ¸·Î ÇöÀ缿¿µ¿ªÀ» ÁöÁ¤ÇÕ´Ï´Ù.
´Ü, ÁÖÀÇÇÒ °ÍÀº ÀÌ¹Ì ÇаúÇà¿¡¼ ÇÑÇàÀ» Áõ°¡½ÃÄÑ ³õ¾Ò±â ¶§¹®¿¡ ÀÌÈÄ¿¡´Â
1ÄÀ» Áõ°¡½Ãų ÇÊ¿ä´Â ¾ø´Ù´Â °ÍÀÔ´Ï´Ù. ´ÙÀ½Àº ¿Ï¼ºµÈ Àüü ÇÁ·Î½ÃÀúÀÔ´Ï´Ù.
Sub Àüü½ÇÇà() Àç½ÇÇà: If DialogSheets("´ëÈ»óÀÚ").Show
Then ÇаúÀÔ·Â ÇйøÀÔ·Â À̸§ÀÔ·Â ÇàÁ¤»çÁ¡¼öÀÔ·Â
Á¤Ä¡ÇÐÁ¡¼öÀÔ·Â Çå¹ýÇÐÁ¡¼öÀÔ·Â ÃÑÁ¡_Æò±Õ_¼öÁØ GoTo
Àç½ÇÇà Else End If End Sub ---------------------------------------------------------------------------
Sub ÇаúÀÔ·Â() Sheets("¼ºÀû°á°ú").Select 'Range("a3").Select
Set ÇöÀ缿¿µ¿ª = Sheets("¼ºÀû°á°ú").Range("a1").CurrentRegion
ÇаúÇà = ÇöÀ缿¿µ¿ª.Rows.Count + 1 Range(Cells(ÇаúÇà, 1), Cells(ÇаúÇà,
1)).Select Çаú¸í = DialogSheets("´ëÈ»óÀÚ").EditBoxes("ÇаúÀԷ¶õ").Text
ActiveCell.FormulaR1C1 = Çаú¸í End Sub ---------------------------------------------------------------------------
Sub ÇйøÀÔ·Â() Sheets("¼ºÀû°á°ú").Select 'Range("b3").Select
Set ÇöÀ缿¿µ¿ª = Sheets("¼ºÀû°á°ú").Range("a1").CurrentRegion
ÇйøÇà = ÇöÀ缿¿µ¿ª.Rows.Count + 0 Range(Cells(ÇйøÇà, 2), Cells(ÇйøÇà,
2)).Select Çйø = DialogSheets("´ëÈ»óÀÚ").EditBoxes("ÇйøÀԷ¶õ").Text
ActiveCell.FormulaR1C1 = Çйø End Sub ---------------------------------------------------------------------------
Sub À̸§ÀÔ·Â() Sheets("¼ºÀû°á°ú").Select 'Range("c3").Select
Set ÇöÀ缿¿µ¿ª = Sheets("¼ºÀû°á°ú").Range("a1").CurrentRegion
À̸§Çà = ÇöÀ缿¿µ¿ª.Rows.Count + 0 Range(Cells(À̸§Çà, 3), Cells(À̸§Çà,
3)).Select À̸§ = DialogSheets("´ëÈ»óÀÚ").EditBoxes("À̸§ÀԷ¶õ").Text
ActiveCell.FormulaR1C1 = À̸§ End Sub ---------------------------------------------------------------------------
Sub ÇàÁ¤»çÁ¡¼öÀÔ·Â() Sheets("¼ºÀû°á°ú").Select
'Range("d3").Select Set ÇöÀ缿¿µ¿ª = Sheets("¼ºÀû°á°ú").Range("a1").CurrentRegion
ÇàÁ¤»çÇà = ÇöÀ缿¿µ¿ª.Rows.Count + 0 Range(Cells(ÇàÁ¤»çÇà, 4),
Cells(ÇàÁ¤»çÇà, 4)).Select ÇàÁ¤»çÁ¡¼ö = DialogSheets("´ëÈ»óÀÚ").EditBoxes("ÇàÁ¤»çÁ¡¼ö").Text
ActiveCell.FormulaR1C1 = ÇàÁ¤»çÁ¡¼ö End Sub ---------------------------------------------------------------------------
Sub Á¤Ä¡ÇÐÁ¡¼öÀÔ·Â() Sheets("¼ºÀû°á°ú").Select
'Range("e3").Select Set ÇöÀ缿¿µ¿ª = Sheets("¼ºÀû°á°ú").Range("a1").CurrentRegion
Á¤Ä¡ÇÐÇà = ÇöÀ缿¿µ¿ª.Rows.Count + 0 Range(Cells(Á¤Ä¡ÇÐÇà, 5),
Cells(Á¤Ä¡ÇÐÇà, 5)).Select Á¤Ä¡ÇÐÁ¡¼ö = DialogSheets("´ëÈ»óÀÚ").EditBoxes("Á¤Ä¡ÇÐÁ¡¼ö").Text
ActiveCell.FormulaR1C1 = Á¤Ä¡ÇÐÁ¡¼ö End Sub ---------------------------------------------------------------------------
Sub Çå¹ýÇÐÁ¡¼öÀÔ·Â() Sheets("¼ºÀû°á°ú").Select
'Range("f3").Select Set ÇöÀ缿¿µ¿ª = Sheets("¼ºÀû°á°ú").Range("a1").CurrentRegion
Çå¹ýÇÐÇà = ÇöÀ缿¿µ¿ª.Rows.Count + 0 Range(Cells(Çå¹ýÇÐÇà, 6),
Cells(Çå¹ýÇÐÇà, 6)).Select Çå¹ýÇÐÁ¡¼ö = DialogSheets("´ëÈ»óÀÚ").EditBoxes("Çå¹ýÇÐÁ¡¼ö").Text
ActiveCell.FormulaR1C1 = Çå¹ýÇÐÁ¡¼ö End Sub ----------------------------------------------------------------------------
Sub ÃÑÁ¡_Æò±Õ_¼öÁØ() ÇàÁ¤»çÁ¡¼ö = Int(DialogSheets("´ëÈ»óÀÚ").EditBoxes("ÇàÁ¤»çÁ¡¼ö").Text)
Á¤Ä¡ÇÐÁ¡¼ö = Int(DialogSheets("´ëÈ»óÀÚ").EditBoxes("Á¤Ä¡ÇÐÁ¡¼ö").Text)
Çå¹ýÇÐÁ¡¼ö = Int(DialogSheets("´ëÈ»óÀÚ").EditBoxes("Çå¹ýÇÐÁ¡¼ö").Text)
ÃÑÁ¡ = ÇàÁ¤»çÁ¡¼ö + Á¤Ä¡ÇÐÁ¡¼ö + Çå¹ýÇÐÁ¡¼ö DialogSheets("´ëÈ»óÀÚ").EditBoxes("ÃÑÁ¡").Text
= ÃÑÁ¡ Sheets("¼ºÀû°á°ú").Select 'Range("g3").Select
Set ÇöÀ缿¿µ¿ª = Sheets("¼ºÀû°á°ú").Range("a1").CurrentRegion
ÃÑÁ¡Çà = ÇöÀ缿¿µ¿ª.Rows.Count + 0 Range(Cells(ÃÑÁ¡Çà, 7), Cells(ÃÑÁ¡Çà,
7)).Select ActiveCell.FormulaR1C1 = ÃÑÁ¡ Æò±Õ = CInt(ÃÑÁ¡
/ 3) DialogSheets("´ëÈ»óÀÚ").EditBoxes("Æò±Õ").Text
= ÃÑÁ¡ 'Range("h3").Select Set ÇöÀ缿¿µ¿ª = Sheets("¼ºÀû°á°ú").Range("a1").CurrentRegion
Æò±ÕÇà = ÇöÀ缿¿µ¿ª.Rows.Count + 0 Range(Cells(Æò±ÕÇà, 8), Cells(Æò±ÕÇà,
8)).Select ActiveCell.FormulaR1C1 = Æò±Õ If Æò±Õ >= 85
Then DialogSheets("´ëÈ»óÀÚ").EditBoxes("¼öÁØ").Text
= "A" ElseIf Æò±Õ >= 60 Then DialogSheets("´ëÈ»óÀÚ").EditBoxes("¼öÁØ").Text
= "B" Else DialogSheets("´ëÈ»óÀÚ").EditBoxes("¼öÁØ").Text
= "C" End If 'Range("i3").Select
Set ÇöÀ缿¿µ¿ª = Sheets("¼ºÀû°á°ú").Range("a1").CurrentRegion
¼öÁØÇà = ÇöÀ缿¿µ¿ª.Rows.Count + 0 Range(Cells(¼öÁØÇà, 9), Cells(¼öÁØÇà,
9)).Select °á°ú = DialogSheets("´ëÈ»óÀÚ").EditBoxes("¼öÁØ").Text
ActiveCell.FormulaR1C1 = °á°ú End Sub ---------------------------------------------------------------------------
22) ¸¶Áö¸·À¸·Î ¸ÅÅ©·Î ´ÜÃß¿Í Àüü ½ÇÇà ¸ÅÅ©·Î¸¦ ¿¬°á½ÃŰ°Ú½À´Ï´Ù.
¾ç½Ä µµ±¸¸ðÀ½¿¡¼ [´ÜÃß]¸¦ Ŭ¸¯ÇÑ ÈÄ ½ÃÆ®¿¡ Àû´çÇÑ Å©±â·Î ±×·ÁÁÝ´Ï´Ù.
¸ÅÅ©·Î ÁöÁ¤ ´ëÈ»óÀÚ°¡ ³ªÅ¸³³´Ï´Ù. "Àüü½ÇÇà" ¸ÅÅ©·Î¸¦
¼±ÅÃÇϰí [È®ÀÎ]À» Ŭ¸¯ÇÕ´Ï´Ù.  23) ÀÌÁ¦ ¸ðµç ÀÛ¾÷ÀÌ ³¡³µ½À´Ï´Ù.
ÀûÀýÇÏ°Ô ¼½ÄÀ» ÁöÁ¤ÇÑ ÈÄ "´ÜÃß"¸¦ Ŭ¸¯Çؼ ¿Ã¹Ù¸£°Ô ÀÛµ¿ÇÏ´ÂÁö
È®ÀÎÇØ º¾´Ï´Ù.  ÀÌ·¸°Ô VBA¸¦ ÅëÇØ ÇÁ·Î±×·¡¹ÖÀ» Çϸé, °¢ÀÚÀÇ
»óȲ¿¡ ¸Â´Â ¿¢¼¿ ÇÁ·Î±×·¥À» ¸¸µé ¼ö ÀÖ½À´Ï´Ù. VBA¿¡ ´ëÇØ¼´Â ÀÌ
Á¤µµ·Î ÁÙÀ̱â·Î ÇÕ´Ï´Ù. ´õ ÀÚ¼¼ÇÑ ³»¿ëÀ» ¿øÇÏ´Â µ¶ÀÚµéÀº "¿¢¼¿°ü·Ã
À¥»çÀÌÆ®"ÀÇ ³»¿ëÀ» Âü°íÇØ¼ Á¤º¸¸¦ ¾òÀ» ¼ö ÀÖ½À´Ï´Ù.
[¿¹Á¦ ´Ù¿î·Îµå Çϱâ]
ÀÌÀü(VBA·Î
¼ºÀû °ü¸® ÇÁ·Î±×·¥ ¸¸µé±â 1)
| ´ÙÀ½(¿¢¼¿°ú
³×Æ®¿öÅ© 1 - ¹®¼ °øÀ¯·Î ÀÛ¾÷Çϱâ)
|