Limetime's TimeLine
article thumbnail
Published 2018. 6. 10. 14:02
(12) 내장 함수 Visual Basic
반응형

(12) 내장 함수

ㆍ내장 함수

: 자주 사용되는 기능의 명령어들을

하나의 함수(Function)로 만들어 제공한다.


<함수의 선언문>

Function 함수명([인수, 인수, ...]) As 자료형

<의미>

0개 이상의 인수(들)를 입력 받아 함수명의

기능을 수행하여 자료형의 결과값을

반환한다.


ㆍVB에 미리 정의된 함수

● 수치 함수

Int, Fix, Abs, Sqr, Sgn, Rnd

● 문자열 함수

Lcase, Ucase, Left, Right, Mid, Len, String, Chr

Ltrim, Rtrim, Trim, Space, Val, Str, Instr, Asc

● 날짜 시간 함수

Date, DateAdd, DateDiff, DateValue, Day, Month, Year

WeekDay, Now, Time, Hour, Minute, Second

● 그래픽 관련 함수

QBColor, RGB


ㆍ수학 함수

: 산술적인 계산과 관련된

기능을 수행하는 한다.

Int(x)

x를 정수로 변환하는 함수.

x보다 크지 않은 최대의 정수를 반환

EX) Int(4.5)  4

Int(-4.6)  -5 

Fix(x)

x를 정수로 변환하는 함수.

x의 소숫점 이하의 값을 없앤 정수 값을 반환

EX) Fix(4.5)  4

Fix(-4.6)  -4

Abs(x)

x의 절댓값을 반환

EX) Abs(4.5)  4.5

Abs(-4.6)  4.6

Sqr(x)

x의 제곱근(루트)을 반환

EX) Sqr(4)  2

Sqr(-4.6)  Error

Sgn(x)

x의 부호값을 반환하는 함수

x가 양수일 때, 1 반환

x가 음수일 때, -1 반환

x가 0일 때, 0 반환

EX) Sgn(4.5)  1

Sgn(-4.6)  -1

Sgn(0)  0

Round(x, n)

x를 소수점 n+1자리에서 반올림하여

소수점 n자리까지 표현 한 수를 반환

Rnd()

0~1 사이의 난수값을 반환

※ 정수형 난수값 발생 수식

: Int(((상한값-하한값+1)*Rnd)+하한값)

※ Randimize문 

: 실행 시 마다 다른 난수를 얻을 때 사용


ㆍ문자열 함수

: 문자열 조작 및 추출 등의 기능을 한다.


Lcase(문자열)

문자열을 소문자로 변환

EX) LCase("Visual Basic")

  "Visual Basic"

LCase("KOREA")

  "korea"

Ucase(문자열)

문자열을 대문자로 변환

EX) UCase("Visual Basic")

  "VISUAL BASIC"

UCase("abcdefg")

  "ABCDEFG"

Len(문자열)

문자열의 길이를 반환

EX) Len("Visual Basic")

  12

Chr(숫자)

지정된 아스키 코드 값에 대응하는

문자를 반환

EX) Chr(37)

 "%"

ASC(문자열)

문자열의 첫 글자에 해당하는

아스키 코드 값을 반환

EX) Asc("Visual")

 86

Val(문자열)

문자열 내의 문자열을

숫자로 변환

EX) Val("04650")

 4650

Str(숫자)

숫자를 문자열로 변환

EX) Str(15+8)

  "23"

Left(문자열, n)

왼쪽에서 n개의 문자를 추출하여 반환

EX) Left("Visual Basic", 6)

  "Visual"

Right(문자열, n)

오른쪽에서 n개의 문자를 추출하여 반환

EX) Right("Visual Basic", 5)

 "Basic"

Mid(문자열, n, m)

왼쪽에서 n번째부터 m개의 문자를

추출하여 반환

EX) Mid("Visual Basic", 8, 2)

  "Ba"

Ltrim(문자열)

문자열의 왼쪽에 있는

공백을 없앰

EX) LTrim("Visual ")

 "Visual"

Rtrim(문자열)

문자열의 오른쪽에 있는

공백을 없앰

EX) RTrim(" Visual ")

 " Visual"

