.


:




:

































 

 

 

 





. VBA. , . , .

3 :

Type

As String

As Date

As Integer

End Type

Sub ()

Dim User1 As

User1. = ""

User1. = #2/23/75#

User1. = Year(Date) - Year(User1.)

MsgBox User1. & ", " & User1. & _

" " & User1.

End Sub

Date, Year, . , Date, ( ), Date.

:

1. 3 _, , , (..., , , ). Excel C:\St\.xls :

1.1. InputBox:

:

...:

1.2. MsgBox :

1.3. , , , .

1.4. , : , , .

VBA ; . , , , . , .

. , . , , . - Variant, .

VBA 0 1. Option Base . , Option Base 0 0, a Option Base 1 1. Option Base 0. , 1.

4 :

1. ( Option Base 1 ):

Option Base 1

Sub ()

Dim Vals(3) As Integer

Vals(1) = Int(100 * Rnd())

Vals(2) = Int(100 * Rnd())

Vals(3) = Int(100 * Rnd())

MsgBox " : " & Vals(1) & ", " & _

Vals(2) & ", " & Vals(3)

End Sub

2. , Variant, :

Sub Variant()

Dim Data(3) As Variant

Data(1) = ""

Data(2) = #3/21/1947#

Data(3) = Year(Date) - Year(Data(2))

MsgBox Data(1) & ", " & Data(3) & ", " _

& Data(2)

End Sub

3. , :

Sub ()

Dim Data4(4 To 5) As Integer

Data4(4) = lnt(100 * Rnd())

Data4(5) = Int(100 * Rnd())

MsgBox " : " & Data4(4) & ", " _

& Data4(5)

End Sub

4. , , , .

Sub ()

Dim Data5() As Variant

Dim As Integer

' Data5 _

:

ReDim Data5(2)

Data5(1) = Int(100 * Rnd())

Data5(2) = Int(100 * Rnd())

MsgBox " : " & Data5(1) & ", " _ & Data5(2)

= Int(InputBox(" :", _

""))

' Data5 :

ReDim Data5(,3)

Data5(1,1) = ""

Data5(1,2) = #3/21/1947#

Data5(1,3) = Year(Date)-Year(Data5(1,2))

 

MsgBox " " & & " !"

MsgBox "1- : " & Data5(1,1) & ", : " & _

Data5(1,3) & ", : " & Data5(1,2)

End Sub

5. .

() Excel C:\St\.xls, (. 4‑1). . .

. 4‑1.

: (, ..., ), .

1) Sub _()
2) Dim () As String
3) DimAs Integer
4) DimAs Integer
5) = 0
6) = 3
7) ' :
8) While Cells(,2).Value <> ""
9) If Cells(,3).Value = "" Then
10) = + 1
11) ReDim Preserve (3,)
12) (1,) = Cells(,1).Value
13) (2,) = Cells(,2).Value
14) (3,) = Cells(,3).Value
15) End If
16) = + 1
17) Wend
18) ' _ :
19) WorkBooks.Add
20) For I = 1 To
21) Cells(I + 2,1).Value = (1, I)
22) Cells(I + 2,2).Value = (2, I)
23) Cells(I + 2,3).Value = (3, I)
24) Next I
25) Range("A1").Select
26) MsgBox " !", vbInformation
27) End Sub

10- , , 1 ( 11). . Preserve , .

: Preserve, . , :

ReDim Preserve (, 3)

!

: , .xls. , , , ( 4).

