VBA ÀÔ¹®°Á : Áß¿äÇÑ ¿ÀºêÁ§Æ® ¸î °¡Áö
°¡. ¿öÅ©ºÏ ¿ÀºêÁ§Æ®(Workbook Object)
³ª. ¿öÅ©½ÃÆ® ¿ÀºêÁ§Æ®(Worksheet Object)
´Ù. ·¹ÀÎÁö ¿ÀºêÁ§Æ®(Range Object)
Range ¿ÀºêÁ§Æ®´Â
VBA·Î ÇÁ·Î±×·¡¹ÖÀ» ÇÒ ¶§ °¡Àå ºó¹øÇÏ°Ô »ç¿ëµÇ´Â °¡Àå Áß¿äÇÑ ¿ÀºêÁ§Æ® ÀÔ´Ï´Ù. ¿¢¼¿¿¡ ÀԷµǴ ´ëºÎºÐÀÇ µ¥ÀÌÅ͵éÀÌ ¹Ù·Î Range
¿ÀºêÁ§Æ®¿¡ º¸°üµË´Ï´Ù. ·¹ÀÎÁö ¿ÀºêÁ§Æ®ÀÇ °³³ä¸¸ Àß ÀÌÇØÇÏ¸é ³ª¸ÓÁö ¿ÀºêÁ§Æ®¿¡ ´ëÇÑ °ÍÀº °ÅÀú¸Ô±â³ª ¸¶Âù°¡Áö ÀÔ´Ï´Ù. Range
¿ÀºêÁ§Æ®´Â ¿öÅ©½ÃÆ® ¿ÀºêÁ§Æ®ÀÇ ÇÏÀ§ ¿ÀºêÁ§Æ®·Î ½ÃÆ® ³»¿¡ ÇÑ °³ ¶Ç´Â º¹¼ö °³ÀÇ ¼¿µé·Î ÀÌ·ç¾îÁý´Ï´Ù.
Range ¿ÀºêÁ§Æ®¿¡ Á¢±ÙÇÏ´Â ¹æ¹ýÀº ¿©·¯
°¡Áö°¡ ÀÖ½À´Ï´Ù. ´ÙÀ½Àº ´ëÇ¥ÀûÀÎ ¸î °¡Áö ¹æ¹ýÀÔ´Ï´Ù.
Range ¼Ó¼ºÀ» »ç¿ëÇÏ´Â ¹æ¹ý
Cells ¼Ó¼ºÀ» »ç¿ëÇÏ´Â ¹æ¹ý
Offset ¼Ó¼ºÀ» »ç¿ëÇÏ´Â ¹æ¹ý
Union ¸Þ¼µå¸¦ »ç¿ëÇÏ´Â ¹æ¹ý
¾Õ °Á¿¡¼ ¿öÅ©½ÃÆ® ¿ÀºêÁ§Æ®ÀÇ Å©±â¿¡ ´ëÇØ Àá±ñ ¼³¸íµå¸° ÀûÀÌ ÀÖ½À´Ï´Ù. ´ÙÀ½ ÇÁ·Î½ÃÀú¸¦ ½ÇÇà½ÃÄÑ
º¸¸é ÇϳªÀÇ ¿öÅ©½ÃÆ®¿¡´Â ¸î °³ÀÇ ¼¿ÀÌ ÀÖ´Â Áö ¾Ë ¼ö ÀÖ½À´Ï´Ù.
|
Sub HowManyCells()
¡¡
Dim lngRow As Long
Dim intColumn As Integer
Dim lngCell As Long
Dim strMsg As String
lngRow = ActiveSheet.Rows.Count
' ½ÃÆ® ³»ÀÇ Çà ¼ö¸¦ Ä«¿îÆÃÇÏ¿©
lngRow º¯¼ö¿¡ ´ã½À´Ï´Ù.
intColumn = ActiveSheet.Columns.Count
' ½ÃÆ® ³»ÀÇ ¿ ¼ö¸¦ Ä«¿îÆÃÇÏ¿©
intColumn º¯¼ö¿¡ ´ã½À´Ï´Ù.
lngCell = lngRow * intColumn
' Çà ¼ö¿Í ¿ ¼ö¸¦
°öÇØ¼ ¼¿ ¼ö¸¦ ±¸ÇÑ ´ÙÀ½, °á°ú°ªÀ» lngCell º¯¼ö¿¡ ÀúÀåÇÕ´Ï´Ù.
strMsg = strMsg & "½ÃÆ® ³» ÇàÀÇ ¼ö : " & lngRow & vbCr
strMsg = strMsg & "½ÃÆ® ³» ¿ÀÇ ¼ö : " & intColumn & vbCr & vbCr
strMsg = strMsg & "Àüü ¼¿ÀÇ ¼ö : " & lngCell
MsgBox strMsg
¡¡
End Sub |
VBA¿¡¼ °¡Àå Áß¿äÇÑ ¿ÀºêÁ§Æ® Áß ÇϳªÀÎ ·¹ÀÎÁö ¿ÀºêÁ§Æ®¿¡ ÀÚÀ¯ÀÚÀç·Î Á¢±ÙÇϱâ À§ÇÑ Ã¹¹øÂ°
°úÁ¦´Â, ¿ì¼± ¼¿À» ¼±ÅÃÇÏ´Â °ÍÀÔ´Ï´Ù. ±×·¯±â À§Çؼ´Â Range ¼Ó¼º°ú Cells ¼Ó¼ºÀÇ Æ¯¼ºÀ» Àß ÀÌÇØÇϰí ÀÖ¾î¾ß ÇÕ´Ï´Ù. µÎ
¼Ó¼º¿¡´Â °¢°¢ ¾î¶² Àå´ÜÁ¡ÀÌ ÀÖ´Â Áö, ¾î¶² °æ¿ì¿¡ »ç¿ëÇϸé ÁÁÀºÁö Àß Á¤¸®ÇØ µÎ½Ã±â ¹Ù¶ø´Ï´Ù.
Range ¼Ó¼º
´ÙÀ½ Äڵ带 ½ÇÇàÇϸé 'Sheet1' ½ÃÆ®ÀÇ A1 ¼¿¿¡ '100' À̶ó´Â °ªÀÌ ÀԷµ˴ϴÙ.
|
Worksheets("Sheet1").Range("A1").Value = 100 |
À̰ÍÀº Worksheets("Sheet1")À̶ó´Â ¿öÅ©½ÃÆ® ¿ÀºêÁ§Æ®ÀÇ,
Range("A1")À̶ó´Â ·¹ÀÎÁö ¿ÀºêÁ§Æ®ÀÇ,
Value ¼Ó¼º°ªÀ» '100'À̶ó°í ÁöÁ¤ÇØ ÁØ °ÍÀÔ´Ï´Ù. Range ¿ÀºêÁ§Æ®ÀÇ
µðÆúÆ®default ¼Ó¼º°ªÀº ValueÀÔ´Ï´Ù. ÀÚµ¿Â÷¸¦ »ì ¶§¿¡µµ ±âº»À¸·Î µþ·Á³ª¿À´Â °ÍÀÌ ÀÖ°í ¿É¼ÇÀ¸·Î ¼±ÅÃÇÏ´Â °ÍÀÌ ÀÖÁö¿ä?
µðÆúÆ® ¼Ó¼ºÀº ¼Ó¼º¸íÀ» µû·Î ºÙÀÌÁö ¾Ê¾Æµµ ºÙÀÎ °ÍÀ¸·Î ÇØ¼®ÇÏ´Â °ÍÀÔ´Ï´Ù. ÀÚµ¿Â÷¿¡¼ º°µµ·Î ÁÖ¹®ÇÏÁö ¾Ê¾Æµµ ÇÔ²² Á¦°øµÇ´Â °Í°ú
¸¶Âù°¡Áö·Î ¸»ÀÔ´Ï´Ù.
À̹ø¿¡´Â ¿©·¯ ¼¿¿¡ µ¿ÀÏÇÑ °ªÀ» ³Ö¾îº¼±î¿ä. ÀÔ·ÂÇϰíÀÚ ÇÏ´Â À§Ä¡¿¡ ´Ù¸¥ °ªÀÌ µé¾îÀÖÀ¸¸é ¸Þ½ÃÁö¸¦
Ç¥½ÃÇÏ°í ½ÇÇàÇÕ´Ï´Ù.
|
Sub WriteData_2()
Worksheets("Sheet1").Range("A1").Select
If Selection <> "" Then
' ¼±ÅÃµÈ ¼¿ÀÌ °ø¶õÀÌ ¾Æ´Ï¸é If
±¸¹® ³»ºÎÀÇ ¸í·ÉÀ» ½ÇÇàÇÕ´Ï´Ù.
MsgBox "ÀÔ·ÂµÈ °ªÀÌ ÀÖÀ¸³ª Áö¿ì°Ú½À´Ï´Ù"
Selection.ClearContents
' ¼±ÅÃµÈ ¿µ¿ªÀÇ µ¥ÀÌÅ͸¦ Áö¿ó´Ï´Ù.
|
¸Þ¼µå |
¼³ ¸í |
|
Clear |
³»¿ë°ú ¼½ÄÀ» ¸ðµÎ Áö¿ó´Ï´Ù. |
|
ClearContents |
³»¿ë¸¸ Áö¿ó´Ï´Ù. |
|
ClearFormats |
¼½Ä¸¸ Áö¿ó´Ï´Ù. |
End If
Worksheets("Sheet1").Range("A1:A10").Value = "¿¢¼¿ VBA"
MsgBox "A1:A10 ¿µ¿ª¿¡ °ªÀ» ÀÔ·ÂÇÏ¿´½À´Ï´Ù"
End Sub |
À̹ø¿¡´Â ºÒ¿¬¼ÓÀûÀÎ ¿©·¯ °³ÀÇ ¼¿¿¡ °ªÀ» ³Ö´Â ¹æ¹ý¿¡ ´ëÇØ »ìÆìº¾´Ï´Ù.
|
Sub WriteData_3()
Worksheets("Sheet1").Range("A1").Select
Range("A1").CurrentRegion.Select
MsgBox Selection.Address & " ¿µ¿ªÀ» ¼±ÅÃÇÏ¿´½À´Ï´Ù. °ªÀ» Áö¿ì°Ú½À´Ï´Ù"
Selection.ClearContents
With Range("A1,A3,A5,A7,A9,B2,B4,B6,B8,B10")
.Select
.Value = "¿¢¼¿ VBA"
End With
MsgBox """A1,A3,A5,A7,A9,B2,B4,B6,B8,B10"" ¼¿¿¡ °ªÀ» ÀÔ·ÂÇÏ¿´½À´Ï´Ù"
End Sub |
CurrentRegionÀº ÇöÀç ¿µ¿ª, Áï ÀÎÁ¢ÇØ ÀÖ´Â »ó/ÇÏ/ÁÂ/¿ìÀÇ ¿µ¿ªÀ» ¹ÝÈ¯ÇØ ÁÖ´Â ¼Ó¼ºÀÔ´Ï´Ù. ¸Õ ¼Ò¸®³Ä Çϸé,
´ÙÀ½ ±×¸²¿¡¼ ÇöÀç A1 ¼¿ÀÌ ¼±ÅÃµÈ »óÅ¿¡¼ Range("A1").CurrentRegion.Select¶ó°í Çϸé A1
¼¿°ú ÀÎÁ¢ÇØ ÀÖ´Â ÁÖº¯ ¼¿ÀÌ ¸ðµÎ ¼±Åõ˴ϴÙ.
¡¡

¡¡
Cells ¼Ó¼º
Cells ¼Ó¼ºÀ» »ç¿ëÇØµµ ¼¿À»
¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ Äڵ带 ½ÇÇàÇϸé ÇöÀç ½ÃÆ®ÀÇ B5 ¼¿¿¡ ¼ýÀÚ '100'À» ÀÔ·ÂÇÕ´Ï´Ù.
Cells ¼Ó¼ºÀÇ °æ¿ì,
Cells(Çà, ¿)ÀÇ Çü½ÄÀ¸·Î Ç¥±âÇÕ´Ï´Ù. À̰ÍÀº Range ¼Ó¼ºÀÇ Ç¥Çö ¹æ¹ý°ú´Â ¹Ý´ë ¼ø¼À̹ǷΠÁÖÀÇÇϽñ⠹ٶø´Ï´Ù.
Cells ¼Ó¼ºÀ¸·Î ¼¿ ¹üÀ§¸¦
Âü°íÇϰíÀÚ ÇÒ °æ¿ì¿¡´Â Range ¼Ó¼º°ú Á¶ÇÕÀ» ÇØ¼ »ç¿ëÇÕ´Ï´Ù.
|
Range(Cells(3, 2), Cells(10, 5)).Select |
Cells ¼Ó¼º(Range ¼Ó¼ºÀÇ
°æ¿ì¿¡µµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù) ¾Õ¿¡ ¾Æ¹« °Íµµ ºÙÀÌÁö ¾ÊÀ¸¸é ÇöÀç ¿öÅ©½ÃÆ®¸¦ ´ë»óÀ¸·Î ÇÕ´Ï´Ù. ¿öÅ©½ÃÆ® À̸§À» ¾Õ¿¡ ¸í±âÇϸé
´ç¿¬È÷ ÁöÁ¤ÇÑ ¿öÅ©½ÃÆ®¿¡ Á¢±ÙÇÑ ´ÙÀ½ ÀÛ¾÷À» ÇÕ´Ï´Ù. ´ÙÀ½Àº 'MySheet' ½ÃÆ®ÀÇ A2 ¼¿¿¡ ÁöÁ¤ÇÑ °ªÀ» ÀÔ·ÂÇÕ´Ï´Ù.
|
Worksheets("MySheet").Cells(2, 1).Value = "VBA
Programming" |
¿©±â¼ ÇÑ °¡Áö ÁÖÀÇÇÒ Á¡ÀÌ
ÀÖ½À´Ï´Ù. ¸¸¾à Cells(3, 2)¶ó°í ÇÏ¸é ¾î´À ¼¿À» ÁöÁ¤ÇÑ´Ù°í »ý°¢ÇϽʴϱî? ¾Æ¸¶µµ Áö±Ý±îÁö °øºÎ¸¦ Á¦´ë·Î ÇØ ¿Â
ºÐÀ̶ó¸é,
"±×°Íµµ Áú¹®À̶ó°í... Çà ¹æÇâÀ¸·Î 3, ¿ ¹æÇâÀ¸·Î
2¸¸Å À̵¿ÇÑ °÷ÀÇ ¼¿À̴ϱî... ´ç¿¬È÷ B3 ¼¿ÀÌÁö!"
ÀÌ·¸°Ô ´ë´äÇÏ½Ç °ÍÀÔ´Ï´Ù.
Á¤´äÀº, '±×·² ¼öµµ ÀÖ°í ¾Æ´Ò ¼öµµ ÀÖ´Ù!' ÀÔ´Ï´Ù. ¸Õ ¼Ò¸°Áö ¾Ë µí ¸» µí ÇϽÃÁö¿ä? ¾î¶² ¹üÀ§ ³»¿¡¼ ¸í·ÉÀ»
»ç¿ëÇÏ´À³Ä¿¡ µû¶ó ´Þ¶óÁø´Ù´Â ÀǹÌÀÔ´Ï´Ù. Áï Cells ¼Ó¼º ¾Õ¿¡ ¾Æ¹« °Íµµ ¾øÀÌ ±×³É Cells(3, 2)¶ó°í ÇÑ´Ù¸é
3Çà°ú 2¿ÀÌ ¸¸³ª´Â B3 ¼¿À» ÀǹÌÇÕ´Ï´Ù. ÇÏÁö¸¸ ¾Õ¿¡ ´Ü¼°¡ ºÙ¾î ÀÖÀ¸¸é »çÁ¤Àº ´Þ¶óÁý´Ï´Ù. ´ÙÀ½°ú °°Àº ¹®ÀåÀÌ ÀÖ´Ù°í
ÇÒ °æ¿ì, ¾î´À ¼¿¿¡ 100À̶ó´Â °ªÀ» ³Ö¾îÁÖ°Ô µÉ±î¿ä?
|
Range("B2:E9").Cells(3, 2) = 100 |
Range("B2:E9").Cells(3, 2)¶ó´Â °ÍÀº B2:E9 ¿µ¿ª ³»¿¡¼ Çà ¹æÇâÀ¸·Î 3¹øÂ°, ¿ ¹æÇâÀ¸·Î 2¹øÂ°¿¡
ÀÖ´Â ¼¿À» ÀǹÌÇÕ´Ï´Ù. µû¶ó¼ C4 ¼¿¿¡ ¼ýÀÚ 100À» ÀÔ·ÂÇÏ°Ô µË´Ï´Ù.

|
Range
¼Ó¼º°ú Cells ¼Ó¼ºÀº °¢°¢ ¾î¶² °æ¿ì »ç¿ëÇϸé ÁÁÀº°¡? |
|
Áö±Ý±îÁö Range ¼Ó¼º°ú Cells ¼Ó¼º¿¡ ´ëÇØ »ìÆìº¸¾Ò½À´Ï´Ù. ±×·±µ¥ Cells ¼Ó¼ºÀÇ °æ¿ì,
Á¤ÀÇµÈ À̸§À» »ç¿ëÇÒ ¼ö ¾ø°í, ¼¿ ¹üÀ§¸¦ ¼³Á¤ÇÒ ¶§¿¡µµ ´Üµ¶À¸·Î´Â »ç¿ëÇÒ ¼ö ¾ø°í Range ¼Ó¼º°ú Á¶ÇÕÀ» ÇØ¾ß ÇÕ´Ï´Ù.
|
À߸øµÈ »ç¿ë ¿¹ (X) |
¹Ù¸¥ »ç¿ë ¿¹ (O) |
|
Cells("Áö¿ªº°_¸ÅÃâ").Select |
Range("Áö¿ªº°_¸ÅÃâ").Select |
|
Cells(Cells(2, 1), Cells(5, 7)).Select |
Range(Cells(2, 1), Cells(5, 7)).Select |
±×·¸´Ù¸é ºÒÆíÇϰԸ¸ º¸ÀÌ´Â Cells ÇÁ·ÎÆÛƼ´Â ¹¹ÇÏ·¯ ¸¸µé¾î ³õ¾ÒÀ»±î¿ä?
Cells ÇÁ·ÎÆÛƼÀÇ °¡Àå Å« ÀåÁ¡Àº Àμö¿¡ ¼ýÀÚ°ªÀ» »ç¿ëÇÒ ¼ö ÀÖ´Ù´Â °ÍÀÔ´Ï´Ù. ´ÙÀ½°ú °°Àº ±¸±¸´Ü Å×À̺íÀ» ¸¸µç´Ù°í »ý°¢ÇØ º¸¼¼¿ä.

¸¸¾à Range ¼Ó¼º¸¸À¸·Î ÀÌ·¯ÇÑ °ÍÀ» ¸¸µé¾î¾ß ÇÑ´Ù¸é... ¸Ó¸®°¡ ½ÉÇÏ°Ô ¾ÆÆÄ ¿É´Ï´Ù(¹°·Ð
ºÒ°¡´ÉÇÑ °ÍÀº ¾Æ´Õ´Ï´Ù). ÀÌ·± °æ¿ì, For ~ Next ¹Ýº¹¹®°ú Cells ¼Ó¼ºÀ» Á¶ÇÕÇÏ¸é ¾ÆÁÖ °£´ÜÈ÷ ÇØ°áÇÒ ¼ö ÀÖ½À´Ï´Ù. ¾î¶»°Ô
ÇÏ¸é µÉ Áö 3ºÐ°£ ·ÎÁ÷À» »ý°¢ÇØ º¸½Å ´ÙÀ½ Äڵ带 º¸½Ã±â ¹Ù¶ø´Ï´Ù.
|
Sub ±¸±¸´Ü_Å×À̺í()
Dim i As Integer
Dim j As Integer
For i = 2 To 9
For j = 1 To 9
Cells(j + 1,
i - 1) = i & " X " & j & " = " & i * j
Next j
Next i
Columns("A:H").AutoFit
End Sub
¡¡ |
»ý°¢º¸´Ù °£´ÜÇÏÁö
¾Ê½À´Ï±î? (ÀáÀá~~) |
Èï¹ÌÁøÁøÇÑ ExcellerÀÇ
VBA ±âÃÊ °Á´ ´ÙÀ½¿¡ °è¼ÓµË´Ï´Ù. ^^;V
´ÙÀ½ ½Ã°£¿¡´Â ·¹ÀÎÁö ¿ÀºêÁ§Æ®¸¦ »ý¼ºÇÏ´Â ¶Ç ´Ù¸¥ ¸î °¡Áö ¹æ¹ý¿¡ ´ëÇØ ¼Ò°³ µå¸®°Ú½À´Ï´Ù.
¡¡ |