.


:




:

































 

 

 

 


:

:

:

:

 

-08
(, , )
-
.
, -
xls.
-
, , -
, , , -
,
, .
. -
VBA Excel 2003.: 2005. 800.: . . ISBN 5-8459-0771-3();
. + = : . . .: ,
1985 406 ., .
 
08.06.2011  
     
28.06.2011  
 
    ..
  ()   (, . . )
      ..
  ()   (, . . )
       
    ..
  ()   (. . .)
       
      : 33 ., 6 ., 1 ., 3 .   xls-. , MS Office, , , , , . , , . , .   , EXCEL, VBA, ,      
            080403.1.01.08/008.  
             
       
  ..              
  . ..     , . , -08  
    ..      
  . . ..      
      ......7 1 腅...9 1.1 ...9 1.2 ..11 1.3 .........11 2 EXCEL....12 2.1 ⅅ.....12 2.2 ⅅ.....13 2.3 腅.......13 2.4 Range. 13 2.4.1 Range14 2.4.2 Cells. 14 2.4.3 Offset14 3 VBA....16 3.1 VBA..16 3.2 腅...16 3.3 ...................... 17 3.4 充.... 18 3.4.1 .... 18 3.4.2 .....19 3.4.3 .. 19 3.5 ...... 19 3.5.1 򅅅..... 20 3.6 .......... 20 3.6.1 ..... 20 3.6.2 .... 20 3.6.3 ⅅ 21 3.6.4 ⅅ 21 3.6.6 腅 22 3.6.6.1 With-End With... 22 3.6.6.2 For Each-Next.... 22 3.6.7 .. 22 3.6.7.1 GoTo.......... 23 3.6.7.2 If-Then.... 23    
  080403.1.01.08/008.  
  . . -08 ..        
           
      3.6.7.3 Select Case..... 23 3.6.8 酅.... 24 3.6.8.1 for-next..... 24 3.6.8.2 do while do until.... 24 3.6.9 腅... 25 3.6.9.1 ... 25 4 ...... 26 4.1 酅..... 26 4.2 ... 27 4.2.1 , , , .. 27 4.2.2 .. 28 4.2.3 ...................... 28 4.3 充....31 4.4 充.......................................... 31 4.4.1 酅. 31 ......33 . ....... 34 . 酅.......................40 . .... 49    
  080403.1.01.08/008.  
  . . -08 ..        
           
    , , ,   BASIC Beginners All-purpose Symbolic Instruction Code VB Visual Basic VBA Visual Basic for Application (VB ) VBE Visual Basic Editor ( VB)      
  080403.1.01.08/008.  
  . . -08 ..        
           
                                                                     

 

, : , , , . , .. , , .

:

- , , , ;

- ;

- , , - , .

, , , : , , , . : , , . , , , , , , .

:

- , , ;

- , , , .

, , , , , , .

, , , , .

MS Excel Microsoft, , , . , , , , , MS Excel.

, , , , . , 1C, MS DAX (Axapta) , , . , , , .

, , MS Excel , , , .


1

 

1.1

 

, : , ( 1.1) (, ) ( 1.2, 1.3).

:

- ;

- ( ), ;

- ( ), .

, . , , ( 1.1).

 

1.1

 

1.2 1.3 , , , .

 

1.2

 

 

1.3

 

, , () . () .

 

1.2

 

, , , , , , , , .

 

1.3

 

, , , 1, , , . , , 1, .

, , , , , , , , .

, VBE, MS Excel, , , . VBA Excel , , .


2 EXCEL

 

MS Office . , , .

, Excel , , , , , , , , . VBA .

 

2.1

 

Excel , , , , , .

. , Excel Application, , , Workbook ( ). Workbook , , Worksheet ( ) Chart (). Worksheet , , Range (), PrivotTable ( ) .. Excel.

Application (.. Excel) . , Application:

- Workbooks Workbook ;

- Windows Window ;

- AddIns AddIn .

. , Workbooks Workbook, Workbook , :

- Worksheets Worksheet ;

- Charts Chart ;

- Names Name .

, , . Worksheets Worksheet Workbook. Worksheet , :

- ChartObjects ChartObject ;

- Range ;

- PageSetup ;

- PivotTables PivotTable .

, , -. , , 1.xls :

Application.Workbooks (1.xls)

1.xls Workbooks. Workbooks Application. , 1 1.xls:

