Develop Ref/Language Info

[VB] VB기초와 사용되는 모든 함수

Hugh J 2017. 3. 23. 10:54

★ 비주얼 베이직 기초강의 제 1탄(1-10) ★
1) 비베프로젝트 제작 순서
 작업설계 ☞ 화면디자인 ☞ 코딩 ☞ 디버그 ☞ 컴파일 ☞ 실행파일작성
 (무엇을 어떻게 할 것인지 확실하고 구체적인 계획을 세운 후 화면디자인은 연필로 간단히 스케치한 후 
프로그램 코딩에 들어간다. 반복되는 부분은 프로시저로 간단히하며 주석을 꼭 삽입하여 나중에 프로젝트 
분석에 도움이 되도록 한다.)
2) 코딩하는 방법론
 lbldate.의 .을 입력하고 c를 입력하면 메뉴가 나오는데 선택한 후 Tab키를 누르면 전체가 
나온다.
 속정값의 설정은 개체명.속성명 = 설정값(예 : IblDate.Caption = "날짜와 시간")
 (코딩할 때 개체명을 입력한 후 점을 누르면 속성메뉴가 나오는데 나오지 않는 경우는 그 해당개체가 
존재하는지 확인해야 하며 더불클릭을 하거나 Tab키를 누르면 메뉴가 확정된 후 커서가 옆으로 
이어진다.)
3) 간단한 함수를 레이블에 표시
 Ibldate.Caption = Date (날짜를 나타냄)
 Ibltime.Caption = Time (시간을 나타냄)
4) 폼의 이벤트 설명
 Activate (폼이 액티브가 되었을 때 실행하는 처리를 기술한다.)
 Initialize (가장 처음에 실행할 처리를 기술한다.(보통은 초기화 처리))
 Resize (폼의 크기가 바뀌었을 때에 실행할 처리를 기술한다.) 
 Unload (폼을 닫기 직전에 실행할 처리를 기술한다.)
5)타이머에 관하여
 타이머(Timer)컨트롤의 Interval이라는 속성은 지정한 시간 간격으로 값을 지정(1000값이 
1초)
 (타이머 컨트롤을 폼에 배치한 후 Interval 속성에 숫자를 넣은 후(10정도) 더블클릭하여 
코딩준비를 하고 Label1.Caption = Time를 입력하면 간단히 디지털 시계가 만들어 
집니다.)
6)속성설정에 관하여
 Label속성 ☞ 개체명.AutoSize =True/False (표시하는 내용에 따라개체의 
크기를 자동으로 조정표시)
Label속성 ☞ 개체명.BorderStyle=0/1(0을 지정하면 경계선 없이 1을 지정하면 
움푹패인 경계선을 표시) 
Alignment 속성(레이블에서 자료의 위치지정 0(왼쪽맞춤) , 1(오른쪽맞춤), 2(가운데맞춤) 

개체명.Visible = True/False (개체를 화면에 표시할지 숨길지를 지정) 
개체명.Font.Name = 문자열 (문자의 글꼴명을 지정) 개체명.Font.Size = 숫자 
(문자의 크기를 지정)
7) 프레임 사용시 주의할 점
 프레임을 사용할 경우는 프레임을 폼위에 첨부한 후 그 뒤에 프레임 속에 넣을 컨트롤을 첨부한다.
(폼에 먼저 컨트롤을 배치한 후 프레임을 그 위에 첨부하면 프레임에 종속되는 컨트롤이 되지 않는다.)
8)키보드로 해당포커스로 이동하기
 엑세스키 ☞ Caption = 단가(&P)에서 &뒤에 표시한 내용은 실행시 Alt키를 누르고
뒷표시를 누르면 해당 컨트롤로 포커스가 이동한다.(Label은 포커스를 갖지 못하므로 바로 다음의 
텍스트 박스에 포커스가 이동됨으로써 바로 원하는 자료 입력이 가능합니다.)
9) 자동한영모드 설정
IMEMode속성 - 한글(10),영문(8)으로 자동입력속성설정
 (한글이 입력될 텍스트 박스에 한/영키를 누르지 않고 한글을 적용하려면 디자인할 때 
IMEMode속성을 한글(10)을 선택하여 놓으면 바로 전 텍스트가 영어로 설정되어있더라도 적용된 
텍스트박스에 오면 저절로 한글모드로 바뀐다. 영어도 똑같이 설정하면 된다.)
10) 컨트롤에 알아보기 쉽게 이름붙히기

폼(frm),체크박스(chk),콤보박스(cbo),커맨드버튼(cmd),데이터(dat),디렉터리리스트박스(dir),드라이브리스트박스(drv),파일리스트박스(fil),프레임(fra),OLE컨테이너(ole),이미지(img),레이블(Ibl),라인(lin),리스트박스(lst),메뉴(mnu),옵션버튼(opt),픽쳐박스(pic),셰이프(shp),텍스트박스(txt),타이머(tmr)
(예를 들어 수량을 입력받을 텍스트박스라면 [Txt수량]이라고 이름을 부여하면 해당 컨트롤이 
텍스트박스인지 알 수 있으며 수량이라는 데이터를 받을 것이라는 것을 암시할 수 있다.)
★ 비주얼 베이직 기초강의 제 2탄(11-20) ★
11) 속성설정에 관한 이야기
탭인텍스란 Tab 키를 눌렀을때의 순서를 의미 TabIndex속성에서 일련번호로 탭인덱스 할당
 (컨트롤들을 순서대로 만들었을 경우는 텍스트 박스의 포커스를 옮길 때 Tab키를 누르면 자동으로 
다음 텍스트 박스로 이동하지만 순서가 뒤바뀌어 만들면 포커스가 제멋대로 이동한다. 이때는 속성란의 
Tab Index속성에서 일련번호를 차례차례 부여하면 순서대로 포커스가 이동된다.)
12) 메모형식처럼 힌트보여주기
 툴힌트(ToolTipText)속성 ☞ 마우스포인터를 가져가면 메모형식으로 힌트를 보여주는 것
(속성중에 ToolTipText속성은 우리가 프로그램상에서 도구들에 마우스를 갖다대면 노란글씨로 잠시 
보여주는 힌트를 말하는 것입니다. 예를 들어 윈도우 시작메뉴에 마우스를 갖다대면 '시작하려면 이곳을 
누르십시오' 하고 잠시 보였다가마우스를 다른곳으로 이동하면 사라지는 기능과 같습니다.)
13) 폼에 배치한 컨트롤들을 맞추기
 컨트롤의 배치를 맞추려면 Ctrl 키를 누르면서 컨트롤을 선택하고나서 메뉴의 형식에서 맞춤을 
누른다.
 (물론 Shift키를 누르면서 하거나 마우스로 해당컨트롤들을 드래그한후 메뉴에서 형식을 선택해도 
되며 선택된 컨트롤 중 테두리가 적색인 것을 기준으로 맞추어 준다.)
컨트롤의 크기를 맞추려면 Ctrl 키를 누르면서 컨트롤을 선택하고나서 메뉴의 형식에서 같은크기를 
누른다.(물론 Shift키를 누르면서 하거나 마우스로 해당컨트롤들을 드래그한후 메뉴에서 형식을 
선택해도 되며 선택된 컨트롤 중 테두리가 적색인 것을 기준으로 크기가 같아진다.)
14) 컨트롤들의 값을 이동
텍스트박스의 값을 취득하려면 IblDanga.Caption = txtDanga.Text 
 (텍스트박스의 값을 레이블에서 취득하는 경우이며 다른 컨트롤들도 개체명.속성=개체명.속성을 지정하면 
해당 개체에 값을 다른 개체에서 취득하게 된다.)
15) 사칙연산 이외에 기타 알아두어야 할 연산자
 연산자 ☞ \ (정수의 나눗셈), MOD(정수 나눗셈의 나머지), ^(제곱)
 (예를 들어 25 MOD 3을 하면 결과는 나머지값인 1이 된다.)
16) 변환 함수에 대하여
Val(문자열형을 숫자형으로 변환) , Str$(숫자형을 문자열형으로 변환)
(예를 들어 Iblsei.Caption = Val(txtsogyei.Text) * 0.03와 같이 
하여 텍스트박스에 있는 자료를 수치로 변환시켜 주어 우측에 있는 수치값과 곱셈연산을 할 수 있다.)
17) 숫자의 데이터 표시형식
 숫자의 표시형식 변경 Format(데이타,표시형식) 예) lblsei.Caption = 
Format(Iblsei.Caption,"#,##0")
 (수치데이타 중 금액을 나타내는 데이터에 세자리 마다 콤마를 삽입하려면 ###,###으로 표시형식을 
구성하며 연산후 소수자리수를 지정하여 출력하려면 ###.##하면 소수이하 두자리까지만 출력된다.)
18) 포커스 이동방법
 지정한 개체로 포커스를 옮기는 명령 ☞ 개체명.SetFocus
 (명령코드로 개체명.SetFocus를 주면 해당하는 곳으로 포커스가 직접이동된다.)
19) 픽쳐박스에 그림그리기
 개체명.Line ☞ 지정한 개체에 선이나 사각형을 
그린다.(Line(x1,y1)-(x2,y2),[선색],B)
 (Picture1.Line (1500,500) - (5000,2000) ☞ 대각선이 그려집니다.)
 (Picture1.Line (1500,1000) - (5000,2000), , B ☞ 직사각형이 
그려집니다.(B를 사용하면 사각형))
 개체명.Circle ☞ 지정한 개체에 원이나 타원을 
그린다.(Circle(x,y),반지름,[색,시작,끝,옵션]
 (Picture1.Circle (1500,1800), 900, , , , 0.7 ☞ 타원을 
그립니다.(0.7은 가로,세로 비율값을 설정))
 (Picture1.Circle (1500,18000), 900 ☞ 원을 그립니다.)
 개체명.Cls ☞ 그린선이나 원 등을 삭제한다.
20) 폼에 대한 메서드
개체명.Show ☞ 지정한 개체명의 폼을 화면에 표시한다.(해당폼에서 다른 폼으로 폼 이동시 사용)
개체명.Hide ☞ 지정한 개체명의 폼을 일시적으로 숨긴다.(상대폼을 호출하고 자신의 폼을 숨길시 
사용)
★ 비주얼 베이직 기초강의 제3탄(21-30) ★
21) 명령문을 구분하는 방법
 : 는 여러개의 명령문을 한줄에 기술(짧은 명령문을 한줄에 여러개 기술할 때 이용합니다.)
 _ 는 한 개의명령문을 여러행으로 나눌 때 사용한다.(긴 명령문을 여러줄에 걸쳐 기술할 때 사용)
