VBA Cells 함수 – Cells, Worksheet.Cells, Range.Cells

Written by

Mel Jenkins

Reviewed by

Steve Rynearson

Translated by

Younjung Kim

Last updated on 5월 8, 2023

이 튜토리얼에서는 VBA Cells 함수를 사용하는 방법을 설명합니다.

VBA 셀 함수를 사용하면 두 가지 작업을 수행할 수 있습니다:

  1. 워크시트의 모든 셀 참조
  2. 특정 셀 참조

Cells 함수는 Range 객체와 유사합니다.

VBA – Cells 구문

Cells 함수의 기본적인 구문은 다음과 같습니다:

cells syntax

이러한 유형의 구문은 Excel VBA에서 Range 객체를 사용할 때 사용되는 A1 구문(열 문자+행 번호)과 반대되는 개념으로  R1C1 구문이라고합니다.

따라서 C4셀을 선택하려면 다음 코드를 입력하면 됩니다:

Cells(3, 4).Select

위 코드를 실행하면 Excel 포인터가 워크시트의 C4셀로 이동합니다.

Cells 함수를 사용하여 특정 셀에 텍스트를 채운 다음 셀의 서식을 지정하려면 아래 예제와 같은 코드를 작성하면 됩니다:

Sub PopulateCell()
   Cells(2, 2) = "Sales Analysis for 2022"
   Cells(2, 2).Font.Bold = True
   Cells(2, 2).Font.Name = "Arial"
   Cells(2, 2).Font.Size = 12
End Sub

이렇게 하면 B2 셀에 텍스트가 채워지고 셀 서식이 지정됩니다.

Worksheet.Cells

Cells 함수를 사용하여 전체 워크시트를 선택하려는 경우 다음 코드를 사용해야 합니다:

Worksheets("Sheet1").Cells.Select

위 코드를 실행하면 키보드에서 CTRL + A를 누르는 것과 같은 방식으로 Sheet1의 모든 셀이 선택됩니다.

Range.Cells

Cells 함수를 사용하여 셀 범위 내에서 특정 셀을 참조할 수도 있습니다.

Range("A5:B10").Cells(2, 2).Select

이 경우 B6셀이 해당 범위(A5:B10)의 두 번째 행과 두 번째 열에 위치해 있으므로  B6셀을 참조합니다.

Cells 함수를 사용하여 범위 반복하기

이제 Cells 함수에 대해 어느정도 이해했으므로 VBA 반복문에서 Cells 함수를 응용하는 몇 가지 예제를 살펴보겠습니다.

예를 들어 셀의 값에 따라 셀 범위의 서식을 지정하려는 경우 Cells 함수를 사용하여 범위를 반복하여 서식을 지정 할 수 있습니다.

Sub FormatCells()
   Dim x As Integer
   For x = 1 To 10
      If Cells(x, 1) > 5 Then
         Cells(x, 1).Interior.Color = vbRed
      End If
   Next x
End Sub

이 코드는 A1셀에서 시작하여 A10셀까지 반복하면서 셀의 값이 5보다 크면 배경색을 빨간색으로 변경합니다.

한 단계 더 나아가 행뿐만 아니라 열까지 반복하려면 기존 반복문에 루프를 하나 더 추가하여 행과 열을 모두 반복할 수 있습니다.

Sub FormatCells()
   Dim x As Integer
   Dim y As Integer
   For x = 1 To 10
      For y = 1 To 5
         If Cells(x, y) > 5 Then
            Cells(x, y).Interior.Color = vbRed
         End If
      Next y
   Next x
End Sub

이제 루프는 A5셀에서 시작해서 E10셀까지 반복합니다.

Cells 함수를 사용하여 특정 범위의 셀을 반복할 수도 있습니다.

Sub LoopThrouRange()
   Dim rng As Range
   Dim x As Integer
   Dim y As Integer
   Set rng = Range("B2:D8")
   For x = 1 To 7
      For y = 1 To 3
         If rng.Cells(x, y) > 5 Then
            rng.Cells(x, y).Interior.Color = vbRed
         End If
      Next y
   Next x
End Sub

이 루프는 B2:D8 범위 내부의 행과 열을 반복합니다. Cells 함수에 범위가 제공되면 Cells 함수는 전체 워크시트가 아닌 해당 범위 내에서만 작동합니다.

vba-free-addin

VBA 코드 예시 추가 기능

본 웹사이트에 있는 모든 코드 예시에 쉽게 접근해보세요.

메뉴로 이동하여 클릭만 하면 코드는 모듈에 바로 입력됩니다. .xlam 추가 기능.

(설치가 필요 없습니다!)

무료 다운로드

VBA 코드 예시로 돌아가기