充...3
1. ..4
2. .....................6
3. 腅..8
4. .11
5. - 充..12
6. 셅15
7. ...16
8. ...17
9. 充.18
10. 腅.19
11. Windows API ( )..21
12. 腅.23
13. ()......24
14. 25
Microsoft Excel - Visual Basic for pplications (VBA). , Microsoft Office. , , , / .. , .
VBA . , . , , API- Windows. , VBA , Microsoft . , Excel, Word Windows, Microsoft Project. . , , , , , . Microsoft, . VBA, .
Visual Basic , , , .
(=) . Let . BASIC , Visual Basic . , Set. : nVar = 10, Let iCount = 20, Set refDouble = objClass.
|
|
, C, . A = B = C , A, B C . VB B = C A True False, 0 −1, .
(+), (-), (*), (/)
(^). : 2 ^ 3 = 8
(\). , ( ) . : 5 \ 2 = 2
(Mod). , . : 5 Mod 2 = 1
(=). : If nVar = 10 Then
, , (> <). : If nVar > 10 Then
(>= <=). : If nVar >= 10 Then
(<>). : If nVar <> 10 Then
(Is). , . : If obj1 Is obj2 Then
(Like). , . : If strEmail Like "*@*.*" Then
(And) , . : If (2 * 2 = 4) And (2 * 3 = 6) Then
(Or) . : If (2 * 2 = 5) Or (2 * 2 = 4) Then
(Not) True, . : If Not(2 * 2 = 5) Then
(Xor) E1 Xor E2 True, E1 = True E2 = True, False.
(Eqv) , True, .
(Imp) False, E1 = True E2 = False, True.
(+) . , . , , , . , (&) .
(&) . , str = "10" & 20 1020, 30. (+) , VB 10 10, , .
Visual Basic, , , . , GoSub Return, BASIC, .
:
'
If <> Then [___]
|
|
'
If <> Then [___] Else [___]
'
If <> Then
[___]
ElseIf <2> Then
[__2_]
ElseIf <N> Then
[__N_]
Else
[___]
:
For <> = <> To <_> [Step <_>]
[_]
[Exit For] '
Next []
: 1 100
For I = 0 To 100 Step 2
Sum = Sum + I
Next
:
For Each <> In <>
[_]
[Exit For] '
Next []
:
Dim strItem As Variant
For Each strItem In Array("", "", "")
Print strItem
Next
:
Do While <> ' ,
[_]
[Exit Do] '
Loop
Do Until <> ' ,
[_]
[Exit Do]
Loop
While <> ' ,
[_]
Wend
:
Open "file.txt" For Input As #1
Do While Not EOF(1) ' True,
Line Input #1, strBuffer '
Debug.Print strBuffer '
Loop
Close #1
:
Do
[_]
[Exit Do]
Loop While <>
Do
[ ]
[Exit Do]
Loop Until <>
. .
Sub End Sub, . Visual Basic, , , . , :
Private Sub Command1_Click() ' ""
...
End Sub
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) '
...
End Sub
Visual Basic Windows. , WM_MOUSEMOVE Form_MouseMove : , . Windows, . , . Visual Basic . , , .
VB Function End Function. , . , , Exit Sub Exit Function. Visual Basic 6.0 , , , , , . , , , .
|
|
:
Private Sub Main()
Dim RetX1 As Double, RetX2 As Double
Dim strStatus As String
strStatus = SolveQuadraticEquation(4, 6, 2, RetX1, RetX2) ' 4*X^2 + 6*X - 2 = 0
'
MsgBox ": " & strStatus & vbCrLf & _
"X1 = " & RetX1 & vbCrLf & _
"X2 = " & RetX2, vbInformation
End Sub
'
Public Function SolveQuadraticEquation(ByVal A As Double, _
ByVal B As Double, _
ByVal C As Double, _
ByRef X1 As Double, _
ByRef X2 As Double) As String
Dim D As Double
D = (B * B) - (4 * A * C) '
If D >= 0 Then
X1 = (-B - Sqr(D)) / (2 * A) '
X2 = (-B + Sqr(D)) / (2 * A)
SolveQuadraticEquation = " " '
Else
SolveQuadraticEquation = " < 0. "
End If
End Function
ByVal A, B C. , . ByRef, , . , , . Visual Basic - , .
Visual Basic . : (Form), (Module) (Class Module).
( *.frm) Visual Basic. , : , , . , , . , , .
( *.bas) , , . ( ) : , , , . , , ; , .
( *.cls) - Visual Basic. . , . , , , , . Class_Initialize Class_Terminate, .
-
Visual Basic. . VB , , , , . . , , .
|
|
. New . CreateObject . Object, Set. ., . , WithEvents, .
Microsoft Scripting Runtime, :
Public Sub Main()
Dim objFSO As New FileSystemObject ' , New
Dim objWindows As Folder
Set objWindows = objFSO.GetFolder(Environ("SYSTEMROOT")) ' GetFolder
MsgBox " Windows: " & objWindows.Path '
MsgBox " : " & Format(objWindows.DateCreated, "YYYY-MM-DD H:mm:ss")
Dim sTextFilePath As String
Dim objTS As TextStream
sTextFilePath = objFSO.BuildPath(Environ("TEMP"), " .txt") ' String
objFSO.DeleteFile sTextFilePath, True
Set objFSO = Nothing ' Nothing, ,
Set objWindows = Nothing 'VB ,
Set objTS = Nothing
End Sub
Visual Basic . , Java C++, Visual Basic .
, , . Visual Basic , , , . Visual Basic , [2]
Visual Basic. , Public, Private Friend, , , , .
. Visual Basic Implements. . , .
, VB . .
' ITransport.cls
Public Function GetMaxSpeed() As Long
End Function
' CAuto.cls
Implements ITransport '
Private Function ITransport_GetMaxSpeed() As Long
ITransport_GetMaxSpeed = 700
End Function
' Program.bas
Option Explicit
Public Sub Main()
Dim T As ITransport ' ITransport
Set T = New cAuto
WhatTransportSpeed T ' , ,
Set T = New cFly
WhatTransportSpeed T
End Sub
' , , ITransport
Public Sub WhatTransportSpeed(Transport As ITransport)
MsgBox " : " & Transport.GetMaxSpeed()
End Sub
:
.
2 .
.
, .
|
|
. , , , .
, , IntelliSense.
.
Visual Basic 6.0
. Visual Basic, . , , , , VB .
, , (Immediate Window), (Locals Window), (Watch Window), (Call Stack). .
Visual Basic :
Stop
, ()
,
Ctrl + Break
P-Code (P-), Back-End x86- . Visual Basic , . , , Visual Basic, MSVBVMXX.DLL, XX-
P- - , - . , . , P-Code, . Visual Basic, , P-, , , : . PE, , - . P- , .
Native- Visual Basic 5.0. , P-. : , , , , , Visual Basic. , , Visual Basic. . , Native- . . : , . .
Microsoft Visual Basic 6.0 Package & Deployment Wizard, Visual Basic. Setup Wizard, P&D Wizard , , , . , . , .
VB , :
Visual Basic (MSVBVM60.DLL), .
, ActiveX Controls, Microsoft Windows. , , regsvr32.exe , DllRegisterServer, COM- .
, , .