이 글은 도움말을 번역한 글입니다.예제는 수정했습니다.
실행 문은 동작을 시작합니다. 메서드나 함수를 실행할 수 있으며 코드 블록을 반복하거나 분기할 수 있습니다. 실행 문에는 종종 수학 연산자 또는 조건부 연산자가 포함됩니다.
메서드 사용 예제
Sub SortData()
' Worksheet 변수를 선언하고 "Sheet1" 시트를 참조합니다.
Dim ws As Worksheet
Set ws = ThisWorkbook.Worksheets("Sheet1")
Dim sortRange As Range
Set sortRange = ws.Range("A1:F22")
' 오름차순으로 정렬합니다.
sortRange.Sort Key1:=ws.Range("A1"), Order1:=xlAscending, Header:=xlYes
' 정렬 완료 메시지를 출력합니다.
MsgBox "데이터가 오름차순으로 정렬되었습니다."
End Sub
사용자 정의 함수
Function AddNumbers(a As Double, b As Double) As Double
' 두 숫자를 더하는 함수
AddNumbers = a + b
End Function
Sub CallFunction()
' AddNumbers 함수를 실행하여 결과를 변수에 저장합니다.
Dim result As Double
result = AddNumbers(5.5, 3.2)
' 결과를 메시지 박스로 출력합니다.
MsgBox "결과: " & result
End Sub
For ~ Next
Sub RepeatBlock()
' 반복문을 사용하여 1부터 10까지의 숫자를 출력합니다.
Dim i As Integer
For i = 1 To 10
Debug.Print i
Next i
End Sub
For Each ~ Next
Sub PrintArrayValues()
' 배열에 저장된 값을 출력합니다.
Dim myArray(4) As Integer
myArray(0) = 10
myArray(1) = 20
myArray(2) = 30
myArray(3) = 40
myArray(4) = 50
Dim element As Variant
For Each element In myArray
Debug.Print element
Next element
End Sub
IF ~ Else
Sub CheckValue()
' 사용자로부터 입력 값을 받습니다.
Dim userInput As Integer
userInput = InputBox("숫자를 입력하세요:")
' 입력 값을 확인하여 메시지를 출력합니다.
If userInput > 0 Then
MsgBox "입력한 숫자는 양수입니다."
ElseIf userInput < 0 Then
MsgBox "입력한 숫자는 음수입니다."
Else
MsgBox "입력한 숫자는 0입니다."
End If
End Sub
Select Case
Sub CheckDayOfWeek()
' 사용자로부터 요일을 입력받습니다.
Dim userInput As String
userInput = InputBox("요일을 입력하세요:")
' 요일을 확인하여 작업을 수행합니다.
Select Case userInput
Case "월요일"
MsgBox "월요일에는 회의가 있습니다."
Case "화요일", "수요일", "목요일", "금요일"
MsgBox "주중에는 업무가 있습니다."
Case "토요일", "일요일"
MsgBox "주말에는 휴식일입니다."
Case Else
MsgBox "올바른 요일을 입력하세요."
End Select
End Sub
덧셈 연산
Sub AdditionExample()
Dim num1 As Double
Dim num2 As Double
Dim sum As Double
num1 = 10
num2 = 5
sum = num1 + num2
MsgBox "두 숫자의 합은 " & sum & "입니다."
End Sub
뺄셈 연산
Sub SubtractionExample()
Dim num1 As Double
Dim num2 As Double
Dim difference As Double
num1 = 15
num2 = 8
difference = num1 - num2
MsgBox "두 숫자의 차는 " & difference & "입니다."
End Sub
곱셈 연산
Sub MultiplicationExample()
Dim num1 As Double
Dim num2 As Double
Dim product As Double
num1 = 7
num2 = 4
product = num1 * num2
MsgBox "두 숫자의 곱은 " & product & "입니다."
End Sub
나눗셈 연산
Sub DivisionExample()
Dim num1 As Double
Dim num2 As Double
Dim result As Double
num1 = 20
num2 = 4
result = num1 / num2
MsgBox "두 숫자의 나눗셈 결과는 " & result & "입니다."
End Sub
나머지 연산
Sub ModulusExample()
Dim num1 As Integer
Dim num2 As Integer
Dim remainder As Integer
num1 = 13
num2 = 4
remainder = num1 Mod num2
MsgBox "첫 번째 숫자를 두 번째 숫자로 나눈 나머지는 " & remainder & "입니다."
End Sub
비교 연산자
Sub CompareNumbers()
Dim num1 As Double
Dim num2 As Double
' 사용자로부터 첫 번째 숫자 입력 받기
num1 = InputBox("첫 번째 숫자를 입력하세요.")
' 사용자로부터 두 번째 숫자 입력 받기
num2 = InputBox("두 번째 숫자를 입력하세요.")
' 두 숫자 비교하기
Dim resultMsg As String
If num1 = num2 Then
resultMsg = "두 숫자는 같습니다."
ElseIf num1 > num2 Then
resultMsg = "첫 번째 숫자가 두 번째 숫자보다 큽니다."
ElseIf num1 < num2 Then
resultMsg = "첫 번째 숫자가 두 번째 숫자보다 작습니다."
ElseIf num1 >= num2 Then
resultMsg = "첫 번째 숫자가 두 번째 숫자와 같거나 큽니다."
ElseIf num1 <= num2 Then
resultMsg = "첫 번째 숫자가 두 번째 숫자와 같거나 작습니다."
End If
' 결과 메시지 출력
MsgBox resultMsg
End Sub
논리 연산자
Sub CombineLogicalOperators()
Dim condition1 As Boolean
Dim condition2 As Boolean
Dim resultMsg As String
' 사용자로부터 첫 번째 조건 입력 받기
condition1 = CBool(InputBox("첫 번째 조건을 입력하세요. (True 또는 False)"))
' 사용자로부터 두 번째 조건 입력 받기
condition2 = CBool(InputBox("두 번째 조건을 입력하세요. (True 또는 False)"))
' 논리 연산자 조합하여 결과 판별하기
If condition1 And condition2 Then
resultMsg = "두 조건이 모두 참입니다."
ElseIf condition1 Or condition2 Then
resultMsg = "두 조건 중 하나 이상이 참입니다."
ElseIf Not condition1 And Not condition2 Then
resultMsg = "두 조건 모두 거짓입니다."
Else
resultMsg = "조건을 만족하는 경우가 없습니다."
End If
' 결과 메시지 출력
MsgBox resultMsg
End Sub
도움말 출처
Writing executable statements (VBA)
Office VBA reference topic
learn.microsoft.com
'언어 참조' 카테고리의 다른 글
선언문 작성 (0) | 2023.07.31 |
---|---|
Visual Basic 문 작성 (0) | 2023.07.31 |
이름 충돌 피하기 (0) | 2023.07.30 |
개체, 메서드, 속성 및 이벤트 이해 (0) | 2023.07.30 |
개체 변수 만들기 (0) | 2023.07.29 |