22) 주석표시방법
 프로그램 기술 중 '를 표시하면 주석(좋은 프로그래머가 되기 위해서는 주석을 꼭 달아두는 습관을 
가진다. 그래야만 다음에 프로그램을 볼 때 분석하기가 쉽기 때문)
23) 변수선언 방법의 하나
 목록의 일반부분의 선언영역명령에서 Option Explicit 는 변수의 선언을 강제로 한다.
 (이 선언명령을 이용하면 엉뚱한 변수의 출현시 에러가 발생하므로써 변수관리를 철저히 할 수 있다.)
24) 데이터형 지정방법
 Dim 변수명 As 데이터형 (데이터형 : 
Integer(정수형(2바이트)),Long(배장정수형(4)),Single(단정도실수형(4)),Double(배정도실수형(8)),Currency(통화형(8)) 
String(문자형))
(Boolean는 True와 False 값을 지정 Variant는 어떠한 데이터라도 가능(메모리소비 
16바이트))
 Date(현재의 날짜를 날짜형 데이터로), Year(날짜형데이터)
 (예:Year(Date)- 현재의 날짜에서 연도(100~9999의정수)를 추출)
 Time(현재의 시각을 날짜형 데이터로),Second(날짜형데이터) 
 (예:Second (Time) -현재의 시각에서 초(0~59의 정수)를 추출)
25) Msgbox등에 나타나는 메시지의 줄바꿈
 vbCrLf란 캐리지리턴을 의미하는 chr(13)과 라인피드를 의미하는 chr(10)를 조합한 내장 
상수
 (예) Msgbox "안녕하세요" & vbCrLf & "최원철입니다" ☞ 메시지박스의 내용이 두줄로 
나타남)

26) 기타 데이터형
 Boolean는 True와 False 값을 지정 ☞ (주로 IF문의 플래그로 스위치 처리시 
사용합니다.)
 Variant는 어떠한 데이터라도 가능(메모리소비 16바이트) ☞ (숫자,문자 모두 받을수 있지만 
메모리 소비가 많고 보통 변수 선언을 하지 않으면 Variant로 인식하여 프로그램이 처리됩니다.)
27) 상수 선언
 Const Sobiyeul = 0.03 (상수를 선언) - 날짜형 데이터를 지정하는 경우는 #를 
양쪽에 붙인다.
 (상수로 값을 선언하면 프로그램내에서 변수의 값을 바꾸려고 하면 에러가 발생하여 처음 선언된 값을 
그대로 유지하여 사용할 경우에 이용합니다.)
28) 프로시저
 Sub 프로시저(제너럴 프로시저)는 여러 곳에서 공통적으로 사용할 수 있으므로, 같은 코드를 
중복하여 기술하지 않아도 된다는 이점. 이벤트 프로시저 중간에 프로시저명만 기술하면 된다.
 Function 프로시저가 Sub 프로시저와의 차이점은 값을 반환한다는 점이다. (예) 
Function Roung(tep))
 프로젝트안의 특정모듈에서만 한정하여 사용하는 경우 ☞ (Private Sub 프로시저명())
 프로젝트안의 모든 모듈에 사용하는 경우 ☞ (Public Sub 프로시저명())
29) 동일한 개체를 요약하여 표현하는 방법
 With 개체명예)With IblDate
 .속성명 =값 .Caption = "날짜와 시간"
 .속성명 =값 .Font.Size = 20
 End WithEnd With
30) 특정한 변수의 범위에 의한 처리
 Select Case 변수명 
Case 범위1
내용 ☞ 지정한 변수명이 범위1내에 해당될때 처리되는 내용
Case 범위2
내용 ☞ 지정한 변수명이 범위2내에 해당될때 처리되는 내용
Case Else 
내용 ☞ 모든 범위에 해당되지 않았을때에 처리되는 내용
End Select 
★ 비주얼 베이직 기초강의 제4탄(31-40) ★
31) 컨트롤 배열
 같은 이름을 가진 배열은 컨트롤배열이 되어 Index속성에서 표시
 (텍스트박스를 폼에 배치하고 나서 복사를 하고 붙혀넣기를 수행하면 컨트롤 배열을 선언할 것인가를 
묻는 박스에 [예]를 선언하면 컨트롤배열이 만들어지면 같은 이름으로 컨트롤이 생긴다. 이러한 방법을 
사용하면 반복문을 이용하여 여러 컨트롤을 한꺼번에 비교하여 물을 수 있는 방법이 생긴다.)
32) 옵션버튼과 체크박스
옵션버튼의 조작은 개체명.Value = True (On인 상태) ☞ (한가지만 선택할 수 있다.)
체크박스의 조작은 개체명.Value = True (On인 상태) ☞ (선택/취소를 할 수 있으며 다중 
선택이 가능.)
33) Do문의 처리방법
Do While 조건식(True인 경우에 반복한다.)Do Until 조건식(False인 
경우에 반복한다.)
반복처리하는 문장 반복처리하는 
문장
Loop 
Loop
34) 코드부문에서 중간 탈출방법
 비교문장의 중간에 Sub를 탈출하려면 ☞ (Exit Sub)
 For - Next 문장중간에 탈출하려면 ☞ (Exit For)
35) 창의 상태 취득
 폼의개체명.WindowsState = 0(보통상태),1(창의 최소화),2(창의 최대화)
 (프로그램 실행시 항상 창이 화면에 가득차게 하려면 WindowState에서 2를 선택한다.)
36) 도형툴과 라인툴
 툴의 shape ☞ 도형을 그리는 툴 
 (shape속성에서 사각형,정사각형, 타원,원 ..등을 선택하여 나타낼 수 있다.)
 툴의 Line ☞ 직선을 그리는 경우
 (X1,X2,Y1,Y2 등의 속성을 이용하여 길이와 각도를 나타낼 수 있다.)
37) 컨트롤의 위치 정확히 맞추기
 좌표의 의미 Left(왼쪽끝의 위치) Top(윗쪽끝의 위치) Width(폭) Height(높이)
 (위와 같은 속성을 잘 이용하여 컨트롤들의 위치와 크기를 프로그램에서 조정할 수 있다.
38) 길이가 변하는 박스 만들기
 shpScale.Width=shpBox.Width/60 * Second(Time) ☞ 
두박스를 같은 위치를 배치해야 함
(길이가 변하는 박스)(길이가 고정된 박스) 
(고정된박스의 60분의 1만큼에 현재초를곱하여 길이가 변하는 박스의 크기를 만듬)
39) 프로그램에서 칼라 부여
 QBColor(숫자 0-15) ☞ (0(검정) , 1(청색) , 2(녹색) , 3(하늘색) , 
4(빨간색) , 5(검빨강) , 6(노란색) 7(흰색) , 8(회색) 등 
 RGB(빨,녹,청) ☞ (RGB(0,0,0) 검정 RGB(255,0,0) 빨강 
RGB(0,255,0) 녹색 RGB(0,0,255) 청색)
40) 폼에 배경을 부여
 폼의 배후에 화상을 첨부하려면 속성창의 Picture를 클릭한다.
 (폼의 속성 중 Picture속성에서 그림을 선택하면 폼의 배경이 된다.)
★ 비주얼 베이직 기초강의 제5탄(41-50) ★
41) 폼에 인쇄하는 법
 폼에 문자를 표시 Print "해당문자" ☞ form1.show를 먼저 기술하고 Print문 기술
 (Current X와 Current Y의 속성을 사용하면 문자의 표시위치 좌표)
Form1.PrintForm 폼의 타이틀바는 표시되지 않지만 그것 이외의 것은 모두 인쇄된다.
(문자를 단독으로 인쇄하려면 Printer.Print txtMemo.Text 
Printer.EndDoc(마지막행에 추가))
42) 파일의 입출력
 Open 파일명 For Input As #파일번호 ☞ (파일을 연다음(파일을 읽어들임))
 Input #파일번호, 변수명 ☞ (이것을 변수에 저장)
 Close # 파일번호 ☞ (파일을 종료)
 Open 파일명 For Output(Append) As #파일번호 ☞ (파일을 연다음(데이터를 
입력하여 저장))
 Write #파일번호, 데이터1,데이터2,... ☞ (이것을 입력한 것을 저장)
 Close # 파일번호 ☞ (파일을 종료 (Append는 추가저장))
43) 드라이브와 파일의 연동
 드라이브의 연동 ☞ (Dir1.Path = Drive1.Drive) 
 파일의 연동 ☞ (File1.Path = Dir1.Path)
 파일리스트박스에Pattern="*.txt"로 지정하면 텍스트파일만 표시하게 됨
44) 파일의 반복처리
 Do Until EOF(1)은 파일의 끝에 도달하기까지 Do에서 Loop까지 사이의 기술되어 있는 
처리를 반복
 (디스크 등에 있는 파일을 읽어드릴 때 사용한다.)
45) 리스트박스와 콤보박스의 데이터 입력
 리스트박스나 콤보박스에 데이터를 넣으려면 List속성의 버튼을 클릭하여 리스트를 표시하여 입력한후
