Visual Basic for Applications

덤프버전 :


파일:다른 뜻 아이콘.svg
은(는) 여기로 연결됩니다.
GBA 에뮬레이터에 대한 내용은 VisualBoyAdvance 문서
VisualBoyAdvance번 문단을
VisualBoyAdvance# 부분을
, {{{#!html }}}에 대한 내용은 문서
#s-번 문단을
#s-번 문단을
# 부분을
# 부분을
, {{{#!html }}}에 대한 내용은 문서
#s-번 문단을
#s-번 문단을
# 부분을
# 부분을
, {{{#!html }}}에 대한 내용은 문서
#s-번 문단을
#s-번 문단을
# 부분을
# 부분을
, {{{#!html }}}에 대한 내용은 문서
#s-번 문단을
#s-번 문단을
# 부분을
# 부분을
, {{{#!html }}}에 대한 내용은 문서
#s-번 문단을
#s-번 문단을
# 부분을
# 부분을
, {{{#!html }}}에 대한 내용은 문서
#s-번 문단을
#s-번 문단을
# 부분을
# 부분을
, {{{#!html }}}에 대한 내용은 문서
#s-번 문단을
#s-번 문단을
# 부분을
# 부분을
, {{{#!html }}}에 대한 내용은 문서
#s-번 문단을
#s-번 문단을
# 부분을
# 부분을
, {{{#!html }}}에 대한 내용은 문서
#s-번 문단을
#s-번 문단을
# 부분을
# 부분을
참고하십시오.




파일:다른 뜻 아이콘.svg
은(는) 여기로 연결됩니다.
일본의 연예기획사 LDH에서 주최하는 오디션인 VOCAL BATTLE AUDITION에 대한 내용은 EXILE TRIBE 문서
EXILE TRIBE번 문단을
EXILE TRIBE# 부분을
, {{{#!html }}}에 대한 내용은 문서
#s-번 문단을
#s-번 문단을
# 부분을
# 부분을
, {{{#!html }}}에 대한 내용은 문서
#s-번 문단을
#s-번 문단을
# 부분을
# 부분을
, {{{#!html }}}에 대한 내용은 문서
#s-번 문단을
#s-번 문단을
# 부분을
# 부분을
, {{{#!html }}}에 대한 내용은 문서
#s-번 문단을
#s-번 문단을
# 부분을
# 부분을
, {{{#!html }}}에 대한 내용은 문서
#s-번 문단을
#s-번 문단을
# 부분을
# 부분을
, {{{#!html }}}에 대한 내용은 문서
#s-번 문단을
#s-번 문단을
# 부분을
# 부분을
, {{{#!html }}}에 대한 내용은 문서
#s-번 문단을
#s-번 문단을
# 부분을
# 부분을
, {{{#!html }}}에 대한 내용은 문서
#s-번 문단을
#s-번 문단을
# 부분을
# 부분을
, {{{#!html }}}에 대한 내용은 문서
#s-번 문단을
#s-번 문단을
# 부분을
# 부분을
참고하십시오.




파일:Microsoft 로고.svg

[ 펼치기 · 접기 ]

||<-2><tablebgcolor=#FFFFFF,#1F2023><bgcolor=#888888,#2D2F34><tablewidth=100%> 산하 계열사 및 사업부 ||
||<-2><width=100%> GitHub · .NET Foundation · Xbox Game Studios · LinkedIn ||
||<-2><bgcolor=#888888,#2D2F34><width=100%> 제품군 ||
||<bgcolor=#888888,#2D2F34><width=15%> 하드웨어 ||Surface · Xbox · HoloLens · PixelSense · Zune ||
||<bgcolor=#888888,#2D2F34> 소프트웨어 ||Windows · Office · Edge · Hyper-V · MS-DOS · Groove 음악 · Microsoft Defender · Visual Studio Code · Visual Studio · Windows Terminal · Microsoft PowerToys · Internet Explorer · Windows Media Player · Windows Movie Maker ||
||<bgcolor=#888888,#2D2F34> 서비스 ||Microsoft Azure · OneDrive · Skype · MSN · Bing · LinkedIn · 코타나 · 테이 · Xbox Live · 정품 인증 · MSDN ||
||<bgcolor=#888888,#2D2F34> 관련 기술 ||Windows 커널 · Windows 디자인 · ASF · 블레이저 · DirectX · FAT · NTFS · ReFS · MFC · .NET · COM · DCOM · OLE · ActiveX · ASP · Universal Windows Platform · WASAPI · WMA · WMV · Windows API · Windows Runtime · Xamarin · XNA · Silverlight ||
||<-2><bgcolor=#888888,#2D2F34><width=100%> 관련 인물 ||
||<-2><width=100%> 빌 게이츠(은퇴) · 폴 앨런(은퇴) · 스티브 발머(퇴사) · 게이브 뉴웰(퇴사) · 사티아 나델라 · 필 스펜서 ||




프로그래밍 사이트 선정 프로그래밍 언어 순위 목록

⠀[ IEEE Spectrum 2021 ]⠀
{{{#!wiki style="display: inline-block; margin: 0 0 -5px; min-width: 25%"
⠀[ Stack Overflow 2022 ]⠀
{{{#!wiki style="display: inline-block; margin: 0 0 -5px; min-width: 25%">
⠀[ TIOBE 2023 ]⠀

프로그래밍 언어 목록 · 분류 · 문법


파일:vba-실행-화면.png
파일:Visual Basic for Applications 로고.svg

1. 개요
2. 사용 프로그램
3. 문제점
4. 기타


1. 개요[편집]


Microsoft Office에 내장돼 있는 프로그래밍 언어. 주 용도는 매크로를 돌리고 사용자 정의 함수를 사용하는 것. 마이크로소프트의 비주얼 베이직 6.0에서 시작된 언어로, 문법이 같다는 것을 보면 쉽게 알 수 있다. 6.0에서 만들어졌기 때문에 Visual Basic .NET에는 호환되지 않는다. 마이크로소프트가 .NET으로 넘어가라고 권장하고 있는데도 아직도 6.0이 생명력을 유지하는 이유도 이 때문이다.

컴퓨터활용능력/1급의 최종 보스.


2. 사용 프로그램[편집]


주로 Microsoft Excel에서 많이 사용되기 때문에 엑셀 전용으로 오해를 많이 받는다. 하지만 액세스, 워드 등의 응용 프로그램에서도 사용할 수 있다. 워드는 매크로 기능을 사용할 일이 없고, 파워포인트는 파워포인트 아트를 하는 사람만 사용하고, 액세스는 기본 기능부터가 강력한 탓에 굳이 VBA를 쓸 필요가 거의 없기 때문에 이러한 인식이 생기게 됐다고 볼 수 있다.


2.1. Microsoft Access[편집]


원래 VBA는 액세스를 위해 만들어졌다. 데이터베이스 프로그램인 액세스를 떠받치는 SQL 구문이 바로 프로시저이기 때문이다. 그래서 액세스에서는 프로시저 프로그래밍을 열심히 해야 한다.

컴퓨터활용능력 1급의 꽃이다. 액세스 분야에서는 전체 점수의 45점이 프로시저 작성과 관련이 있으므로 이걸 못하면 탈락 가능성이 매우 높다.[1]


2.2. Microsoft Excel[편집]


엑셀은 분명 문서작성용이지만 한국에서는 다양한 일로 굴려지고 있다. 특히, 쓰라는 액세스는 안 쓰고 엑셀로 데이터베이스를 관리하는 경우가 왕왕 있는데 VBA는 이런 일을 가능하게 하도록 돕는 역할을 한다. 혹은 수식을 사용해서 해결하기 어려운 문제를 한 번에 해결해주는 해결사 역할을 맡기도 한다. UDF(User defined function)등의 사용자 정의 함수를 만들어 낼 수도 있다. 기능경시대회(정보기술)에서 이 VBA의 많은 부분을 활용하여 과제를 푼다.

컴퓨터활용능력 1급에서 VBA 프로시저 작성이 25점을 차지한다. 한국에서 액셀을 데이터베이스용 프로그램으로 쓰는 몹쓸 기업들이 많다 보니 대한상공회의소에서도 현실반영을 한 셈이다. 이거 못 하면 낙방할 가능성이 높다.[2]


2.3. Microsoft PowerPoint[편집]


쓰는 곳이 거의 매크로밖에 없다시피 하고 그 매크로마저도 쓸 일이 거의 없는 파워포인트에서도 쓰는 사람이 있는데, 다름아닌 게임 제작용이다. VBA의 기능이 워낙 강력한터라 충분히 UI 제작도 가능해서 게임, OS 시뮬레이터 등등 다양한 방면으로 굴려지고 있다. 자세한 내용은 파워포인트 아트 문서를 참조.

굳이 사용처를 찾자면, 숨기기한 슬라이드가 있을 때, 당연히 숨기지 않은 슬라이드의 슬라이드 번호가 건너뛰어지게 된다. 예를 들어 1, 2, 3, 4, 5 다섯장의 슬라이드가 있을 때, 3번 슬라이드를 숨기기하면 슬라이드쇼 또는 인쇄한 슬라이드에는 1, 2, 4, 5의 순으로 번호가 매겨진다. 그러나 VBA를 이용하여 코딩을 해주면, 이런 경우에도 번호가 1, 2, 3, 4 순으로 나오게 할 수 있다.


3. 문제점[편집]


앞서 말한 '매크로용이라고 보기 힘들 정도의 강력함'으로 인한 문제 또한 있다. 흔히 매크로 바이러스라고 부르는 존재가 바로 VBA로 만든 바이러스이다. VBA를 구동하기 위해서 윈도의 다양한 라이브러리를 참조할 수 있게 해놨기 때문에 역으로 보안성이 취약해진 것이다. 덕분에 최신 MS 오피스로 넘어올수록 점차 VBA가 자동으로 돌아가는 것을 막기 위해서 봉인하고 있다. 2003 버전은 기본 설정을 비활성화로 해두어 별도로 실행하게 하였고, 2007부터는 포맷을 대격변하면서 VBA를 별도의 파일(*.xlsm, *.pptm, *.ppsm 등)로 분리시켜놓았다.

2019년 Stack Overflow 개발자 설문조사 결과 건드리기 무서운(Dreadful Language) 언어로 꼽혔다. 2위는 Objective-C. 이와 관련하여 VBA가 까이는 이유를 언어 자체보다 VBA 코드 개발창의 구식을 문제삼기도 했다. 링크 비주얼 스튜디오가 그리워진다


4. 기타[편집]


VBA를 이용해서 단순한 반복 작업을 하는 것에 만족하지 않고 잉여력(?)을 발휘하여, 게임 등을 만드는 시도가 있다.
(아래는 그 사이트들 중 일부)

파일:크리에이티브 커먼즈 라이선스__CC.png 이 문서의 내용 중 전체 또는 일부는 2023-11-04 22:55:55에 나무위키 Visual Basic for Applications 문서에서 가져왔습니다.

[1] 액셀에서 배열수식이 주적이라면 액세스에서는 VBA가 주적에 가깝다. 사실 구문의 난이도가 특별히 높은 건 아니지만 &과 “,’의 사용이 까다롭기 때문이다.[2] 사람에 따라 계산작업 문제보다는 VBA를 더 쉽게 느낄 수도 있다.