Just Fighting

[Excel] 매크로 만들기 (VBA 사용하기) 본문

ETC

[Excel] 매크로 만들기 (VBA 사용하기)

yennle 2022. 1. 24. 19:10
728x90

컴활을 딴 이후로 손도 안 대던 VBA이다.

친구가 도와달래서 열심히 구글링해서 예전의 감각을 떠올렸다,,ㅋㅋㅋㅋㅋ

심지어 컴활할 때는 사용자 지정 함수만 만들어봤고, 매크로는 안만들어봤지만,,,,,

그래도 구글링 열심히 해보니까 비슷한거 같아서 나름 수월하게 할 수 있었다.

오늘 한 것을 여기에 정리해보려 한다.

그냥 여기저기서 본거 야매로 한거라 정확하지 않을 수 있음!

 

 

 

먼저 VBA를 사용하기 위해선 '개발도구'가 밖에 보이도록 설정해주어야 한다.

'옵션 - 리본 사용자 지정'에 들어가 개발도구를 체크해준다.

 

 

 

개발도구 탭을 누르면 맨 왼쪽 'Visual Basic'을 누르면 두번째 사진과 같은 창이 하나 뜬다.

 

삽입 메뉴에서 모듈을 눌르면 창이 하나 뜬다.

이러면 준비가 끝난 것이다!

 

 

 

 

<셀에 출력하기>

Sub 매크로연습1()
    'A1셀에 '매크로 연습1'을 출력해보자
    Range("A1").Value = "매크로 연습1"
End Sub

 

Sub 매크로연습2()
    'Sheet2의 A1에 '매크로 연습1'을 출력해보자
    Sheets(2).Range("A1").Value = "매크로 연습2"
End Sub

 

Sub 매크로연습3()
    행 = 3
    열 = 1

    '셀 선택하기
    Cells(행, 열).Select

    '셀에 내용 추가하기
    Selection.Value = "매크로 연습3"
    
End Sub

 

Sub 매크로연습4()
    'A1:A3에 '매크로 연습1'을 출력해보자
    Range("A1:A3").Value = "매크로 연습4"
End Sub

 

Sub 매크로연습5()
    'A1에 있는 셀 B5에 출력하기
    Range("B5").Value = Range("A1").Value
End Sub

 

 

 

<엑셀 함수 사용하기>

Sub 매크로연습6()
    'A1:A5의 값 더해서 C6에 출력
    Range("C6").Value = WorksheetFunction.Sum(Range("A1:A5"))
End Sub

 

 

 

<for문 사용하기>

Sub 매크로연습7()
    'A1:A5의 값에 자연로그를 취해 C1:C5에 출력
    For i = 1 To 5
        Range("C" & i).Value = WorksheetFunction.Ln(Range("A" & i))
    Next
End Sub

 

 

 

 

<변수 사용하기>

Sub 매크로연습8()
    'Range값 변수에 할당하기
    Dim Arr
    Arr = Range("A1:A5")
    Range("C1").Value = WorksheetFunction.Sum(Arr)
End Sub
Sub 매크로연습8()
    'Range값 변수에 할당하기
    '함수 안에 Range를 넣을 땐 이 경우가 오류가 안났음
    Dim Arr As Range
    Set Arr = Range("A1:A5")
    Range("C1").Value = WorksheetFunction.Sum(Arr)
End Sub

 

Sub 매크로연습9()
    '변수 생성 & 할당
    Dim arr(4)
    
    For i = 1 To 4
        arr(i - 1) = Range("A" & i).Value
    Next
    
    Range("C1").Value = WorksheetFunction.Average(arr)
    Range("C2").Value = arr(3)
    
End Sub

 

Sub 매크로연습10()
    '변수 생성 & 할당
    a = "안녕하세요"
    Range("B2").Value = a
End Sub

728x90

'ETC' 카테고리의 다른 글

[Git] 브랜치 만들기  (0) 2022.06.08
[Git] 로컬 저장소 GitHub에 연동 & 커밋하기  (0) 2022.03.26
Comments