Ctrl키를 누르면서 Enter키를 누르면 다음으로 삽입포인터가 이동하여 계속입력가능 
 (프로그램에서 입력하려면 개체명.AddItem = "자료명")
 (개체명.ListIndex = 5 라고 기술하면 프로그램이 처음 실행될 때 초기 설정위치를 지정할 
수 있다.)
46) Msgbox에 관하여
 변수명 = MsgBox(메세지,표시버튼+표시아이콘,타이틀)
 표시버튼(안에 수치로 표현해도 됨) ☞ (vbOkOnly(0) = 확인버튼
vbOkCancel(1) = 확인,취소버튼 vbAbortRetryIgnore(2) = 
확인,재시도,무시버튼 vbYesNoCancel(3) = 예,아니오,취소버튼 vbYesNo(4) 
= 예,아니오버튼vbRetryCancel(5) = 재시도,취소버튼)
 표시아이콘(안에 수치로 표현해도 됨) ☞ (vbCritical(16) = 경고마크 
vbQuestion(32) = ? 마크
 vbExclamation(48) = ! 마크 vbInformation(64) = i 마크
 예) Selectkey = MsgBox("저장합니까?", vbYesNoCancel + 
vbQuestion, "종료") 
Select Case Selectkey
CasevbYes
[예(Y)] 버튼을 클릭할 때의 처리
CasevbNo
[아니오(N)] 버튼을 클릭할 때의 처리
Case vbCancel
[최소] 버튼을 클릭할 때의 처리
End Select
 (변수에 저장되는 값 vbOk(1) vbCancel(2) vbAbort(3) vbRetry(4) 
vbIgnore(5) vbYes(6) vbNo(7)) 
47) IF문과 For - Next문의 다른 곳
 IF IsNumeric(TextBox.Text) Then ☞ (식을 숫자로 다룰 때 True, 
그렇지 않을 때 False로 된다.)
 For Each - Next 명령문 ☞ (배열의 모든 요소에 대하여 동일한 명령문을 실행한다.)
 구문 : For Each <요소> In <배열>
 명령문블록 
Next
48) 문자열 함수
 RIGHT(P$,2) ☞ (P$의 오른쪽부터 세어서 2문자를 뽑아냅니다.)
 LEFT(P$,7) ☞ (P$의 왼쪽부터 세어서 7문자를 뽑아냅니다.)
 MID(P$,6,2) ☞ (P$의 왼쪽부터 세어서 6문자째부터 2문자를 뽑아냅니다.)
 LEN(P$) ☞ (P$의 문자수를 나타냅니다.)
 InStr(<검색시작위치>,<검색대상문자>,<검색문자>) 
 (<검색대장문자>속에 <검색문자>가 포함되어 있는지 아닌지를 조사하여 포함되어 있으면 그 위치를 
숫자로 포함되어 있지 않으면 0을 갖는다.)
 UCase$(문자열) ☞ (지정된 문자열중 영어문자를 모두 대문자로 하는 함수이며 LCase$는 
지정된 문자열중 영어문자를 모두 소문자로 하는 함수입니다.)
49) Picture속성 이용하기
 Picture 속성에 문자열을 대입하는 것은 불가능하지만, 그림을 대입할 수는 있다.
 (예) Image2.Picture = Image1.Picture)
 Picture 속성에 그림파일을 읽어 드리는 방법 
 (Image1.Picture = LoadPicture("Sample.bmp")
 공용대화상자에 있는 그림파일을 읽어드릴려면 pic캔버스.PaintPicture 
LoadPicture(공용대화상자이름.filename) ☞ (그림을 캔버스로 로드시킨다.)
 SavePicture,<파일명> ☞ (LoadPicture의 역에 해당하는 명령)
 LoadPicture() ☞ (그림을 삭제할 수 있다.)
50) 파일저장시 덮어쓰기 경고
 파일저장시 덮어쓰기 경고 ☞ (공용대화상자이름.Flags = 
cdlOFNOverwritePrompt)
★ 비주얼 베이직 기초강의 제 6탄(51-60) ★
51) 파일이나 그림 로드시 Path설정
 App.Path 속성 ☞ (통합환경에서 프로젝트가 들어있는 디렉토리를,컴파일 실행시에는 exe파일이 
들어있는 디렉토리를 전환한다.)
52) 이미지 속성에 관하여
 Stretch 속성(이미지 컨트롤) ☞ (이미지 컨트롤의 크기에 맞추어 그림의 확대/축소 여부를 
지정한다. 기본은 False로 컨트롤의 크기가 그림 크기에 맞추어 변경되며 True면 그림의 
크기가 컨트롤 크기에 맞추어 변경된다.)
53) 데이터베이스에 데이터 저장시 공백제거 기능
Trim ☞ (양쪽의 공백을 제거하는 기능 (RTrim(오른쪽 공백제거)과 LTrim(왼쪽 공백)이 
있다.))
54) 스크롤바 속성
 SmallChange 속성(스크롤바) ☞ (양 끝의 화살표를 클릭할 때의 이동량을 설정)
 LargeChange 속성(스크롤바) ☞ (일부분을 클릭할 때의 이동량을 설정)
55) 포커스 명령
 SetFocus ☞ (포커스를 갖게 한다. 예) Text2.SetFocus)
 GotFocus/Lost Focus ☞ (개체가 포커스를 얻을때/개체가 포커스를 잃었을 때 발생)
56) 메뉴편집기의 메뉴구분
 도구의 메뉴편집기에서 풀다운 메뉴를 작성 메뉴의 Caption을 -로 하면 메뉴 구분
57) 날짜 함수
 WeekDay(<식>) ☞ (시리얼 값에 해당하는 요일을 얻는다. 1은 일요일,7은 토요일에 
대응한다.)
 Now() ☞ (현재의 날짜와 시각을 시리얼값으로 취득한다. 날짜형의 데이터는 
#10/24/99#형태로 한다.)
58) 폼의 표시방법
 폼.Show <표시모드> ☞ (표시모드를 모달로 표시한 경우에는 Show 메서드의 다음 문은 폼이 
닫혀진 뒤에 실행되고 모델리스로 표시하는 경우에는 Show 메스드의 다음 문은 폼이 표시된 직후에 
실행됩니다.vbModeless(0):폼을 모델리스로vbModal(1):폼을 모달로 표시 생략시 
0(모델리스)으로 된다.)
 Hide 메서드(폼) ☞ (폼을 비표시로 한다. 예) form1.Hide)
 Unload 스테이트먼트 ☞ (폼을 메모리에서 제거(언로드)한다. 예) Unload form1)
59) 텍스트박스와 기타속성
 ScrollBar 속성(텍스트박스) ☞ (스크롤바의 종류를 
지정(0:없음,1:수직,2:수평,3:수직과 수평 스크롤바))
 Change 이벤트(텍스트박스) ☞ (텍스트바의 Text속성이 키입력 또는 코드의 대입문등에 의해 
변경되었을때에 발생)
SelLength 속성(텍스트박스) ☞ (선택되어 있는 텍스트의 문자수를 설정한다.)
Clipboard.SetText 메서드(클립보드) ☞ (클립보드에 <텍스트>로 지정된 문자열을 
저장한다.) Clipboard.SetData 메서드(클립보드) ☞ (클립보드에 <픽쳐>로 지정된 
픽쳐을 저장한다.)
Visible 속성 ☞ (컨트롤의 표시/비표시를 설정합니다. True/False)
60) 에러 처리에 관한 구문
1구문:On Error Goto <레이블> ☞ (<레이블>로 지정된 레이블에서 시작되는 에러처리루틴을 
유효하게 하므로써 에러 발생시 에러처리 루틴에 있는 문장으로 이동)
2구문:On Error Resume Next ☞ (에러를 무시하고 다음 스테이트먼트의 실행을 
계속하도록 한다.)
3구문:On Error Goto 0 ☞ 에러처리를 무효화한다.
Clear 메서드(Err 개체) ☞ (Err 개체의 모든 속성을 삭제(청소)한다.)
Number 속성(Err 개체) ☞ (발생한 에러의 에러 번호를 나타낸다.)
Description 속성(Err 개체) ☞ (발생한 에러의 에러 메시지를 나타낸다.)
★ 비주얼 베이직 기초강의 제7탄(61-67) ★
61) MCI 컨트롤에 관하여
 프로젝트의 구성요소의 Microsort Multimedia Control 6.0을 선택하면 MCI 
컨트롤이 추가된다.
 Device Type 속성(MCI 컨트롤) ☞ (디바이스의 형태를 결정한다. 종류에는AVI 
Video, CdAudio, Sequencer, WaveAudio 등이 있다 )
 FileName 속성(MCI컨트롤) ☞ (처리대상이 되는 파일을 지정한다.)
 Command 속성(MCI 컨트롤) ☞ (MCI 컨트롤을 실행한다. 예) 
MMControl1.Command = "Open"
Open,Close,Play,Pause,Stop,Back,Step,Prev,Next,Record 등이 
있다.)
 MMControl1.hWndDisplay = Picture1.hWnd ☞ (디바이스가 이용하는 창을 
취득/설정한다.)
62) 난수 발생 함수
 Rnd()함수 ☞ (난수를 발생한다.(0-1사이의 값) 예) k=int(rnd*6)+1로 주사위 
놀이게임시 설정된 값을 1에서 6사이로 제한하여 사용한다.) 
 Randomize 스테이트먼트 ☞ (난수발생을 초기화함)
63) 마우스와 키보드 관련 이벤트
 MouseDown(마우스버튼을 누를 때 발생) MouseUp(마우스버튼을 놓을 때 발생) 
MouseMove(마우스가이동할 때 발생 ☞ (버튼값이 1이면 왼쪽버튼, 2이면 오른쪽버튼,4이면 
중앙버튼)
 KeyDown(키를 누를때에 발생) KeyUp(키를 놓을때에 발생) KeyPress(키에 대응되는 
문자가 텍스트박스에 세트되기 전에 발생) 
64) KeyCode와 그의 값
 vbKeyBack(Backspace키) vbKeyCapital(Caps Lock키) 
vbKeyDelete(Delete키) vbKeyEnd(End키)vbKeyF1(F1키) 
vbKeyInsert(Ins키) vbKeyNumlock(Numlock키) 
vbKeyPrint(Print Screen키)vbKeyRight(→키) 
vbKeyShift(Shift키) vbKeyCancel(Cancel키) 
vbKeyControl(Ctrl키)
 vbKeyDown(↓키)vbKeyEscape(Esc키) vbKeyHome(Home키) 
vbKeyLeft(←키)
 vbKeyPause(Pause키) vbKeyReturn(Enter키) vbKeyUp(↑키)
65) 커먼 다이얼로그 속성
 DialogTitle 속성(커먼 다이얼로그) ☞ (대화상자의 타이틀 바에 표시할 문자열을 
설정한다.)
 DefaultExt 속성(커먼 다이얼로그) ☞ (대화상자의 디폴트의 확장자를 설정한다.)
 FIlter 속성(커먼 다이얼로그) ☞ ([파일의 종류] 리스트박스에 표시하는 문자열을 설정한다.)
 (예) 