Trim(문자열)

문자열의 왼쪽, 오른쪽

공백을 없앰

EX) Trim(" Visual ")

 "Visual"

Space(n)

문자열의 길이를 구하는 함수

EX) Space(5)

  "     "

Instr([n], 문자열1, 문자열2)

문자열1의 n번째 문자 이후에

문자열2가 있는 위치 반환

※ N(시작 인덱스)는 생략 가능

EX) Instr(5, "Visual Basic", "5")

 10

String(n, 문자)

주어진 문자를 반복 출력

EX) String(5, "*")

 "*****"


ㆍ날짜 시간 함수


Date

시스템이 발생하는 현재의 날짜 반환

EX) Date 2018-06-10

DateAdd("{년|월|일}",n,"yyyy-mm-dd")

or DateAdd("{시|분|초}",n,"00:00:00")

지정된 날짜 또는 시간의 원하는

구성요소에 간격 n을 더한 날짜(시간)을

반환

EX) DateAdd("m",3,"2018-06-10")

2018-06-10

DateAdd("s",40,"12:00:00")

오후 12:00:40

※ 년-y, 월-m, 일-d, 시-h, 분-n, 초-s

DateDiff("{년|월|일}", 날짜1, 날짜2)

or DateDiff("{시|분|초}", 시간1, 시간2)

두 날짜(시간) 사이의 간격 수를 반환

EX) DateDiff("m","2018-06-10", "2020-08-10"

 26

DateDiff("s","8:00:00", "10:00:00")

 7200

DateValue("yyyy-mm-dd")

문자열을 날짜로 변환

EX) DateValue("yyyy-mm-dd")

2018-06-10

Day("yyyy-mm-dd")

문자열이나 수에 해당하는 일(day)을 반환

EX) Day("2018-06-10")

 10

Month("yyyy-mm-dd")

문자열이나 수에 해당하는 월(month)을 반환

EX) Month("2018-06-10")

 06

Year("yyyy-mm-dd")

문자열이나 수에 해당하는 연도(year)을 반환

EX) Year("2018-06-10")

 2018

WeekDay("yyyy-mm-dd")

날짜에 해당하는 요일을 숫자로 반환

(일-1,월-2,화-3,수-4,목-5,금-6,토-7)

EX) WeekDay("2018-06-10")

 1

Now

현재의 시간과 날짜를 반환

(yyyy-mm-dd {오전/오후} 00;00;00)

EX) Now

2018-06-10 오후 7:00:00

Time

시스템이 발생하는 현재의 시간을 반환

({오전/오후} hh:mm:ss)

EX) Time

 오후 7:00:30

Hour

시간을 나타내며, 0~23사이의 수를 반환

EX) Hour("19:20:40")

19

Minute

분을 나타내며, 0~59 사이의 수를 반환

EX) minute("19:20:40")

☞ 20

Second

초를 나타내며, 0~59 사이의 수를 반환

EX) Second("19:20:40")

40


ㆍVB의 색상

: 폼과 컨트롤의 속성은

속성창에서 16진수로 표시하거나

색상 팔레트 대화창을 이용하여 설정

* 색상과 관련된 속성

● BackColor

: 폼과 컨트롤의 바탕색을 지정

● BorderColor

: 컨트롤의 테두리 색을 지정

● ForeColor

: 폼/컨트롤 위에 그려지는

그래픽/텍스트의 색 지정

● FillColor

: 사각형/원의 내부를 채우는

색 지정


ㆍRGB 함수

: 프로그램 수행 시 오브젝트 색상을

결정하는 색상 번호를 반환한다.

EX) RGB함수, QBColor 함수


<형식>

RGB(Red, Green, Blue)

각 파라미터의 값 : 0 ~ 255

* 0 : 색상이 없다.

* 255 : 해당 색상의 최대 명암도

<예>

Black = RGB(0, 0, 0)

Red = RGB(255, 0, 0)

Yellow = RGB(255, 255, 0)

White = RGB(255, 255, 255)


ㆍ형변환 함수

: 데이터의 자료형을 변환한다.

CBool(식)

식을 Boolean형으로 변환

CByte(식)

식을 Byte형으로 변환

