AutoCAD ActiveX ¸Àº¸±â °ÁÂ(10) |
Offset¼Ó¼ºÀ¸·Î ¿øÇÏ´Â ¼¿¿¡ ¾²±â
¿À´ÃÀº ¾î¶² range°³Ã¼³ª ÇöÀ缿(activecell)À» ±âÁØÀ¸·Î ¿øÇÏ´Â À§Ä¡¿¡ °ªÀ» ³Ö°Å³ª ÀÐÀ» ¶§ ²À ÇÊ¿äÇÑ offset¼Ó¼º¿¡ ´ëÇؼ ¾Ë¾Æº¸°Ú½À´Ï´Ù.
ÇÁ·Î±×·¥ÀÇ ÀåÁ¡ÀÌ ¿©·¯°³ÀÇ ÀÏÀ» ÇÁ·Î±×·¥ÀÌ ÇØÁشٴ °ÍÀÌÁÒ? »ç¶÷ÀÌ Çϸé Áö°Ü¿ö¼ ¸øÇÒÀÏÀ» ÇÁ·Î±×·¥Àº ¾ÆÁÖ ½±°Ô ÇØÁÝ´Ï´Ù. µû¶ó¼ ¿©·¯¼¿ÀÇ
°ªµéÀ» Àаųª ¾²´Â ÀÛ¾÷ÀÌ ÇÊ¿äÇÑ °æ¿ì°¡ ¸¹½À´Ï´Ù. ¿¹¸¦ µé¾î¼ [´ÙÁ¤´Ù°¨] for ExcelÀÇ ±â´ÉÁß pline2xls°ú °°ÀÌ ¾î¶² ÁÂÇ¥µéÀ» Àоî¼
ÇöÀ缿À» ±âÁØÀ¸·Î ¶Ç´Â »ç¿ëÀÚ°¡ ¼±ÅÃÇÑ ¼¿À» ±âÁØÀ¸·Î ¾Æ·¡ÂÊÀ¸·Î ÂÞ~¿í ½á³ª°¡¾ß ÇÑ´Ù¸é ¾î¶»°Ô ÇÒ±î¿ä?
range("A1")=1
range("A2")=2
range("A3")=3
...
ÀÌ·±½ÄÀ¸·Î ÂÞ¿í ½á³ª°¥ ¼ö¾ß ¾÷°ÚÁÒ? range°³Ã¼¿¡´Â offsetÀ̶õ ¼Ó¼ºÀÌ ÀÖ½À´Ï´Ù. »ç¿ë¹ýÀº range.offset(À̵¿Çà¼ö,À̵¿¿¼ö) ÀÔ´Ï´Ù.
¿¹¸¦ µé¾î¼ range("a1").offset(1,1) Àº range("b2")¶ó´Â Ç¥Çö°ú °°½À´Ï´Ù. "a1"¿¡¼ ¾Æ·¡·Î ÇÑÁÙ, ¿ìÃøÀ¸·Î ÇÑ¿À» À̵¿Çϸé "B1"ÀÌ µÇ°ÚÁÒ?
±×·³ ÇÑ°¡Áö Å×½ºÆ®¸¦ Çغ¼±î¿ä? ÇöÀç ¼¿À§Ä¡¿¡¼ºÎÅÍ ¾Æ·¡·Î 10ÁÙ¿¡´Ù°¡ 1ºÎÅÍ 10±îÁöÀÇ ¼ýÀÚ¸¦ ³Ö´Â ÇÁ·Î±×·¥À» ¸¸µé¾îº¸µµ·Ï ÇÏ°Ú½À´Ï´Ù.
À̹ø¿¡´Â ¸ÅÅ©·Ñ¸¦ ±â·ÏÇÏ´Â°Ô ¾Æ´Ï¶ó Á÷Á¢ VisualBasic Editor¸¦ ÀÌ¿ëÇؼ ¸¸µé¾îº¸µµ·Ï ÇÏ°Ú½À´Ï´Ù. ¿ì¼± VisualBasic Editor¸¦ ¶ç¿ó´Ï´Ù.
±×·±µ¥ ÀÌ»óÇÕ´Ï´Ù. ¸ÞÅ©·Ñ¸¤ ±â·ÏÇÒ Ã¢ÀÌ ¾ø½À´Ï´Ù. ´çȲÇÏÁö ¸¶½Ã°í ¿ÞÂÊ projectŽ»ö±â¸¦ º¸½Ã±â ¹Ù¶ø´Ï´Ù. ÇöÀç ¿·ÁÀÖ´Â ¿¢¼¿ÆÄÀÏÀÇ
¾Æ·¡¿¡ ¸ðµâÀÌ ¾ø´Ù¸é ¸ÅÅ©·Ñ¸£ ±â·ÏÇÒ ¼ö ¾ø½À´Ï´Ù. °á±¹ ¸ÅÅ©·Î´Â excelÆÄÀÏÀÇ ¸ðµâÀ̶ó´Â °÷¿¡ ±â·ÏµÇ´Â °ÍÀÔ´Ï´Ù. ¾ÆÁÖ ¿À·¡Àü ¿¢¼¿¹öÁ¯¿¡¼´Â
ijũ·Î ½¬Æ®¶ó´Âµ¥´Ù ¸ÅÅ©·Î¸¦ ±â·ÏÇß´ø ½ÃÀýÀÌ ÀÖ¾ú½À´Ï´Ù. ¸ðµâµµ ¸¶Ä¡ ½¬Æ®Ã³·³ ExcelÆÄÀÏÀÇ ÀϺζó°í »ý°¢ÇÏ½Ã¸é µÉ °Í °°½À´Ï´Ù.
¸ÅÅ©·Î¸¦ ±â·ÏÇϱâ À§Çؼ proejctâ¿¡¼ ÇöÀç¿·ÁÀÖ´Â ÆÄÀÏÀÇ À̸§¿¡¼ ¿À¸¥ÂÊ ¸¶¿ì½º¸¦ Ŭ¸¯ÇÏ¸é »ðÀÔÀ̶ó´Â ¸Þ´º°¡ ³ª¿À°í ±×°É Ŭ¸¯Çϸé
¸ðµâÀ» »ðÀÔÇÒ ¼ö ÀÖ½À´Ï´Ù. ¸ðµâÀ» »ðÀÔÇÏ¸é ¿¢¼¿ÆÄÀÏ ¾Æ·¡¿¡ Module1À̶ó°í ¸ðµâ°ø°£ÀÌ »ý±ä°É º¸½Ç ¼ö ÀÖÀ» °ÍÀÔ´Ï´Ù.
¿À¸¥ÂÊ¿¡´Â code¸¦ ÀÔ·ÂÇÒ ¼ö Àִ âÀÌ »ý°å°í, Ä¿¼°¡ À§Ä¡ÇÏ°í ÀÖ½À´Ï´Ù. À̺κп¡ Äڵ带 ÀÔ·ÂÇÏ¸é µÇ°ÚÁÒ? ÇöÀ缿¾Æ·¡¿¡ 1ºÎÅÍ 10±îÁö ¾²´Â
¸ÅÅ©·Î¸¦ Çѹø ¸¸µé¾îº¸°Ú½À´Ï´Ù. ¿ì¼± sub·Î ¸ÅÅ©·Î À̸§À» Á¤ÀÇÇØÁÖ¾î¾ß°ÚÁö¿ä? ±×³É write10À̶õ À̸§À¸·Î ¸¸µé¾îº¼±î¿ä?
sub write10()À̶ó°í ÀÔ·ÂÇÏ°í enter¸¦ Ä¡¸é ÀÚµ¿ÀûÀ¸·Î end sub°¡ ÀԷµ˴ϴÙ. ±×¸®°í ±× µÎÁÙ »çÀÌ¿¡ Ä¿¼°¡ À§Ä¡ÇÏ°Ô µÇÁö¿ä. ±× ¾È¿¡´Ù Äڵ带
›³ÖÀ¸¶ó´Â ¶æÀÌ°ÚÁö¿ä? Âü Ä£Àýµµ ÇÕ´Ï´Ù.
±×·¯¸é ±× »çÀÌ¿¡ ¾Æ·¡¿Í °°ÀÌ ´Ü ¼¼ÁÙÀ» ÀÔ·ÂÇØÁÝ´Ï´Ù.
for¹®Àº for¿Í enxt»çÀÌÀÇ codeµéÀ» ¹Ýº¹½ÇÇàÇØÁÖ´Â ±â´ÉÀÌ ÀÖ½À´Ï´Ù. ÇÁ·Î±×·¡¹ÖÀÇ Áß¿äÇÑ
°ÍÁß Çϳª°¡ ¹Ýº¹¹®ÀÇ »ç¿ëÀÔ´Ï´Ù. i=1ºÎÅÍ ½ÃÀÛÇؼ 10±îÁö(for i=1 to 10) activecell.offset(i,0)À» ¹Ýº¹Ç϶ó´Â ¸í·ÉÀÔ´Ï´Ù. activecell.offset(i,0)ÀÌ
°¡Àå Áß¿äÇÑ ¹®ÀåÀÌ°ÚÁÒ? ÀÌ i°¡ 1ºÎÅÍ 10°¡Áö ¹Ù²î¸é ¾î¶»°Ô ÀÛ¿ëÇÒ °ÍÀΰ¡¸¦ i´ë½Å¿¡ 1,2,3..¸¦ ´ëÀÔÇغ¸¸é¼ Çغ¸¸é µÇ°ÚÁÒ. 1À» ´ëÀÔÇß´Ù°í Çϸé
activecell.offset(1,0)=1À̶õ ¹®ÀåÀÌ µÇ°ÚÁö¿ä? ÇöÀ缿¿¡¼ ¾Æ·¡·Î ÇÑÁÙ ³»·Á°£ ¼¿¿¡´Ù 1À» ÀÔ·ÂÇ϶ó´Â ¶æÀÔ´Ï´Ù. 2¸¦ ´ëÀÔÇϸé activecell.offset(2,0)=2°¡
µÇ°ÚÁÒ. ÇöÀ缿¿¡¼ ¾Æ·¡·Î µÎÁÙ³»·Á°¡¼ 2¸¦ ³Ö¾î¶ó... ¶ó´Â ¶æÀ̵ǰÚÁÒ? °è¼Ó ¹Ýº¹Çϸé ÇöÀ缿ÀÇ ÇÑÁÙ ¾Æ·¡¼ºÎÅÍ 10ÁÙ ¾Æ·¡±îÁö ¼ýÀÚµéÀÌ ÀÔ·ÂÀÌ
µÉ °ÍÀÔ´Ï´Ù. °á±¸ for¹®À» Ç®¾î¼ ¾²¸é..
activecell.offset(1,0)=1
activecell.offset(2,0)=2
activecell.offset(3,0)=3
activecell.offset(4,0)=4
activecell.offset(5,0)=5
activecell.offset(6,0)=6
activecell.offset(7,0)=7
activecell.offset(8,0)=8
activecell.offset(9,0)=9
activecell.offset(10,0)=10
À̶ó°í ¾´°Í°ú °°À» °ÍÀÔ´Ï´Ù. 10ÁÙÀ» ½á¾ßµÇ´Â ¹®ÀåÀ» for¶ó´Â ¹®ÀåÀÌ °£´ÜÇÏ°Ô ÇØ°áÇØÁÖ´Â °ÍÀÌÁÒ.
ÀÌÁ¦ ½ÇÇà¹öÆ°À» ´·¯¼ ÇÁ·Î±×·¥À» ½ÇÇà½ÃÄѺ¸¸é... ¾Æ·¡¿Í °°ÀÌ ÀԷµ˴ϴÙ. ÀÌÁ¦ ¹Ýº¹µÇ´Â ÀÛ¾÷µµ ½±°Ô ó¸®ÇÒ
¼ö ÀÖ°ÚÁÒ? ÇöÀçÀÇ ¼¿À» ¹Ù²ã°¡¸é¼ ½ÇÇà½ÃÄѺ¸¼¼¿ä~
¿À´ÃÀº ¿©±â¼ ¸¶Ä¡±â·Î ÇÏ°í ³»ÀÏ °è¼ÓÇϵµ·Ï ÇÏ°Ú½À´Ï´Ù.
[ÀÌÀü °ÁÂ]
[´ÙÀ½ °ÁÂ]
|