"텍스트파일(*.Txt)|*.Txt|도큐먼트파일(*.Doc)|*.Doc|모든파일(*.*)|*.*")
 ShowOpen 메서드(커먼 다이얼로그) ☞ (파일열기 대화상자를 표시한다.)
 ShowSave 메서드(커먼 다이얼로그) ☞ (다른이름으로저장 대화상자를 표시한다.)
 FileName 속성(커먼 다이얼로그) ☞ (대화상자로 지정된 파일명을 얻는다.)
 CancelError 속성(커먼 다이얼로그) ☞ (대화상자에서 Cancel 버튼을 선택하였을 때 
에러를 발생시킬것인지 아닌지를 설정한다. True(에러를 발생한다.) False(에러를 발생시키지 
않는다.)
 ShowColor 메서드,ShowFont 메서드(커먼 다이얼로그) ☞ (색 대화상자와 글꼴대화상자를 
표시한다.)
66) 그리드 컨트롤
 프로젝트의 구성요소의 Microsoft FlexGrid Control 6.0이 그리드 컨트롤을 
사용하게 해준다.
 Cols() 속성, Rows() 속성(플렉스 그리드) ☞ (Cols속성은 그리드의 열수를 
Rows속성은 행수를 지정)
 FixedCols() 속성, FixedRows() 속성 ☞ (FixedCols속성은 그리드의 
고정열의 열 수를 FixedRows속성은 그리드의 고정행의 행 수를 지정한다.)
 ScrollBars()속성(그리드) ☞ (플렉스 그리드에 스크롤 바를 나타나게 할지 어떨지를 
설정한다.)(flexScrollNone(0:없음) flexScrollHorizental(1:수평) 
flexScrollVertical(2:수직) flexScrollBoth(3:양쪽))
 CellAlignment 속성(그리드) ☞ (액티브 셀의 데이터의 표시 위치를 설정한다.) 
67) 윈도우 기동명령
 AppActivate 스테이트먼트 ☞ (지정한 윈도우를 활성화한다. 예) AppActivate 
"계산기")
 SendKeys 스테이트먼트 ☞ (활성화 윈도에 키 데이터를 송신한다. 예) SendKeys 
"{DOWN 3}")
 Shell(<프로그램>,<기동모드>)함수 ☞ (<프로그램>으로 지정된 프로그램을 <기동모드>로 
지정된 상태로 기동한다. 예) X = Shell("NotePad.exe",1))
 기동모드 ☞ vbNormalFocus(1) : 포커스를 갖고, 창 크기와 위치에 표시되는 창
vbMinimizedFocus(2) : 포커스를 갖고, 
최소(아이콘화) 표시된 창
vbMaximizedFocus(3) : 포커스를 갖고, 최대 표시되는 


★ 비주얼 베이직 중급강의 제 1탄(1-3) ★
1) 데이터베이스 처리방법
Dim db As Database 'DataBase형의 개체변수
Dim tb As Recordset 'Recordset형이 개체변수
Set db = 
DBEngine.Workspaces(0).OpenDataBase("addr.mdb")
Set tb = db.OpenRecordset("address",dbOpenTable)
Set Data1.Recordset = tb
(데이타베이스를 사용하려면 로드할 때 위와 같이 기술하여 이용한다.)
2) SQL문 사용법
 데이터 컨트롤 속성 중 Data Source에 'SELECT * FROM 주소록'으로 정의
 (주소록으로부터 *(모든레코드)를 선택하라는 것이다. (SELECT 필드1,필드2,필드3.. 
FROM 테이블))
 DISTINCT(중복된 레코드를 추출하지 않는다.)
 (예)SELECT DISTINCT 필드 FROM 테이블)
 SELECT TOP 2 필드1,필드2,.. FROM 테이블 ORDER BY 필드 ASC
 (ORDER BY는 데이터를 원하는 순서대로 정렬하는 구문이다.)
 SELECT * FROM 테이블 WHERE 필드='홍길동' 
 (전체테이블에서 필드 이름이 홍길동인것만 추출)
 추가된 레코드나 수정된 레코드를 화면에 보여주는 방법
 (Data1.Recordset.Bookmark = 
Data1.Recordset.LastModified)
3) 데이터베이스 레코드 이동방법
 recordset.MoveFirst ☞ (맨 앞의 레코드로 이동)
 recordset.MovePrevious ☞ (한 칸 앞의 레코드로 이동)
 recordset.MoveNext ☞ (다음 레코드로 이동)
 recordset.MoveLast ☞ (최종 레코드로 이동)
★ 비주얼 베이직 중급강의 제2탄(4-6) ★
4) 데이터베이스 명령문
 recordset ☞ (열려있는 Recordset 개체)
 recordset.Edit ☞ (커런트 레코드를 편집할 수 있도록 준비하는 명령) 
 recordset.Update ☞ (실제로 결과를 레코드에 반영하려면 실행)
 (예) tb.Edittb!irem = "박세리" tb.Update)
 recordset.CancelUpdate ☞ (AddNew나 Edit 메소드에 의해 레코드 집합에 
전달된 메시지를 취소)
 recordset.AddNew ☞ (AddNew 메서드는 모든 필드가 빈(Null값) 레코드를 
추가합니다. 실제로 추가한레코드를 Recordset 개체에 저장하는 것은 Update 
메서드입니다.)
 recordset.Delete ☞ (커런트 레코드를 삭제한다. 삭제한 후에는 커런트 레코드가 
정의되지 않는 상태로 되어 있습니다. 이 상태에서 커런트 레코드를 참조하려고 하면 에러가 
발생합니다.)
 recordset.Seek comparison key1,key2... ☞ (레코드를 검색 예) 
tb.Seek "=" , "박세리")
 recordset.Filter(=value) ☞ (Filter속성은 조건을 설정하는 것뿐입니다. 
실제로 그 조건에서 Recordset 개체를 작성하려면 OpenRecordset 메서드를 
실행합니다.)
(예) db.Filter = "zip Like '123*'"zip필드가 "123"으로 시작하는 
레코드를 추출하는 필터)
 Set db = db.OpenRecordset() ☞ (필터를 기본으로 새 Recordset 개체를 
작성)
 tb.Index = "zip_Desc"☞(zip 필드를 기준으로 내림차순으로 정렬됩니다.)
5) 데이터베이스의 자료검색
 레코드 검색 ☞ (SQL_FIELD = SQL_FILED + "'" + InputBox("찾고자 
하는 값을 입력하여 주십시오.", "주소록관리검색", "", 600, 1740) + "'")
 자료검색찾기 ☞ (Recordset.FindFirst 필드명 = '검색자료')
6) 데이터베이스 기타내용
 레코드 집합을 최근의 정보로 다시 만들 때 ☞ (Data1.Recordset.Requery)
 레코드를 정렬할때 ☞(Set recRecordset1 = Data1.Recordset
 recRecordset1.Sort = SortStr(정렬할 열이 들어있는 변수)
 Set recRecordset2 = 
recRecordset1.OpenRecordset(recRecordset1.Type)
 다른 데이터베이스 사용(TableDef.Connect="dBASE IV";database="& 
App.Path & "\biblio"
★ 비주얼 베이직 중급강의 제3탄(7-9) ★
7) 탭 스트립 컨트롤 사용
프로젝트의 구성요소에서 Microsoft Windows Common Control 6.0을 추가하면 
탭 스트립 컨트롤을 추가할 수 있습니다. (속성창의 (사용자 정의)로 이동하면 탭 스트립 컨트롤의 
속성을 설정하는 대화상자가 표시되며 여기서 Caption과 Index를 정의하여 준다.)
7) API 함수 사용
 API 함수를 사용하려면 Microsoft Visual Studio 6.0 도구들에서 API 텍스트 
뷰어를 선택합니다.
 API 뷰어 창에서 파일메뉴의 텍스트 파일 로드를 선택한 다음 Win32api.txt를 클릭한 다음 
데이터베이스로 변환을 묻는 대화상자에서 예일경우는 데이터베이스화 시켜서 저장해 놓는 것도 API를 
자주 쓰는 사람에겐 현명한 방법이다. 사용할 API를 입력하고 추가한 후 복사를 누르면 클립보드에 
복사가 되면 다시 프로그램으로 돌아와 붙여넣기를 누른다.
(예) SandMessage() ☞ 원하는 윈도우에 원하는 메시지를 보내주는 함수
 SendMessage cbo테스트1.hwnd, CB_SHOWDRODOWN, True, 0 
'컴보박스에 드롭다운 전송)
 MessageBeep() ☞ (시스템 사운드를 들려주는 API 함수
 &HFFFF(PC 스피커로 평범한 비프음을 낸다)MB_ICONINFORMATION(일반 효과음)
 MB_ICONEXCLAMTION(경고음) MB_ICONQUESTION(입력요구음) 
MB_ICONSTOP(치명적 경고음)
 sndPlaySound() ☞ 멀티미디어를 위한 사운드 출력함수
 ShellAbout() ☞ About 화면을 구현해 주는 함수 
 ShellAbout Me.hWnd, "테스트 프로그램 Ver0.1", "Copyright 
1999.08 최원철", Me.Icon
tapiRequestMakeCall ☞가장 단순하게 전화를 걸어 줄 수 있는 TAPI의 함수
tapiGetLocationInfo ☞ 국가 코드와 지역 코드 번호를 가져오는 함수
8) 팝업메뉴의 사용
 팝업메뉴 [컨트롤.]PopupMenu 메뉴이름 ☞ (팝업메뉴의 대상이 될 수 있는 것은 최상위 메뉴 
아이템뿐이다. 보통 MouseUp 이벤트를 사용한다.)
예) If Button = 2 then '오른쪽 마우스 버튼이 눌렀는지 확인한다.
PopupMenu mnu파일' 팝업메뉴로서 파일 메뉴를 표시한다.
9) 그리드 명령 사용법
그리드 명령의 상단에 제목을 표시하려면 FormatString 프로퍼티를 이용한다.
예) FormatString = "1|12|123" '문자열들을 구분하려면 '|'를 사용한다. 
내용에 따라 종류가 판독되면 숫자면 우측정렬,문자면 좌측정렬이 되어 표시한다. 사용자가 임의대로 
정렬하려면 '<'는 좌측정렬, '^'는 중앙정렬, '>'는 우측정렬을 의미하는 문자이다. 사용하려는 
문자앞에 표시한다.
그리드에서 크기를 조절하는 프로퍼티는 AllowUserResizing 값이 0이면 조절할 수 없고 
1이면 열 크기를 조절할 수 있고 2이면 행 크기를 조절할 수 있고 3이면 양쪽모두 조절할 수 있다.
★ 비주얼 베이직 중급강의 제4탄(10-12) ★
10) 공용대화상자의 Action 값
 ShowOpen(1 : 열기 대화상자)
 ShowSave(2 : 다른 이름으로 저장 대화상자)
 ShowColor(3 : 색 선택 대화상자)
 ShowFont(4 : 폰트 선택 대화상자)
 ShowPrinter(5 : 프린트 대화상자)
 ShowHelp(6 : WindowsHelp engine을 호출)