CInt(식)

식을 Int형으로 변환

CSng(식)

식을 Single혀으로 변환

CLng(식)

식을 Long형으로 변환

CDble(식)

식을 Double형으로 변환

CStr(식)

식을 String형으로 변환

CDec(식)

식을 Decimal형으로 변환

CCur(식)

식을 통화형으로 변환

CDate(식)

식을 날짜형으로 변환

CVar(식)

식을 가변형으로 변환


ㆍ입ㆍ출력 함수

MsgBox 함수 : 사용자에게 메시지 전달

Input 함수 : 사용자로부터 데이터를 입력받음

Print 함수 : 프로그램의 결과 값을 사용자에게 출력


[MsgBox]

<형식>

MsgBox 메시지, [버튼과 아이콘의 종류],[제목표시줄 내용]

*메시지는 사용자에게 알리고자 하는 내용을

문자열로 작성하는 인수.

*[버튼과 아이콘의 종류]는 선택적 인수로

생략하면 [확인] 버튼(0-VbOkOnly)으로 설정.

*[제목표시줄 내용]은 생략하면

응용프로그램의 이름으로 표시됨.


<구성>

● 버튼의 종류

VbOkOnly

상수 = 0, 확인 버튼

VbOkCancel

상수 = 1, 확인ㆍ취소 버튼

VbAbortRetryIgnore

상수 = 2, 중단ㆍ다시시도ㆍ무시 버튼

VbYesNoCancel

상수 = 3, 예ㆍ아니오ㆍ취소 버튼

VbYesNo

상수 = 4, 예ㆍ아니오 버튼

VbRetryCancel

상수 = 5, 다시시도ㆍ취소 버튼


● 아이콘의 종류

VbCritical

상수 = 16, 치명적 에러 메시지

VbQuestion

상수 = 32, 질의 메시지

VbExclamation

상수 = 48, 경고 메시지

VbInformation

상수 = 64, 정보 메시지


● 반환 값

: 사용자가 버튼을 눌렀을 때

사용자의 응답에 따라 처리를

달리 하고 싶다면 아래와 같은

형식으로 MsgBox함수를

사용해 반환 값을 받는다.

변수 = MsgBox(메시지,[버튼과 아이콘의 종류],[제목표시줄 내용])


○ 리턴 값

VbOk

상수 = 1, 확인 버튼 클릭 시

VbCancel

상수 = 2, 취소 버튼 클릭 시

VbAbort

상수 = 3, 중단 버튼 클릭 시

VbRetry

상수 = 4, 다시 시도 버튼 클릭 시

VbIgnore

상수 = 5, 무시 버튼 클릭 시

VbYes

상수 = 6, 예 버튼 클릭 시

VbNo

상수 = 7, 아니오 버튼 클릭 시


[INPUT 함수]

: 프로그램 실행 중에 사용자에게서 데이터를

입력 받기 위해 사용한다.

<형식>

InputBox 메시지,[제목표시줄 내용],[기본값]

변수=InputBox(메시지,[제목표시줄 내용],[기본값])


<구성>

[제목표시줄의 내용]은 제목표시줄에 나올 내용.

[기본값]은 입력 필드에 나오는 내용.


[Print 함수]

: 간단하게 데이터를 출력할 때 사용한다.


<형식>

Print 데이터1 [,데이터2,데이터3,ㆍㆍㆍ]

Print 자료1, 자료2, 자료3

Print 자료1; 자료2; 자료3


<구성>

Print 함수의 사용 형식에서

데이터1과 데이터2 사이에 있는

콤마(,) 대신 세미콜론(;)을 사용할 수 있다.

출력할 데이터 사이에 콤마를 사용할 경우

일정한 간격을 띄우고 데이터를 출력하고,

세미콜론을 사용할 경우에는 붙여서 출력한다.


<Print문과 함께 쓰이는 것들>

Tab(N)

화면의 가장 좌측에서 N번째 칸에 출력


Spc(N)

이전에 출력된 문자열 다음부터 N개의

공백을 출력


반응형
profile

Limetime's TimeLine

@Limetime

포스팅이 좋았다면 "공감❤️" 또는 "구독👍🏻" 해주세요!