1) Sub __()
2) Dim () As String
3) DimAs Integer
4) DimAs Integer
5) Dimflag As Integer
6) ' C:\St\.xls
7) If Dir("C:\St\.xls") = "" Then
8) MsgBox " C:\St\.xls !", _
9) vbInformation
10) Exit Sub
11) End If
12) ' , .xls:
13) For I = 1 To Workbooks.Count
14) If Workbooks(I).Name = ".xls" Then
15) Workbooks(I).Activate
16) flag = 1
17) Exit For
18) End If
19) NextI
20) If flag = 0 ThenWorkbooks.Open Filename:= _
21) "C:\St\.xls"
22) ' , :
23) flag = 0
24) For I = 1 To Worksheets.Count
25) If Worksheets(I).Name = "" Then
26) flag = 1
27) Exit For
28) End If
29) Next I
30) If flag = 1 Then
31) Sheets("").Select
32) Else
33) MsgBox " !", vbInformation
34) Exit Sub
35) End If
36) Sheets("").Select
37) = 0
38) = 3
39) ' :
40) While Cells(,2).Value <> ""
41) If Cells(,3).Value = "" Then
42) = + 1
43) ReDim Preserve (3,)
44) (1,) = _
45) Cells(,1).Value
46) (2,) = _
47) Cells(,2).Value
48) (3,) = _
49) Cells(,3).Value
50) End If
51) = + 1
52) Wend
53) ' _ :
54) WorkBooks.Add
55) For I = 1 To
56) Cells(I + 2,1).Value = (1, I)
57) Cells(I + 2,2).Value = (2, I)
58) Cells(I + 2,3).Value = (3, I)
59) Next I
60) ' , _
61) :
62) ' Call (, 3)
63) Range("A1").Select
64) MsgBox " !",vbInformation
65) End Sub

:

1. 24 29 . 30 35 / .

2. 62 (. . 48).

Erase

, . , Erase , , , . Erase . Erase , .

Sub Erase()

Dim Data7(2) As Integer

Data7(1) = Int(100 * Rnd())

Data7(2) = Int(100 * Rnd())

MsgBox " : " & Data7(1) & ", " & Data7(2)

Erase Data7

MsgBox " : " & Data7(1) & ", " & Data7(2)

End Sub

. Erase. MsgBox , Data7 . Erase .

Sub Erase()

Dim Data8() As Integer

ReDim Data8(2)

Data8(1) = Int(100 * Rnd())

Data8(2) = Int(100 * Rnd())

MsgBox " : " & Data8(1) & ", " & Data8(2)

Erase Data8

MsgBox " : " & Data8(1) & ", " & Data8(2)

End Sub

Erase 8, Erase , . VBA Data8, .

LBound UBound

:

Sub Lbound_UBound()

Dim Data10(4 To 15) As Integer

MsgBox " " & LBound(Datal0) & "."

MsgBox " " & UBound(Datal0) & "."

End Sub

:

, ReDim, . , LBound UBound IsArray (. ).

5. . .
, .

VBA () , . :

, . , , .

VBA, , ; , .

, . .

5 :

1. DisplayMessage :

Sub ()

Dim Range1 As Range

Set Range1 = Worksheets(1).Range("A1")

Range1.Value = 500

DisplayMessage

End Sub

Sub DisplayMessage()

MsgBox " !"

End Sub

2. , ( 3):

Sub ()

Dim Range1 As Range

Set Range1 = Worksheets(1).Range("A1")

Range1.Value = 500

3.DisplayMessage

End Sub

Sub DisplayMessage()

MsgBox " !"

End Sub

.
: . :

19) Sub ()
20) Dim As Integer
21) Dim As String
22) = Application.SheetsInNewWorkbook
23) Application.SheetsInNewWorkbook = 1
24) Workbooks.Add
25) ActiveSheet.Name = ". "
26) For i = 1 To 10
27) = Int(100 * Rnd())
28) Cells(i, 1).Value =
29) Next i
30) ' :
31)
32) Sheets.Add After:=Worksheets(Worksheets.Count)
33) Worksheets(1).Select
34) Range("A1").Select
35) Application.SheetsInNewWorkbook =
36) ActiveWorkbook.SaveAs Filename:="C:\St\ .xls"
37) MsgBox " !"
38) End Sub

.

:

. , 31- :

Call





:


: 2016-03-28; !; : 405 |


:

:

, , 1:10
==> ...

1860 - | 1772 -


© 2015-2024 lektsii.org - -

: 0.05 .