(예) dlgCMDiglog.ShowOpen 혹은dlgCMDiglog.Action 
= 1 )
11) 기타 컨트롤에 대하여
 이미지리스트 ☞ (이미지를 리스트로 저장하는 것. 프로퍼티중에서 (사용자정의)를 더블클릭하면 
나타나는 대화상자에서 이미지 탭의 그림삽입을 눌러 차례로 이미지를 추가하면 된다.)
 탭 컨트롤 ☞ (ImageList 프로퍼티를 전개하여 현재 폼에 생성된 이미지리스트의 목록을 
선택하고 탭인 탭을 눌러 Image 프로퍼티를 1이상으로 바꾸면 된다. 0은 이미지를 표시하지 
않겠다는 의미이다.
예) TabStrip1.SelectItem.Index '원하는 탭의 번호를 가르킨다.
툴바 ☞ (어떤 버튼이 눌러졌는지 알기위해서는 Key 프로퍼티를 이용한다. 예) Button.Key)
상태바 ☞ (패널의 스타일 sbrText(기본값) : 텍스트 혹은 비트맵을 표시한다.
sbrCaps : CapsLock 상태 , sbrNum : Num Lock 상태 , sbrTime 
: 현재시간을 시스템 형식으로 표시 , sbrDate : 현재날짜를 시스템 형식으로 표시..등이 
있다.
예) sbr상태.Panels(1).Text = "통합프로그램" 'sbrText만 자유롭게 
손댈수 있다.)
진행 상태바 ☞ (Min,Max를 정하고 실행중 Value에 진행상태를 계속 표시해주면 된다.)
12) MaskedEdit
 프로젝트의 구성요소에서 Microsoft Masked Edit Control 6.0을 선택하면 
MaskedEdit 컨트롤을 사용할 수 있다.(Text 박스와 유사하지만 데이터를 Format에 따라 
표현할 수 있다.) 
★ 비주얼 베이직 중급강의 제5탄(13-15) ★
13) 타일 만들기
 조그만 이미지를 가지고 폼 전체를 채우는 방법은 타일(Tile)이라는 개념을 이용한다.
 예)Private sub Form_Paint()
 Dim i, j As Integer
 Dim tile_size_x, tile_size_y As Integer
 tile_size_x = img타일.Width 
 '속도를 위해 일단 타일의 크기를 구한다.
 tile_size_y = img타일.Height
 For i = 0 To Me.ScaleHeight Step tile_size_y
'폼의 크기만큼 타일 크기를 
 For j = 0 To Me.ScaleWidth Step tile_size_x 
' 간격으로 루프를 돈다. 
 Me.PaintPicture img타일.Picture, j, I 
'폼에 타일의 이미지를 찍는다. 
 Next j
 Next I
 End sub
14) 비주얼베이직과 레지스트리
 비주얼베이직의 표준 레지스트리의 위치 ☞ (HKEY CURRENT USER\Software\VB 
and VBA Program Settings\)
 GetSetting ☞ (레지스트리 설정을 읽는다.)SaveSetting ☞ (레지스트리 설정을 
저장 혹은 작성한다.)
 GetAllSettings ☞ (다중 레지스트리 설정을 읽는다.)DeleteSetting ☞ 
(레지스트리 설정을 삭제한다). 
15) 마지막으로 종료했던 순간의 폼 상태를 그대로 복구해주는 프로그램
Private Sub Form_Load() '폼의 위치와 크기 정보를 읽는다.
Me.Left = GetSetting(App.Title, "Position", "Left", 
Me.Left)
Me.Top = GetSetting(App.Title, "Position", "Top", 
Me.Top)
Me.Width = GetSetting(App.Title, "Size", "Width", 
Me.Width)
Me.Height = GetSetting(App.Title, "Size", "Height", 
Me.Height)
End Sub
Private Sub Form_Unload(Cancel As Integer) '폼의 
위치와 크기 정보를 읽는다.
SaveSetting App.Title, "Position", "Left", 
Str(Me.Left)
SaveSetting App.Title, "Position", "Top", 
Str(Me.Top)
SaveSetting App.Title, "Size", "Width", 
Str(Me.Width)
SaveSetting App.Title, "Size", "Height", 
Str(Me.Height)
End Sub
★ 비주얼 베이직 중급강의 제6탄(16-18) ★
16) 대표적인 그래픽 메소드
 Circle(원을 그림), Cls(화면을 지움), Line(선을 그음), 
PaintPicture(그림을 복사함), Point(지정된 좌표의 점색을 읽어옴), Print(글씨를 
찍음), Pset(점을 찍음), TextHeight(문자열 의 높이를 얻음), 
TextWidth(문자열의 너비를 얻음) 
17) 프린터처리에 관하여
 Printer 개체의 프로퍼티 ☞ (Copies(찍는 문서의 개수), Count(프린터 디바이스의 
개수), DeviceName(프린터 디바이스의 이름), Duplex(페이지 양면의 인쇄), 
Orientation(용지인쇄방향), Page(현재페이지), PaperBin(인쇄시 용지를 공급하는 
프린터의 기본 용지함), Paper내용을 프린터 할 준비
Printer.EndDoc(내용을 프린터로 전송)
18) 클립보드 정리
 클립보드 ☞ (Clear(클립보드에 포함된 데이터를 삭제한다.), GetData(클립보드에서 그림 
데이터를 얻는다.), GetFormat(클립보드에 포함된 데이터의 형식을 얻는다.), 
GetText(클립보드에서 문자열을 얻는다.), SetData(클립보드로 그림데이터를 보낸다.), 
SetText(클립보드로 문자열을 보낸다.)
예) Clipboard.Clear '클립보드의 내용을 지운다.)
문자열 = Clipboard.GetText([포맷])'포맷의 기본값은 1(문자열 얻기), 
&HBF00(DDE 정보교환)
★ 비주얼 베이직 중급강의 제7탄(19) ★
19) 비주얼 베이직로 화면보호기 만들기
스크린세이버 ☞ (화면보호기능으로 다음 사항을 고려하여 작성한다.)
1) 화면전체를 대상으로 한다.(폼의 BorderStyle 프로퍼티를 0으로하고 WindowState 
프로퍼티를 2(전체 화면)으로 BackColor 프로퍼티를 &H00000000(검은색)으로 한다.)
2) 커서를 없앤다.(API 함수인 ShowCursor()를 이용한다. 폼의 로드이벤트에서 
ShowCursor False를 폼 의 언로드이벤트에서 ShowCursor True를 넣는다.)
3) 다른 윈도우의 침입을 방지한다.(SetWindowPos Me.hWnd,-1,0,0,0,0,SWP 
NOMOVE+SWP NOSIZE)
4) 중복해서 실행되면 안된다.(SystemParametersInfo()함수를 이용한다.)
Const SPI SETSCREENSAVEACTIVE = 15
SystemParametersInfo SPI SETSCREENSAVEACTIVE, False, 
0, 0 (스크린세이버가 실행중임)
SystemParametersInfo SPI SETSCREENSAVEACTIVE, True, 0, 
0 (스크린세이버가 종료됨)
5) 사용자의 입력이 있으면 종료된다.(GetCursorPos()함수를 이용하여 마우스의 좌표를 얻고 
MouseMov e에서 If (StartCursor.x <>x) Or 
(StartCursor.y<>y) then이면Unload Me로 종료) 그리고 
MouseDown이나 KeyDown은 그냥 Unload Me로 종료
6) 윈도우가 스크린 세이버를 인식해야 한다.(실행파일의 확장자을 SCR로 바꾼다)



♬비주얼 베이직에서 사용하는 모든 함수를 배워봅시다. ♬

: 자주사용하는 함수: 일반적으로 많이 아는 함수: 특수한 경우에만 사용하는 
함수

 ◈ 함수명 : Abs ◈ 함수명 : Array
 형식 : Abs(number) 형식 : Array(arglist)
 설명 : 가로안의 수치에 대한 절대값을 구합니다. 설명 : 배열이 포함된 값을 
반환합니다.
 예제 : Abs(21.7) ☞ 21.7을 반환합니다.
Abs(-21.7) ☞ 21.7을 반환합니다. 예제 : 
m=Array("월","화","수","목","금","토","일")
d=m(2) ☞ d에는 "화"가 들어갑니다.

 ◈ 함수명 : Asc ◈ 함수명 : Atn
 형식 : Asc(string) 형식 : Atn(number)
 설명 : 문자열의 첫 글자에 해당하는 문자 코드를 나타내는 
integer 값을 반환합니다. 설명 : 가로안의 수치의 
아크탄젠트(arctangent)값을 지정하는 Double을 반환합니다.
 예제 : Asc("A") ☞ 65를 반환합니다.
Asc("a") ☞ 97를 반환합니다. 예제 : pi=4*Atn(1) ☞ 
원주율의 값을 계산합니다.
Atn은 삼각함수 Tan의 역함수입니다.

 ◈ 함수명 : Choose ◈ 함수명 : Chr
 형식 : Choose(index,선택1,선택2....) 형식 : Chr(charcode)
 설명 : 인수목록에서 값을 선택하고 그 값을 반환합니다. 설명 : ASCII코드값에 
해당되는 문자를 반환합니다.
 예제 : Gsun=Choose(ind,"빠름","중간","느림") 
☞ ind값에 따라 선택목록에서 값을 반환합니다. 예제 : Chr(65) 
☞ A를 반환합니다.
Chr(97) ☞ a를 반환합니다.

 ◈ 함수명 : Command ◈ 함수명 : Cos
 형식 : Command 형식 : Cos(number)
 설명 : 비주얼베이직으로 개발된 실행 프로그램을 시작했던 명령줄의 