Application.Workbooks(1.xls).Worksheets(1).Range(A1)

 

2.2

 

. , , Value Name. .

, . - , . , Range ClearContents. .

 

2.3

 

VBA .

( ).

, . , :

Worksheets (1) Worksheets(1)

, For-Each In, .

 

2.4 Range

 

, , VBA, , .

Range Worksheet . Range VBA:

- Range Worksheet Range;

- Cells Worksheet;

- Offset Range.

 

2.4.1 Range

 

Range Range. :

- .Range(1);

- .Range(1,2).

Range : Worksheet Range. 1 2 , Excel ( ) ( ).

 

2.4.2 Cells

 

Cells. Range, Cells Worksheet Range. Cells:

- .Cells(_, _);

- .Cells(_);

- .Cells.

, .

, , . , A1:B2, , A2.

(, Range).

 

2.4.3 Offset

 

Offset ( Range Cells) Range. , Offset Range . :

- .Offset(_,_).

Offset Range. ( ), ( ) .

: Offset . , , Worksheets(1).Range(A1:B10).Cells(1), : , , , A1:B10, , . . , With, , Offset, .

 


3 VBA

 

, , , , VBA . VBA , for, do-while, do-until, , .

 

3.1 VBA

 

VBA Microsoft, MS Office, .

VB (Visual Basic) Microsoft, Windows. 1991 . Visual Basic BASIC, , VBA.

VB, BASIC . , . , BASIC 1960- . BASIC , .

VBA For, , GoTo.

 

3.2

 

, . VBA . ( , ).

. VBA , , .

, . , , .

 

3.3

 

VBA , . . , , .. .

3.1 VBA .

 

3.1 VBA

Byte 1 0 255
Boolean 2 True () False()
Integer 2 -32768 32767
Long 4 -2147483648 2147483647
Single 4 -3,40282338 -1,4011298-45 ( ); 1,401298-45 3,40282338 ( )
Double 8 1,79769313486232308 4,94065645841247-324 ( ); 4,94065645841247-324 1,79769313486232308 ( )
Currency 8 922337203685477,5808 922337203685477,5807
2.1 VBA ()
Decimal 14 +/79228162514264337593543950335 ; +/7,9228162514264337593543950335 28-
Date 8 1 100 31 9999
Object 4
String ( ) 10 + 0 ~ 2.
String ( ) 1 ~65400
Variant () 16 Double
Variant () 22 + 0 ~ 2 .

 

, : , , .. VBA , .

, , VBA, Variant. Variant , , : , , . , , Variant . , , , , , .

VBA , .. , , , .. , Variant, .

, .

, , , .

, Option Explicit, , , , .

 

3.4

 

VBA . , , . .

. , . .

 

3.4.1

 

VBA , :

- , , ;

- VBA ;

- ;

