ID:
PW:

     0 ºÐ
     27 ºÐ

¿£Áö´Ï¾î µ¹Á¾
  dolljong

Áö½ÄÀº °øÀ¯µÇ¾úÀ» ¶§ ±× ÈûÀ» ¹ßÈÖÇÑ´Ù.


AutoCAD ActiveX ¸Àº¸±â °­ÁÂ(14)

range¸¦ ÀÎÀÚ·Î ¹Þ´Â ÇÔ¼ö¸¸µé±â
¾îÁ¦ ¸¸µç ÇÔ¼ö´Â 2Â÷¹æÁ¤½ÄÀÇ Çظ¦ µ¹·ÁÁÖ´Â ÇÔ¼ö¿´½À´Ï´Ù. ±×·³ ÀÌ°ÍÀ» ¾î¶»°Ô »ç¿ëÇÏ¸é µÉ±î¿ä? VBA¿¡¼­´Â module¿¡¼­ ¸¸µç ÇÔ¼ö´Â ÀÏ¹Ý ¿¢¼¿ÇÔ¼ö¿Í °°ÀÌ ¼¿¿¡¼­ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î ¾Æ·¡¿Í °°ÀÌ a,b,c°ªÀ» ¼¿¿¡´Ù ÀÔ·ÂÇÑ ÈÄ¿¡ ´Ù¸¥¼¿¿¡ =sol(B1,B2,B3)À̶ó¸é µË´Ï´Ù.



À̹ø¿¡´Â range¸¦ ÀÎÀÚ·Î ¹Þ´Â ÇÔ¼ö¸¦ ¸¸µé¾îº¸°Ú½À´Ï´Ù. »ç½Ç ±»ÀÌ ·¹ÀÎÁö·Î ¹Þ´Â °ÍÀÌ ¾Æ´Ï¶ó À§ÀÇ ÇÔ¼ö¸¦ ±×´ë·Î ÀÌ¿ëÇصµ µË´Ï´Ù.

Function sol(rng)
  a = rng.cells(1)
  b = rng.cells(2)
  c = rng.cells(b)
  sol = (-b - (b ^ 2 - 4 * a * c) ^ 0.5) / (2 * a)
End Function

À§¿Í °°ÀÌ ÇÔ¼ö¸¦ °íÃĺ¼±î¿ä? ±×¸®°í ¿¢¼¿¿¡¼­ È£ÃâÀ» =sol(b1:b3)¿Í °°ÀÌ ¹üÀ§¸¦ Àâ¾Æ¼­ È£ÃâÀ» ÇÕ´Ï´Ù.



¾î¶»°¡¿ä °á°ú´Â °°Áö¿ä? rng¶õ ÀÎÀÚ¸¦ ÅëÇؼ­ range°³Ã¼·Î ³Ñ¾î¿À°í solÇÔ¼ö³»¿¡¼­ cells()¼Ó¼ºÀ» ÀÌ¿ëÇؼ­ ù¹ø°°ÍÀ» a·Î µÎ¹ø°°ÍÀ» b·Î ¼¼¹øÀç°ÍÀ» c·Î ´ëÀÔÇؼ­ solÀ» Ç®¾î³Â½À´Ï´Ù. ÇÏÁö¸¸ ÀÌ·¸°Ô ÇÏÁö ¾Ê°í ¾Æ·¡¿Í °°ÀÌ ÇÏ´Â ¹æ¹ýµµ ÀÖ½À´Ï´Ù.


Function sol(rng)
  a = rng(1)
  b = rng(2)
  c = rng(3)
  sol = (-b - (b ^ 2 - 4 * a * c) ^ 0.5) / (2 * a)
End Function

rng´Â °á±¹ ¹è¿­·Î µé¾î¿Â´Ù´Â °ÍÀ» ¾Ë¼ö ÀÖ½À´Ï´Ù.

À̹ø¿¡´Â Áö³­¹ø¿¡ ¸¸µç ¿©·¯¼¿À» ´õÇÏ´Â ÇÁ·Î±×·¥À» Á» ¼öÁ¤Çؼ­ ÇÔ¼ö·Î ¸¸µé¾îº¸µµ·Ï ÇÏ°Ú½À´Ï´Ù. ±â¾ï³ª½ÃÁÒ? ¼±ÅÃµÈ ¼¿µé¿¡ ´ëÇؼ­ for¹®À» ÀÌ¿ëÇؼ­ ´õÇÑ ´ÙÀ½¿¡ °á°ú¸¦ msg¹®À¸·Î º¸¿©ÁÖ¾ú´ø ÇÁ·Î±×·¥. ±×°ÍÀ» ¿¢¼¿ÇÔ¼ö·Î ¸¸µé¾î¼­ ¼¿¿¡¼­ Á÷Á¢ ÀÔ·ÂÇÒ ¼ö ÀÖµµ·Ï Çؼ­ ´õÇØÁø ¼¿µéÀÇ °á°ú¸¦ µ¹·ÁÁÖµµ·Ï ¸¸µé¸é µÉ°ÍÀÔ´Ï´Ù.

Function sumcells(arange As Range)
  icount = arange.Count
  For i = 1 To icount
    Sum = Sum + arange.Cells(i)
  Next i
  sumcells = Sum
End Function

À§¿Í °°ÀÌ ÄÚµùÀ» ÇÑ´ÙÀ½¿¡ ¿¢¼¿ÀÇ ¼¿¿¡¼­ sumcells(b1:b3)ÇÏ¸é ¸ðµÎ ´õÇÑ °á°ú¸¦ µ¹·ÁÁÙ°ÍÀÔ´Ï´Ù. À§ÀÇ ÄÚµå´Â ÀÌÇØ°¡ °¡½ÃÁÒ? Áö³­¹ø sub·Î ¸¸µé¾ú´ø °Í°ú ´Ù¸¥°ÍÀº sub°¡ functionÀ¸·Î ¹Ù²î¾ú°í sumcells¿¡ ÀÎÀÚ·Î ³Ñ¾î¿Àµµ·Ï ()¾È¿¡ arange as range¸¦ Ãß°¡ ÇÏ°í, ¸¶Áö¸·¿¡ sumcells=sumÀ¸·Î °á°ú°ªÀ» ÇÔ¼ö¸í¿¡ ´ëÀÔ½ÃŲ °Í »ÓÀÔ´Ï´Ù. ÀÎÀÚÀÇ ÇüÀ» range·Î Á¤ÀÇÇصµ µÇÁö¸¸ ¾Æ·¡¿Í °°ÀÌ Á¤ÀÇ ÇÏÁö ¾Ê°í »ç¿ëÇصµ µË´Ï´Ù. ÀÌ·¸°Ô ÇüÀ» ÁöÁ¤ÇÏÁö ¾Ê´Â °æ¿ì¿¡´Â ÀÚµ¿À¸·Î VariantÇüÀ¸·Î ¼±¾ðµË´Ï´Ù. VariantÇüÀº ÁÖ¾îÁø °ª¿¡ µû¶ó¼­ ÇüÀÌ Á¤ÇØÁý´Ï´Ù.

Function sumcells(arange)
  icount = arange.Count
  For i = 1 To icount
    Sum = Sum + arange.Cells(i)
  Next i
  sumcells = Sum
End Function

[ÀÌÀü °­ÁÂ]     [´ÙÀ½ °­ÁÂ]


dolljong@gmail.com