인수부분을 반환합니다. 설명 : 특정한 각의 코사인 값을 반환합니다.
 예제 : VB /cmd cmdinsu ☞ cmdinsu는 Command함수에
 의해 반환된 인수를 나타냅니다. 예제 : Cos(30) ☞ Cos 30도 값을 
반환합니다. 

 ◈ 함수명 : CreateObject ◈ 함수명 : CurDir
 형식 : CreateObject(class) 형식 : CurDir(drive)
 설명 : ActiveX 개체에 대한 참조를 만들거나 반환합니다. 설명 : 현재 경로를 
나타내는 문자열을 반환합니다.
 예제 : CreateObject("Excel.Application) 
☞ Excel.Application개체에 대한 참조를 만들어
 전달합니다.예제 : CurDir ("C") ☞ 현재 경로가 
"C:\vbasic\연습"이라면 이 경로값을 반환합니다.

 ◈ 함수명 : CVErr ◈ 함수명 : Date
 형식 : CVErr(errornumber) 형식 : Date
 설명 : 사용자가 지정한 오류번호를 반환합니다. 설명 : 현재의 시스템 날짜를 
반환합니다.
 예제 : CVErr(1357) ☞ 사용자정의 오류 번호를 반환합니다. 예제 : 
d=Date ☞ d에 현재 시스템 날짜를 반환합니다.

 ◈ 함수명 : DateAdd ◈ 함수명 : DateDiff
 형식 : DateAdd(interval, number, date) 형식 : 
DateDiff(interval, date1, 
date2,[firstdayofweek,...])
 설명 : 특정 시간 간격을 포함한 Date값을 반환합니다. 설명 : 지정된 두 날짜간의 
시간 간격을 반환합니다.
 예제 : DateAdd("m", 1, "31-Jul-99") ☞ 99년 7월31에 
1개월을 더한 99년 8월 31일 값을 반환합니다. 예제 : 
dd=InputBox("Enter a date")
cha=DateDiff("d", Now, dd) 
☞ 입력한 날짜와 현재날짜와의 차이값을 반환합니다.

 ◈ 함수명 : DatePart ◈ 함수명 : DateSerial
 형식 : DatePart(interval, date[,firstdayofweek...) 
형식 : DateSerial(year, month, day)
 설명 : 관련 자료의 특정부분의 값을 반환합니다. 설명 : 지정된 년, 월, 일의 값을 
반환합니다.
 예제 : dd=InputBox("Enter a date")
cha=DatePart("w", dd) ☞ 입력받은 날짜의 요일을
반환합니다. 예제 : mdate=DateSerial(1980, 5,10)
☞ mdate에 1980년 5월 10일의 날짜값을 반환합니다.

 ◈ 함수명 : DateValue ◈ 함수명 : Day
 형식 : DateValue(date) 형식 : Day(date)
 설명 : 날짜값을 반환합니다. 설명 : 해당월의 날짜를 의미하는 정수값을 반환합니다.
 예제 : DateValue("October 15, 1985) 
 ☞ 영문표기법에 의한 날짜값을 반환합니다. 예제 : 
mdate=#October 15, 1990#
m=Day(mdate) ☞ m은 15를 받습니다.

 ◈ 함수명 : DDB ◈ 함수명 : Dir
 형식 : DDB(cost, salvage, life, period[,factor]) 형식 
: Dir(pathname[,attributes])
 설명 : 특정기간동안 자산의 감가상각값을 반환합니다. 설명 : 지정된 파일속성등이 
일치하는 파일이름을 반환합니다
 예제 : period=((cost-salvage)*factor)/life
☞ DDB함수는 윗 공식을 사용하여 주어진 기간동안의 
감가상각을 계산합니다. 예제 : Dir(*.jpg) ☞ 해당 pathname과 일치하는 첫 
번째 파일 이름을 반환합니다.

 ◈ 함수명 : DoEvents ◈ 함수명 : Environ
 형식 : DoEvents() 형식 : Environ({envstring | 
number})
 설명 : 운영체제가 다른 이벤트를 처리할 수 있도록 실행을 
넘겨줍니다. 설명 : 운영체제 환경변수와 관련된 문자를 반환합니다.
 예제 :DoEvents() ☞ 파일검색처럼 시작한 후 사용자가 그
프로세스를 취소할 수 있도록 해주는 것과 같은 
 간단한 작업에 아주 유용합니다. 예제 : Environ(Ind) ☞ 
환경변수를 읽어들입니다.

 ◈ 함수명 : EOF ◈ 함수명 : Error
 형식 : EOF(filenumber) 형식 : Error(errornumber)
 설명 : Input용으로 열린 파일의 끝에 도달하면 Boolean
값을 True값을 반환합니다. 설명 : 주어진 오류번호에 해당하는 
오류메세지를 반환합니다
 예제 : Do While Not EOF(1) ☞ 파일의 끝을 확인합니다. 예제 : 
Error(1231) ☞ errornumber해당하는 오류메세지를
반환합니다.

 ◈ 함수명 : Exp ◈ 함수명 : FileAttr
 형식 : Exp(number) 형식 : FileAttr(filenumber, 
returntype)
 설명 : e(자연로그의 밑)의 거듭제곱수를 반환합니다. 설명 : Open문으로 연 파일의 
파일모드를 반환합니다.
 예제 : Exp(-1 * 1.3)/2 ☞ 쌍곡선 사인값을 반환합니다. 예제 : 
FileAttr(FileNum, 1) ☞ Append 파일모드입니다.

 ◈ 함수명 : FileDateTime ◈ 함수명 : FileLen
 형식 : FileDateTime(pathname) 형식 : 
FileLen(pathname)
 설명 : 파일이 생성되거나 마지막으로 수정된 날짜와 시간을
반환합니다. 설명 : 파일 길이를 바이트 수로 반환합니다.
 예제 : FileDateTime("TTFILE") ☞ TTFILE이 수정된 날짜와
시간을 반환합니다. 예제 : ms=FileLen("TTFILE") ☞ 
파일길이를 반환합니다.

 ◈ 함수명 : Int, Fix ◈ 함수명 : Format
 형식 : Int(number), Fix(number) 형식 : 
Format(expression, format...)
 설명 : 특정 숫자의 정수 부분을 전달된 형식으로 반환합니다 설명 : 형식 식의 명령대로 
구성된 문자를 반환합니다.
 예제 : Int(99.8) ☞ 99 Int(-99.2) ☞ -100
Fix(99.8) ☞ 99 Fix(-99.2) ☞ -99 를 
반환합니다. 예제 : Format(53000,"##,###") ☞ 53,000
Format(2, "0.00%") ☞ 200.00%을 반환합니다.

 ◈ 함수명 : FreeFile ◈ 함수명 : FV
 형식 : FreeFile(rangenumber) 형식 : FV(rate, nper, 
pmt[,pv,type])
 설명 : Open문에 사용할 수 있는 다음 파일번호를 반환. 설명 : 정기고정 지불액과 
고정 이율을 기준으로 연금에
 대한 미래 가치를 반환합니다.
 예제 : FileNumbr=FreeFile ☞ 사용하지 않은 파일번호를
가져와서 Open문에서 이용합니다. 예제 : rate(일정기간당 이율), 
nper(연금의 총지불 기간수)
pmt(각 기간에 지불할 금액, PV(장래의 지불액에 대
한 현재의 값), Type(지불 만기일)

 ◈ 함수명 : GetAllSettings ◈ 함수명 : GetAttr
 형식 : GetAllsettings(appname, section) 형식 : 
GetAttr(pathname)
 설명 : 윈도우 레지스트리의 응용 프로그램 항목에서 키 설정
의 이름과 값들의 목록을 반환합니다. 설명 : 파일, 디렉토리, 또는 
폴더속성을 반환합니다.
 예제 : GetAllsettings(appname:="MyApp" , section :=
"Startup") ☞ 윈도우 .INI파일의 항목을 만들기 위해
설정된 내용을 표시합니다. 예제 : r=GetAttr(Fname) And 
vbArchive ☞ 보관속성이 설정
되어있다면 0이 아닌값이 되돌려 지고 설정되어 있지
않으면 반환값은 0입니다.

 ◈ 함수명 : GetAutoServerSettings ◈ 함수명 : GetObject
 형식 : object.GetAutoServerSettings([progid,clsid]) 
형식 : GetObject([pathname, class])
 설명 : ActiveX 구성요소의 등록상태에 대한 정보를 반환 설명 : 파일에서 
ActiveX개체에 대한 참조를 반환합니다.
 예제 : oRegClass.GetAutoServerSettings 
("Hproj.HClass")☞ 명명된 원격 등록 개체 정보를 
검색하여 반환 예제 : GetObject("C:\Photo\Cat.psd) ☞ 해당 
응용프로
그램이 시작되고 지정된 파일의 개체가 활성화됩니다.

 ◈ 함수명 : GetSetting ◈ 함수명 : Hex
 형식 : GetSetting(appname, section, key[,default]) 
형식 : Hex(number)
 설명 : 윈도우 레지스트리에서 키 설정값을 반환합니다. 설명 : 숫자의 16진수값을 
문자값으로 반환합니다.
 예제 : GetSetting(appname:="MyApp", 
section:="Startup", key:="Left", 
defaulf:="25")☞ 레지스트리의 키 설정
값을 반환합니다. 예제 : mHex=Hex(7) ☞ 7를 반환합니다.
mHex=Hex(10) ☞ A를 반환합니다.
mHex=Hex(27) ☞ 1B를 반환합니다.

 ◈ 함수명 : Hour ◈ 함수명 : IIf
 형식 : Hour(time) 형식 : IIf(expr, truepart, 
falsepart)
 설명 : 시간을 나타내는 0에서 23사이의 정수값을 반환합니다 설명 : 식을 평가한 
결과에 따라 값을 반환합니다.
 예제 : MTime=#3:20:45 PM#.
MHour=Hour(MTime) ☞ 15값이 반환됩니다. 예제 : 
IIf(su>200, dan*su*0.8, dan*su) 
☞ 주어진 식을 평가하여 참, 거짓문장을 수행합니다.

 ◈ 함수명 : IMEStatus ◈ 함수명 : Input
 형식 : IMEStatus 형식 : Input(number,[#]filenumber)
 설명 : IME모드를 나타내는 값을 반환합니다. 설명 : Input 또는 Binary 
모드로 연 파일로부터 문자가들어있는 문자를 반환합니다.
 예제 : vbIMEModeNoControl ☞ 0(현재 상태 유지)
vbIMEModeHangul ☞ 10(한글) 예제 : Open 
"TFile" For Input As #1 ☞ 파일을 엽니다.
MChar=Input(1,#1) ☞ 한 문자를 가져옵니다.

 ◈ 함수명 : InputBox ◈ 함수명 : InStr
 형식 : InputBox(prompt[,title,default,xpos, 
ypos,helpfile]) 형식 : 
InStr([,start,]string1,string2[,compare])
 설명 : 대화 상자안의 프롬프트를 보여주며, 사용자가 입력을
 하면 입력된 내용을 포함하는 문자열을 반환합니다. 설명 : 한 문자열안에 
특정 문자열이 처음으로 발생한 위치를
수치값으로 반환합니다.
 예제 : InputBox(msg,"입력연습", "없음") 
☞ 메시지와 Input박스의 제목과 기본값을 설정합니다. 예제 : 
InStr(3,"honggildong","d",1)
☞ 3 위치에서 비교시작하여 d가 발견된 8을 반환

 ◈ 함수명 : IPmt ◈ 함수명 : IRR
 형식 : IPmt(rate, per, nper, pv[, fv[,type]]) 형식 : 
IRR(values()[,guess])
 설명 : 정기고정 지불액과 고정이율을 기준으로 일정기간동안
연금의 이자 지불액을 반환합니다. 설명 : 일정기간의 자금흐름(지불액과 
수령액)에 대한 내부
수익률을 반환합니다.
 예제 : rate(일정기간 당 이율), per,nper(연금의 총 지불 기간
수), pv(장래의 지불액이나 수령액에 대한 현재의 값)
fv(마지막으로 지불한 후에 원하는 장래의 값이나 자금
잔액), type(지불 만기일) 예제 : values()(자금 흐름값을 
지정하는 Double유형의 배열
guess(추정치를 지정하는 Variant는 IRR로 얻을 수 있
습니다. 생략하면 guess는 0.1(10%)이 됩니다.

 ◈ 함수명 : IsArray ◈ 함수명 : IsDate
 형식 : IsArray(varname) 형식 : IsDate(expression)
 설명 : 변수가 배열인지 나타내는 Boolean값을 반환합니다. 설명 : 식을 날짜로 
변환할 수 있는지를 Boolean값으로 반환
 예제 : Dim k(2,3)
if IsArray(k) ☞ True값을 반환합니다. 예제 : 
MDate="#2/18/78#"
if IsDate(MDate) ☞ True값을 반환합니다.

 ◈ 함수명 : IsEmpty ◈ 함수명 : IsError
 형식 : IsEmpty(expression) 형식 : IsError(expression)
 설명 : 변수가 초기화 되었는지를 Boolean값으로 반환합니다 설명 : 식이 오류 
값인지를 나타내는 Boolean값을 반환
 예제 : Dim Mchk 
if IsEmpty(Mchk) ☞ True값을 반환합니다. 예제 : 
if IsError(Rel)☞ Rel이 오류면 True값을 반환합니다.

 ◈ 함수명 : IsMissing ◈ 함수명 : IsNull
 형식 : IsMissing(argname) 형식 : IsNull(expression)
 설명 : 선택적인 Variant인수가 프로시저에 전달되었는지
나타내는 Boolean값을 반환합니다. 설명 : 식이 Null값인지를 
Boolean값으로 반환합니다.
 예제 : Function ReT(Optional A)
If IsMissing(A) ☞ 인수값이 있으면 참값을 반환합니다 예제 
: Myvar=Null
if IsNull(MyVar) ☞ True값을 반환합니다.

 ◈ 함수명 : IsNumeric ◈ 함수명 : IsObject
 형식 : IsNumeric(expression) 형식 : 
IsObject(idenfifier)
 설명 : 식을 수로 평가할 수 있는지를 Boolean값으로 반환 설명 : 식별자가 
개체변수인지를 Boolean값으로 반환합니다.
 예제 : su=30 
if IsNumeric(su) ☞ True값을 반환합니다. 예제 : 
Dim Mobj As Object
Set Yobj=Mobj ☞ 개체참조를 지정합니다.
if IsObject(Yobj) ☞ Treu를 반환합니다.

 ◈ 함수명 : LBound ◈ 함수명 : LCase
 형식 : LBound(arrayname[, dimension]) 형식 : 
LCase(string)
 설명 : 지정된 배열 차원에 사용할 수 있는 가장 작은 첨자를
포함하는 Long형 값을 반환합니다. 설명 : 소문자로 변환된 문자값을 
반환합니다.
 예제 : Dim Marray(1 To 10, 10 To 20) ☞ 배열변수 선언
L=LBound(Marray,1) ☞ 1을 반환합니다. 예제 : 
k="SEOUL"
m=LCase(k) ☞ "seoul"를 반환합니다.

 ◈ 함수명 : Left ◈ 함수명 : Len
 형식 : Left(string, length) 형식 : Len(string | 
varname
 설명 : 문자열의 좌즉에서부터 지정된 수만큼 문자를 반환 설명 : 문자열의 갯수를 수치로 
반환합니다.
 예제 : s="hello chulsu" 
m=Left(s, 3) ☞ "hel"을 반환합니다. 예제 : 
Len("chanbin") ☞ 7을 반환합니다.

 ◈ 함수명 : LoadPicture ◈ 함수명 : Loc
 형식 : LoadPicture(stringexpression) 형식 : 
Loc(filenumber)
 설명 : 폼의 PictureBox컨트롤, Image컨트롤에 그림을 호출 설명 : 열려있는 
파일에서 현재의 R/W위치를 반환합니다.
 예제 : Picture1.Picture=LoadPicture("chan.jpg") 
 ☞ 픽쳐박스에 그림을 불러옵니다. 예제 : MyLocation=Loc(1) 
☞ 파일안의 현재위치를 반환

 ◈ 함수명 : LOF ◈ 함수명 : Log
 형식 : LOF(filenumber) 형식 : Log(number)
 설명 : Open문으로 연 파일의 크기를 반환합니다. 설명 : 특정한 수의 자연로그값을 
계산합니다.
 예제 : Flen=LOF91) ☞ 파일의 길이를 구합니다. 예제 : Log(x) ☞ 
x값에 대한 자연로그값을 구합니다.

 ◈ 함수명 : LTrim, RTrim, Trim ◈ 함수명 : Mid
 형식 : LTrim(string), RTrim(string), Trim(string) 
형식 : Mid(string, start[,length])
 설명 : 지정된 문자열의 좌측, 우측, 양쪽에 공백이 없는 문자
열을 반환합니다. 설명 : 한 문자열에서 시작위치에서 지정한 수 만큼이 
문자들
을 반환합니다.
 예제 : k=" seoul " 
m=LTrim(k) ☞ "seoul "을 반환합니다. 예제 : 
k="hello chanbin" 
m=Mid(k,7,4) ☞ "chan"을 반환합니다.

 ◈ 함수명 : Minute ◈ 함수명 : MIRR
 형식 : Minute(time) 형식 : MIRR(values(), 
finance_rate, reinvest_rate)
 설명 : 분을 나타내는 0에서 59사이의 정수값을 반환합니다. 설명 : 일정기간의 
자금흐름에 대한 수정된 내부이익을 지정
하는 값을 반환합니다.
 예제 : MyTime=#5:38:23# ☞ 시간을 지정합니다.
m=Minute(MyTime) ☞ 38을 반환합니다. 예제 : 
values()(자금흐름값을 지정), finance_rate(재정처리
 비용으로 지불할 이율을 지정), reinvest_rate(자금 재
 투자로 인한 수익에서 받을 이율을 지정)

 ◈ 함수명 : Month ◈ 함수명 : MsgBox
 형식 : Month(date) 형식 : MsgBox(prompt[,buttons, 
title, helpfile, context])
 설명 : 월을 나타내는 1에서 12사이의 정수값을 반환합니다. 설명 : 대화 상자안에 
메시지를 보여줍니다.
 예제 : Mydate=#October 15, 1990# ☞ 날짜를 지정합니다.
m=Month(Mydate) ☞ 10을 반환합니다. 예제 : MsgBox 
"안녕하세요" ☞ 해당메세지를 보여줍니다.

 ◈ 함수명 : Now ◈ 함수명 : NPer
 형식 : Now 형식 : NPer(rate, pmt, pb[,fv, type])
 설명 : 사용자 컴퓨터 시스템 날짜와 시간을 반환합니다. 설명 : 정기고정 지불액과 
고정이율을 기준으로 연금의 기간
수를 반환합니다.
 예제 : Td=Now ☞ 현재 날짜와 시간을 반환합니다. 예제 : rate(일정기간 
이율을 지정), pmt(각 기간에 지불할
지불액), pv(장래의 지불액), fv(마지막으로 지불한후
에 원하는 장래의 값), type(지불만기일)

 ◈ 함수명 : NPV ◈ 함수명 : Oct
 형식 : NPV(rate, values()) 형식 : Oct(number)
 설명 : 정기적인 자금 흐름과 할인율을 기준으로 현재의 순
투자 가치를 반환합니다. 설명 : 숫자의 8진수값을 문자로 반환합니다.
 예제 : rate(전 기간에 걸친 할인율을 지정), values()(자금 흐
름값을 지정) 예제 : m=Oct(5) ☞ 5를 반환합니다.
d=Oct(9) ☞ 11을 반환합니다.

 ◈ 함수명 : Partition ◈ 함수명 : Pmt
 형식 : Partition(number, start, stop, interval) 형식 
: Pmt(rate, nper, pv[,fv, type])
 설명 : 계산된 범위내이 어느곳에서 숫자가 발생했는지를
알려주는 문자열을 반환합니다. 설명 : 정기고정 지불액과 고정이율을 
기준으로 연금에 대한
지불액을 반환합니다.
 예제 : 주어진 범위안에서 주문량을 구하기 위해 많은 사용 예제 : rate(일정기간 당 
이율을 지정), nper(연금의 총 지불
기간수을 지정), pv((장래의 지불액), fv(마지막으로 지
불한 후에 원하는 장래의 값), type(지불 만기일)

 ◈ 함수명 : PPmt ◈ 함수명 : PV
 형식 : PPmt(rate, per, nper, pv[,fv, type]) 형식 : 
PV(rate, nper, pmt[,fv, type])
 설명 : 정기고정 지불액과 고정이율을 기준으로 일정기간동안
연금의 원금 지불액을 반환합니다. 설명 : 장래의 지불할 정기고정 
지불액과 고정 이율을 기준으
로 연금의 현재 가치를 반환합니다.
 예제 : rate(일정기간 당 이율을 지정), Nper(연금의 총지불
 기간수),pmt(각 기간에 지불할 지불액), fv(마지막으로
 지불한 후에 원하는 장래의 값),type(지불만기일) 예제 : 
rate(일정기간 당 이율을 지정), nper(연금의 총 지불
기간수를 지정), pmt(각 기간에 지불할 지불액), fv(마
지막으로 지불할 후에 원하는 장래의 값), type(지불
만기일)

 ◈ 함수명 : QBColor ◈ 함수명 : Rate
 형식 : QBColor(color) 형식 : Rate(nper, pmt, pv, fv[, 
type, guess])
 설명 : 지정된 색 번호에 대응하는 칼라를 나타냅니다. 설명 : 연금에 대한 일정기간 당 
이율을 반환합니다.
 예제 : QBColor(0) ☞ 검정색을 반환합니다. 1(파랑), 2(초록)
3(청록), 4(빨강), 5(진홍), 6(노랑), 7(흰색), 
8(회색),
9(연파랑), 10(연초록), 11(연청록), 12(연빨강),
13(연진홍), 14(연노랑), 15(옅은 흰색) 예제 : 
nper(연금의 총지불 기간수를 지정), pmt(각 기간에
지불할 지불액을 지정), pv(장래의 지불액이나 수령액
에 대한 현재의 값을 지정), fv(마지막으로 지불한 후에
원하는 장래의 값), type(지불만기일), guess(추정치를
지정하는 Variant는 Rate로 얻음)

 ◈ 함수명 : RGB ◈ 함수명 : Right
 형식 : RGB(red, green, blue) 형식 : Right(string, 
length)
 설명 : RGB색값을 Long형식의 정수로 반환합니다. 설명 : 문자열의 우측에서 지정한 
수만큼의 문자열을 반환
 예제 : RGB(255, 0, 0) ☞ 빨강색을 반환합니다.
RGB(0, 0 ,255)) ☞파랑색을 반환합니다. 예제 : 
k="hello chanbin"
m=Right(k, 3) ☞ "bin"을 반환합니다.

 ◈ 함수명 : Rnd ◈ 함수명 : Second
 형식 : Rnd(number) 형식 : Second(time)
 설명 : 난수를 반환합니다.(0에서 1사이의 수치) 설명 : 초를 나타내는 0에서 
59사이의 수를 반환합니다.
 예제 : m=int((Rnd*6))+1 ☞ 1에서 6사이의 난수를 발생합니다 예제 : 
MyTime=#2:40:55 PM# ☞ 시간을 지정합니다.
s=Second(MyTime) ☞ 55를 반환합니다.

 ◈ 함수명 : Seek ◈ 함수명 : Sgn
 형식 : Seek(filenumber) 형식 : Sgn(number)
 설명 : Open문으로 열린 파일안의 R/W의 위치를 반환합니다 설명 : 특정 숫자의 
부호를 수치로 반환합니다.
 예제 : Mc=Input(1, #1) ☞ 데이터의 문자를 읽어드립니다.
Debug.Print Seek(1) ☞ 디버그창의 바이트 위치를
출력합니다. 예제 : m=Sgn(50) ☞ 양수이면 1을 0이면 0을 
음수이면 -1을
반환합니다. 따라서 여기서는 1을 반환합니다.

 ◈ 함수명 : Shell ◈ 함수명 : Sin
 형식 : Shell(pathname[, windowstyle]) 형식 : 
Sin(number)
 설명 : 사용자에 의해 지정된 응용프로그램을 실행합니다. 설명 : 각도의 사인값을 
반환합니다.
 예제 : k=Shell("C:\windows\calc.exe", 1) 
 ☞ 계산기를 실행합니다. 예제 : Sin(30*pi/180) ☞ 사인 
30도값을 구합니다.

 ◈ 함수명 : SLN ◈ 함수명 : Space
 형식 : SLN(cost, salvage, life) 형식 : Space(number)
 설명 : 단일 기간 동안의 정액법을 지정하는 값을 반환합니다. 설명 : 지정된 수의 
공백을 반환합니다.
 예제 : cost(초기자산 비용을 지정), Salvage(유용기간이 끝
나는 시점의 자산액수를 지정), Life(자산의 유용기간
길이를 지정) 예제 : m="hello" & Space(10) & 
"chanbin"
☞ 두 문자열 사이에 10 공백을 삽입합니다.

 ◈ 함수명 : Spc ◈ 함수명 : Str
 형식 : Spc(n) 형식 : Str(number)
 설명 : Print메서드에서 출력위치를 지정합니다. 설명 : 숫자형식의 데이터를 문자열 
데이터로 변환합니다.
 예제 : Print spc(5) "chanbin" ☞ 5칸을 띤 후에 출력합니다. 예제 
: Str(390) ☞ "390"를 반환합니다.

 ◈ 함수명 : StrComp ◈ 함수명 : StrConv
 형식 : StrComp(string1.string2[, compare]) 형식 : 
StrConv(string, conversion)
 설명 : 문자열 비교의 결과값을 수치로 반환합니다. 설명 : 지정된 대로 변환된 문자열을 
반환합니다.
 예제 : a="chanbin" b="chanbin"
StrComp(a, b, 1) ☞ 0을 반환합니다. 예제 : 
vbUpperCase(문자열을 대문자로), vbLowerCase(문
열을 소문자로), vbWide(1바이트문자를 2바이트로)

 ◈ 함수명 : String ◈ 함수명 : Switch
 형식 : String(number, character) 형식 : 
Switch(expr-1, value-1[,expr-2, value-2....])
 설명 : 지정된 길이의 반복되는 문자열을 반환합니다. 설명 : 식의 목록식을 평가한 후 
목록에서 True값을 갖는 최
최의 식과 관련된 값이나 식을 반환합니다.
 예제 : String(7, "*") ☞ "*******"을 반환합니다.
String(10, 65) ☞ "AAAAAAAAAA"을 반환합니다. 예제 
: Switch(CityName="London", "Englich", CityName=
"Roma", "Italian") ☞ 도시의 이름과 일치하는 언어이
 름을 반환합니다.

 ◈ 함수명 : SYD ◈ 함수명 : Tab
 형식 : SYD(cost, salvage, life, period) 형식 : Tab(n)
 설명 : 지정된 기간동안 자산의 감가상각값을 반환합니다. 설명 : Print메서드에서 
출력위치를 정합니다.
 예제 : cost(초기 자산비용을 지정), salvage(유용기간이 끝
나는 시점의 자산액수를 지정), life(자산의 유용기간
길이), period(자산의 감가상각을 계산하는 기간지정) 예제 : 
Print Tab(10) "chanbin"
☞ 10번째 칸에서부터 "chanbin"을 출력

 ◈ 함수명 : Tan ◈ 함수명 : Time
 형식 : Tan(number) 형식 : Time
 설명 : 각도의 탄젠트값을 반환합니다. 설명 : 현재의 시스템 시간을 반환합니다.
 예제 : Tan(30*pi/180) ☞ 탄젠트 30값을 구합니다. 예제 : 
MyTime=Time ☞ 현재 시스템 시간을 반환합니다.

 ◈ 함수명 : Timer ◈ 함수명 : TimeSerial
 형식 : Timer 형식 : TimeSerial(hour, minute, second)
 설명 : 자정 이후 경과한 초 수를 반환합니다. 설명 : 특정 시, 분, 초에 대한 
시간을 반환합니다.
 예제 : Finish=Timer ☞ 종료시간을 지정합니다. 예제 : 
TimeSerial(15, 30,27) ☞ 오후 3시 30분 27을 표현

 ◈ 함수명 : TimeValue ◈ 함수명 : TypeName
 형식 : TimeValue(time) 형식 : TypeName(varname)
 설명 : 시간 값을 포함한 Date값을 반환합니다. 설명 : 변수에 대한 정보를 제공하는 
문자형값을 반환합니다.
 예제 : TimeValue("3:20:32 PM") ☞ 시간을 반환합니다. 예제 : 
TypeName(IntVar) ☞ "integer"를 반환합니다.

 ◈ 함수명 : Ubound ◈ 함수명 : UCase
 형식 : Ubound(arrayname[, dimension]) 형식 : UCase
 설명 : 배열차원을 나타내는 첨자를 반환합니다 설명 : 지정한 문자열을 대문자로 
변환합니다.
 예제 : Dim Myarray(1 To 10)
Ubound(Myarray) ☞ 10을 반환합니다. 예제 : 
k="chanbin"
UCase(k) ☞ "CHANBIN"을 반환합니다.

 ◈ 함수명 : Val ◈ 함수명 : VarType
 형식 : Val(string) 형식 : VarType(varname)
 설명 : 문자열내에 포함된 수치를 숫자값으로 변환합니다. 설명 : 변수의 하위 형식을 
나타내는 값을 수치로 반환합니다.
 예제 : Val("3500") ☞ 3500을 반환합니다. 예제 : IntVar=235
VarType(IntVar) ☞ 정수를 나타내는 2를 반환합니다.

 ◈ 함수명 : Weekday ◈ 함수명 : Year
 형식 : Weekday(date, [firstdayofweek]) 형식 : 
Year(date)
 설명 : 평일을 나타내는 정수값을 반환합니다. 설명 : 연도를 나타내는 정수값을 
반환합니다.
 예제 : MyDate=#October 26, 2000#
k=Weekday(Mydate) ☞ Mydate가 목요일을 나타내기
때문에 5가 k에 반환됩니다. 예제 : Mydate=#October 
26, 2000# ☞ 날짜를 지정합니다.
k=Year(Mydate) ☞ 2000을 나타냅니다.



출처 : http://egloos.zum.com/juxh2p/v/2937858