- (#,$,%,& !) ;

- 254 .

 

3.4.2

 

Dim. Sub End Sub. Dim Sub, .

Dim BASIC ( Dimension ). VBA Dim , .

Dim ( . ):

Dim <_1> [As <_]

[,<_2> [As <_]]

[., <_n> [As <_] ]

As , Variant.

, , VBA , .

 

3.4.3

 

, . :

- ( Dim Static);

- ( Dim Private);

- ( Public).

 

3.5

 

. , .

 

3.5.1

 

Const, Dim ( . ):

Const <_1> [As <_] = <>

[,<_2> [As <_] = <> ]

[., <_n> [As <_] = <>]

 

. .

 

3.6

 

, ; , .

 

3.6.1

 

, , Dim Public. , . :

Dim <_> ([[_ To] <_>]) [As <_>]

, , , :

Option Base <__>

 

3.6.2

 

VBA 60- , . , :

Dim <_> ([_1][,_2][][,_60]) [As <_>]

:

[[<_> To] <_>]

, :

<_> (<__1>[,][,__60])

:

MyArray(3,4)

 

3.6.3

 

. :

Dim <_> () [As _]

, , ReDim, VBA, .

 

3.6.4

 

, , , . :

- ;

- .

, , Dim Public, , , Set:

Set <_> = <>

 

3.6.5

 

VBA , , . . Type :

Type <__>

<_1> [As <_>]

[, <_2> [As <_>] ]

[,]

[,<_n> [As <_>]

End Type

 

, dim public.

 

3.6.6

 

VBA , :

- With-End With;

- For Each-Next.

.

 

3.6.6.1 With-End With

 

With-End With . , . :

With Range(A1:B10).Font

.Name = Times New Roman

.Size = 12

.Bold = True

End With

1:B10, , ( , ) Range(A1:B10).Font, With , , With End With, .

 

3.6.6.2 For Each-Next

 

, . For Each-Next (.. , , , ).

For Each-Next :

For Each-Next <> In <>

[]

Next []

 

3.6.7

 

VBA . . , , , . :

- GoTo;

- If-Then;

- Select-Case;

- For-Next;

- Do While;

- Do Until.

 

3.6.7.1 GoTo

 

GoTo. . , , , .

VBA , GoTo .

GoTo :

GoTo <>

:

: i =i+1

If (i<7)Then GoTo End If

 

3.6.7.2 If-Then

 

, , , . :

If <> Then <_> [Else _]

, Then, Else, If-Then

 

3.6.7.3 Select Case

 

Select Case . , If-Then-Else. Select Case :

Select Case <_>

[Case <_>

[]]

[Case Else

[__]]

End Select

 

3.6.8

 

. , , , GoTo. , GoTo . , VBA , . GoTo , BASIC. VBA :

- for-next;

- do while;

- do until.

Exit, : for-next exit for, do while do until - end do.

.

 

3.6.8.1 for-next

 

fornext . , , .

:

For <> = <> To <> [Step <>]

[]

Next []

 

3.6.8.2 do while do until

 

Do while . For-Next, Do While , , Do While :

Do [While <>]

[]

Loop

Do

[]

Loop [While <>]

Do While Do Until : Do While , , Do Until , ( , ).

: , , , , .

, , .

 

3.6.9

 

VBA, VBA, , VBE. .

, , . (, , Exit).

. , . , Excel. , .

, , , , Sub, Function.

, . , , =. =MyFun() , MyFun Public.

 

3.6.9.1

 

, Sub, :

[Private | Public ] [Static] Sub <_> ([_])

[]

End Sub

:

- private , , ;

- public , .

 


4

 

VBA Excel, , .

, , :

1. , .

a. , . .

b. .

2. .

a. , , , .

b. .

c. .

3. .

4. .

a. .

b. .

5. .

a. ( ).

b. .

c. .

d. .

, , , , , .

 

4.1

 

1.1, 1.2 1.3 xls , . , , , , , , , , , , .

, , . , , , .

 

4.2

 

, , .

 

4.2.1 , , ,

 

4.1, , , . , , , . .

, . , , .

:

1. .

2. , , .

3. , , .

4. , , , , . , , .

5. , .

6. , , .

, :

1. .

2. , , , , .

3. .

4. .

5. , , . , .

6. , , , , , . , , , , .

R- .

 

4.2.2

 

, , , , , , , .

, , . , .

, ( 4.1):

- , ();

- , ();

- , .

 

4.2.3

 

, , , . :

1. .

2. , .

. , , .

4.1

 

, , .

, : , , , , ( 4.2)

, () :

Sub ()

1, 2, 6, 3, 4, 5, 6, 20

End Sub

, , , , :

Sub ()

6, 7, 6, 3, 4, 5, 2, 20

End Sub

 

 

4.2 ,

 

4.3 : , (), , ().

 

 

4.3

 

4.3

 

. , , , , : ( ), : ( ), .

 

4.4

 

, , , .

.

 

4.4.1

 

, , . , , , . Offset With End With.

, :

- ;

- ;

- , .

 


 

Excel VBA , . , , , :

- , ;

- , , , , , ;

- , , , . , , ;

- , , ;

- , , , , ;

- , , , , .

, , , , , .


.

 

. .

.

, , (), . , , , . , . .

 

.1

 

xls, , 컻 : , , () ( .3).

, , , , .

, , , , , , , ( .1, .2). , , .

 

 

.1 , . ..

 

.2 MS Excel

 

 

.3 ,

, ( .4). , , , ().

 

 

.4

 

, , .

 

.2 ,

 

, , , . , , .

 

.2.1

 

, , , .

.5 , 1.

, , , Debug, ( .6). , , (), , .

, , , ( .7).

 



<== | ==>
| -
:


: 2016-12-28; !; : 532 |


:

:

.
==> ...

1619 - | 1590 -


© 2015-2024 lektsii.org - -

: 0.525 .