[VB] 자동으로 OPTION EXPLICIT 명령문 사용하기
■ 자동으로 OPTION EXPLICIT 명령문을 사용하는 방법을 보여준다. 1. 도구 / 옵션 메뉴를 클릭한다. 2. "편집기" 탭에서 "변수 선언 요구" 항목을 체크한다.
■ 자동으로 OPTION EXPLICIT 명령문을 사용하는 방법을 보여준다. 1. 도구 / 옵션 메뉴를 클릭한다. 2. "편집기" 탭에서 "변수 선언 요구" 항목을 체크한다.
■ 날짜 상수를 사용하는 방법을 보여준다. ▶ 예제 코드 (VB)
1 2 3 4 5 6 7 |
Dim dteSource As Date dteSource = #5/17/2015# ' 2015년 5월 17일 Print dteSource |
■ 고정형 문자열을 사용하는 방법을 보여준다. ▶ 예제 코드 (VB)
1 2 3 4 5 6 7 8 9 10 11 |
Dim strText As String * 10 strText = "01234567890" Print strText [출력 결과] 0123456789 |
■ InputBox 함수를 사용하는 방법을 보여준다. ▶ 예제 코드 (VB)
1 2 3 4 5 6 7 |
Dim strInput As String strInput = InputBox("값을 입력하세요", "테스트", "Visual Basic") Print strInput |
■ MsgBox 함수를 사용하는 방법을 보여준다. ▶ 예제 코드 (VB)
1 2 3 4 5 6 7 8 9 10 11 |
MsgBox "한 줄에 출력" MsgBox "두 줄에 " + Chr(13) + "출력" MsgBox "두 줄에 " + Chr(10) + "출력" MsgBox "두 줄에 " + Chr(13) + Chr(10) + "출력" MsgBox "메시지 상자 예제", vbAbortRetryIgnore + vbExclamation |
■ 줄 연결 문자를 사용하는 방법을 보여준다. ▶ 예제 코드 (VB)
1 2 3 |
MsgBox "메시지 상자 예제", vbAbortRetryIgnore + vbExclamation |
■ Do Until ~ Exit Do ~ Loop문을 사용하는 방법을 보여준다. ▶ 예제 코드 (VB)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
Dim I As Integer I = 1 Do Until I > 10 Print I If I = 5 Then Exit Do End If I = I + 1 Loop |
■ 텍스트 파일을 읽는 방법을 보여준다. ▶ 예제 코드 (VB)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
Dim strFilePath As String strFilePath = "c:\test.txt" Open strFilePath For Input As #1 Do Until EOF(1) Line Input #1, strNewLine Print strNewLine Loop Close #1 |
■ 비주얼 베이직 환경을 MDI 환경에서 SDI 환경으로 설정하는 방법을 보여준다. 1. 도구 / 옵션 메뉴를 클릭한다. 2. 옵션 대화 상자에서 "고급"
■ SQL Server 연결을 구하는 방법을 보여준다. (윈도우즈 인증) ▶ SQL Server 연결 구하기 (윈도우즈 인증) 예제 (VB)
1 2 3 4 5 |
Dim pConnection As ADODB.Connection Set pConnection = GetSQLServerConnectionWithWindowsAuthentication("127.0.0.1", "testdb") |
▶ SQL Server
■ SQL Server 연결을 구하는 방법을 보여준다. ▶ SQL Server 연결 구하기 예제 (VB)
1 2 3 4 5 |
Dim pConnection As ADODB.Connection Set pConnection = GetSQLServerConnection("127.0.0.1", "testdb", "sa", "1234") |
▶ SQL Server 연결 구하기 (VB)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
Public Function GetSQLServerConnection(strDataSource As String, strInitialCatalog As String, strUserID As String, strPassword As String) As ADODB.Connection Dim pConnection As ADODB.Connection Dim strConnectionString As String Set GetSQLServerConnection = Nothing On Error GoTo ErrorLabel Set pConnection = New ADODB.Connection strConnectionString = "Provider=SQLOLEDB.1;Data Source=" + strDataSource + ";Initial Catalog=" + strInitialCatalog + ";User ID=" + strUserID + ";Password=" + strPassword + ";Persist Security Info=True" pConnection.Open strConnectionString On Error GoTo 0 Set GetSQLServerConnection = pConnection Exit Function ErrorLabel: End Function |
■ IDE 마우스 휠 스크롤 오류를 수정하는 방법을 보여준다. 1. 첨부 파일을 압축 해제한다. 2. "VBA Mouse Wheel Fix.reg" 파일을 더블 클릭해서
■ UBound 함수를 사용해 배열 상한 인덱스를 구하는 방법을 보여준다. ▶ 예제 코드 (VB)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
Dim nSourceArray(4, 5) As Integer ' 5×6 배열을 정의한다. Dim I As Integer Dim J As Integer Dim nValue As Integer For I = 0 To 4 For J = 0 To 5 nSourceArray(I, J) = nValue nValue = nValue + 1 Next J Next I MsgBox "Array : (" & UBound(nSourceArray, 1) & ", " & UBound(nSourceArray, 2) & ")" |
■ 법인등록번호를 검증하는 방법을 보여준다. ▶ 법인등록번호 검증하기 예제 (VB)
1 2 3 4 5 6 7 |
Private Sub CommandButton1_Click() MsgBox CheckCorporationRegistrationNumber("1801110330380") End Sub |
▶ 법인등록번호 검증하기 (VB)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 |
Public Function CheckCorporationRegistrationNumber(ByVal strSource As String) As Boolean Dim nCheck As Integer strSource = Trim(strSource) strSource = Replace(strSource, " ", "") strSource = Replace(strSource, "-", "") strSource = Replace(strSource, "/", "") If Len(strSource) <> 13 Then CheckCorporationRegistrationNumber = False Exit Function End If nCheck = nCheck + Mid(strSource, 1, 1) * 1 nCheck = nCheck + Mid(strSource, 2, 1) * 2 nCheck = nCheck + Mid(strSource, 3, 1) * 1 nCheck = nCheck + Mid(strSource, 4, 1) * 2 nCheck = nCheck + Mid(strSource, 5, 1) * 1 nCheck = nCheck + Mid(strSource, 6, 1) * 2 nCheck = nCheck + Mid(strSource, 7, 1) * 1 nCheck = nCheck + Mid(strSource, 8, 1) * 2 nCheck = nCheck + Mid(strSource, 9, 1) * 1 nCheck = nCheck + Mid(strSource, 10, 1) * 2 nCheck = nCheck + Mid(strSource, 11, 1) * 1 nCheck = nCheck + Mid(strSource, 12, 1) * 2 nCheck = nCheck Mod 10 nCheck = 10 - nCheck If nCheck > 9 Then nCheck = 0 End If If nCheck = Mid(strSource, 13, 1) Then CheckCorporationRegistrationNumber = True Else CheckCorporationRegistrationNumber = False End If End Function |
■ 폼 배경에 바탕 화면 이미지를 보여주는 방법을 보여준다. ▶ 예제 코드 (VB)
1 2 3 4 5 6 7 8 9 |
Private Declare Function PaintDesktop Lib "user32" (ByVal pDeviceContextHandle As Long) As Long Private Sub Form_Paint() PaintDesktop Me.hdc End Sub |
■ 단축 아이콘을 만드는 방법을 보여준다. 1. 프로젝트 / 참조 메뉴를 클릭한다. 2. 참조 대화 상자에서 "Windows Script Host Object Model" 항목을
■ 비프음을 연주하는 방법을 보여준다. ▶ 예제 코드 (VB)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
Private Declare Function Beep Lib "kernel32" (ByVal lFrequency As Long, ByVal lDuration As Long) As Long Private Declare Sub Sleep Lib "kernel32" (ByVal lMillisecond As Long) Dim strFrequencyList As String Dim lFrequency As Long Dim strDurationList As String Dim lDuration As Long Dim I As Long Const E4 = 329.6276 strFrequencyList = "iiihfihfffhidadddfhihfffhihiiihfihffihfdadddfhihffhiki" strDurationList = "aabbbfjaabbbbnaabbbfjaabcapaabbbfjaabbbbnaabbbfjaabcap" For I = 1 To Len(strFrequencyList) lFrequency = E4 * 2 ^ ((Asc(Mid(strFrequencyList, I, 1)) - 96) / 12) lDuration = (Asc(Mid(strDurationList, I, 1)) - 96) * 200 - 10 Beep lFrequency, lDuration Sleep 10 DoEvents Next I |
■ ComboBox 클래스에서 포커스 획득시 드롭 다운 리스트를 자동으로 보여주는 방법을 보여준다. ▶ 예제 코드 (VB)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
Private Sub Form_Load() Dim I As Integer For I = 1 To 10 ComboBox1.AddItem I Next I End Sub Private Sub ComboBox1_GotFocus() SendKeys "{F4}" End Sub |
■ Chr 함수를 사용하는 방법을 보여준다. ▶ 예제 코드 (VB)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
Dim strArray(10) As String Dim I As Integer For I = 0 To 10 strArray(I) = Chr(65 + I) Next I Print Join(strArray, "_") [출력 결과] A_B_C_D_E_F_G_H_I_J_K |
■ Join 함수를 사용하는 방법을 보여준다. ▶ 예제 코드 (VB)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
Dim strArray(10) As String Dim I As Integer For I = 0 To 10 strArray(I) = Chr(65 + I) Next I Print Join(strArray, "_") [출력 결과] A_B_C_D_E_F_G_H_I_J_K |
■ 제곱 값을 구하는 방법을 보여준다. ▶ 예제 코드 (VB)
1 2 3 4 5 6 7 |
Public Function GetSquare(nSource As Integer) As Long GetSquare = nSource * nSource End Function |
■ 팩토리얼을 구하는 방법을 보여준다. ▶ 예제 코드 (VB)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
Public Function GetFactorial(nSource As Integer) As Long Dim lFactorial As Long Dim i As Integer lFactorial = 1 For i = 2 To nSource lFactorial = lFactorial * i Next i GetFactorial = lFactorial End Function |
■ 파일을 복사하는 방법을 보여준다. ▶ 예제 코드 (VB)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
Dim strTargetFilePath As String Dim strSourceFilePath As String Dim I As Long Dim pByte As Byte strSourceFilePath = "c:\a.txt" strTargetFilePath = "c:\b.txt" Open strSourceFilePath For Binary As #100 Open strTargetFilePath For Binary As #101 I = 1 Do Until EOF(100) Get #100, I, pByte Put #101, I, pByte I = I + 1 Loop Close #100 Close #101 |
■ 서브 프로시저를 사용하는 방법을 보여준다. ▶ 예제 코드 (VB)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
Public Sub DisplayMessage(tbTarget, strMessage As String) On Error GoTo errorLabel If TypeOf tbTarget Is TextBox Then tbTarget.Text = strMessage End If Exit Sub errorLabel: Err.Raise vbError + 1001, Err.Description End Sub |