Upload
others
View
3
Download
0
Embed Size (px)
Citation preview
��������. ���������� ��������� �
��������
���������� ���������
�������������
���������������� ����VBA
��������������������������������������
���������������������������������VBA
������������������������
���������� �� �������������� ������ ��� ����� ���� ��� �������� �
��������
�����������������������������������������������
������ ������������� �� ������ ��� ����������� VBA� �� ����������� �� ��������
Visual� Basic�� ��� ���� ���� ������ �� �������� �� �������!� ������ "� ����� �����
������ ������������������������������������������������ ���VBA�
��������������������������������� VBA��� ��� ����� ��� ��� �� ����� ���������� ���� ����!����� �
���#�� ������������� ��� ��� �� ����� ����������������� ����� ����� ��!���� �
���� ����� ��� ���� �� �����!���� �������� ���� ��� �� ���!� � ������ ��������!�
��� ���
���������������$��� � ���������� ������� � VBA� ������ ���������� ��������� �������
������� �� �� ����� �������� ��� �������� � #�������� �� ������� � ���
����! ������ �������� ��������� ������� ������� �� ���� �� ��� ��� ���������� "
������� ����� ���������� ����� �� � ������ �� � ������ ��� ���� ������ Excel� �
%������������ � ����� ��� ����� ���� �� �� #�!�� ������ &� ���� �����!���
����� �������� ��#�%�������� �������#�%����'����� ����(���������� �����
�������� ��� �������������
��������. ���������� ��������� �
����������������������Excel����� ���������������
$��� ��������� ���� ������������� ��������� Excel�� �������� ��� �� ��� ������� �� �������� ����� �� � ������ ������ �� ��� ����� ����� � � ��� ����#�� �����
������ ������#���'������ �������� ������������(�����% ������������������
����� �������������������� ��������������������� ������� �������������
���� ���� ��� � ��������� �������� '����� �������� ������������ ��������� �������� ����������� ������������ ������� ���������������� ����� � �� ��� �� " �����
������ �!���� �"�������)�������� ��� � ��� ��� ������ ������� ��� �� ������� ��
��������������������������
���������������������������������� ���������������������"�#��$���%�������������������������������������������������&������������� ������ �� ���'� �� ���� ��� � ���� �� ��� ���������� ��� ������&��������������������!��'� ������ �"� �� �������'��� ��� ���������������! ����������&��#����$������������%����"��&��%����������������� ����� �����'����"���&
"����������������������!����������������!(�������
���������������� ���������� �������������������������� ���������������������� ����� !"��������������������� ���������������������������������#���������� ���$ ����!�������������%�&��� ����'��&�%�������"��#����
(���������������#���������� !"�� ��������
��������. ���������� ��������� �
���������)�*���+��������,�� �����������(����-����������������������������������./-���0��������*������������1���������.(���������������.��#���*���������������.�������2)�!3445��5��"
�����������#�1�����������������.���#�������#�������#�6�75�8������������1�����6�*���'���������,���,�9����������#������ ��������
�������#���������� ���,
�+�6��#�(�������
���������������������������������������������������������(��������������!(��������������
������������������������������������� �������!��������� ����VBA�
�� �������������������#�����������VBA������ ������ ��� �������������
����� ���������� ������ ������ ��*������� ���� ���������������� �������!�
�������������� �����������VBA������ ������������!��+������������������
������������ ����� ���� ��� �������� ��������� �� ������������ ����� ����
��������������������������
���� ������� �������#��� �������� ������ �������� ������ ����� ���������� ,����
��������� �������#��� � ������ ������ ���� �� ������ � ������� ���������� VBA���� �������������� ������������������ ������������� ���������
(�������� �%��������� �������� �!����� ���� �������� ��� ������� ���� ����������
��������� ����! ��� �� ������ ������ �������� ��� ���������� ��*�������
����� ����� ���������������#�����������#�(����������������
��������� ��������� ���!(��� ������������ ��������� �� ������(��� ��� ������ ���
����������� ������ �� ��*��������� ��(��� ���� ����� ��������������-���� VBA� �
�������������(������������� ���������������������������� ��������������
������������� ������ ����������� ��������������������������� �
"� VBA� ��(�����!�� ���� ���� ��������� "� ���������� �������!���� ���������
������������������������������������������������������������������������������
���������������� ����*������������������������������������
��� ��� �������� ��� ����� ��������� %��� �� ��*������� ������� �� �� �������� �
�������������������������������������
��� ������������.����� ��� ������ �������� ���������� ���� ����#������ �������� ����
����������� �����!(��� ��������� ����� ������ �������� �������� ��� ������
���� ����������� ��������� ���� �� � ����!���� �� ������� ����������
�����������
��������. ���������� ���������
������� ������� ��� ��������� ������ �� ���������� VBA�� VBA� ��������
����� ��������������� ������������� ���������� �����������VBA�������
���! ���� �� ����� ���� �������� ����� �������� ��������� ����� � VBA� ����!���� �� �������� ������� ��� ������� ������ ��������� �� ����#��
���� �����������������! ��� �������������������������������������� ��������!
� �����������������������������������������
��������������$��� � �������� ������ ��� ������ �����!���� �� ���� �������� &��� �� ��������� �
��������� VBA� �������� ����� ��������� �������� &��� ���� ����� ���������� ��
�����������������������%�� ���������������������������� �����������VisualBasic�� ���� ��� ������� ������ �� ������ ���������� ,������� ���� � �� �������� �
�����������������������
�� ������������ ������� VBA�� ��������� �����!(��� ��� �������� )������ �������
����� ���� ���������� ������ VBA�� �� �� ������� ��*�������� ���������� ����� �
������� ����������������!�
������������ �������������� �������� ��� ��������� ������ �������� ����������� �������� ������
� �������������������������������� ����� ��������������������������� �� ���
�����!(��������������
�������� � ������ ������� ���� ��������� ����� �� ����� �� �� �����
���������,��������#������������������������ �����*������ ���������
��������
��.������������ ������ �� ������ �� ��� ������ �������� ��������� ���
������ ����� �� ���������/������ ��� � � ������ ������� ��� ������
�������� ������ ������� ������ �� ���� �������
�����$�#��.����������� �:�
"���(������ #������(����������� ������������������� �����������������&��
������� ������� �������� ����� � ������ ����� � VBA�� ���� ���������
������� ��� ��(���� �������������� ��������� ��� �����!���� ���������
������� ����� �����������������������������
������������������ ���������������������������������������������������
������ ������������ �� ������������� �� ������ ������ $;$-��<����#���
��������� ����������� ������*���-�#���2������ ��������� ����� ��
���������� ,����� ������ �������� ������� ��-�# �:<����#��� � ���
�#<����#��� �$���� ��#����#-;� ���� �� ����� �� ���� �� �����
�����������
�� ������������ ���������������$��� � �������� ��� �� ������� �� �������� Visual� Basic�� ��� ���� ����������� ��
��������������������� ����������"������������������ �����������������!(��
����������!�������������(�������������*������ �%�������*����������������
��������. ���������� ��������� �
���������$��� ������������� �������������������������!� ������������ �������
��������
����������� ��� ����� ������� ����� �"�������� ��������� 0��
�����%�������������� ������ ���� �������� ���� � �� ����������� +���
���������������������������(��������������������������������������
��������� �������������������!�
�������������� ���� ������������ ���������������1���������� ��
���������� ����������������� ������������ �����������������������!
�������� ������ �!���� �"�������)�������� )����� ������ ��������������
������ �����!��� ���������� �!����
��������Visual�Basic� �������� ����������������������������������������������������������������������� �������������$��� ����������������������������������
�����������������������������
!������������������ ������������������������������������������������������*���������(������������
)����� ��������� ����(��� ������� �������� ��� ��!(����� ������ �� ����
����������������������
"����������*���������������������������������������������
������������� ����������� �������� �� ���� �������� ����������
��������������������(�!�����������������������������������������
��� ���� ��� ������� ������� �� �� �������� �� ��*������ �� �� ������
��*��������������������������������!��������������������������
������� ���������� ������ �������� ��� ���� ���������
��������� � �� ����� /������ �<*�� � �=<>���*� ���� ����
����������������*����������������� ��
"� ������� ��*�������� ������� ����(���� ����� � ������������ ���� �
� ����!�������������������/����������������������������� �� ���� �� �
��� ������� ������������� ������� ������������ ���� �� ������� ����(������ �
�!������������������������� ���������� ������ ���������������������
������������ ��*���������� �� ������� ���������� ��� ��!���� �� ������
�.�����������������������������������������
�(�������� �� ��� �� ��)������ ��������� �� ����� ����������&� *�� ��� ���$ ���'� ���������� �� �� ���'� �������� �� ������� ���&� +���� �������� ���$ ���� � ������ ���������� ���������! ���� ������ �� ������� ��%�� �"��� ���� ��!�'� ���� ���������"�����%� ���������$ ��'�������������������������������&
��� ������� �������� ����������������� �� �������� VBA� ��������� �������� �� ������� ��� ������ ������ ������
VBA���Visual�Basic�������� ��������������������,������������������������� �
���� �� ��*����!�� ������ �� �� �������� �� ������!(��� ���������������� ��
���� �� �� �����������!(��� ����� ����������� "� ����� �������� ���������� �����
�������� �� ����� �� ���� �� �� ��������!�� �������� �������� "� ����������
�������������������������������*��� �������� ���������������������������� ���
��������������������
��������. ���������� ���������
)������ �������� �������!���� ���� ���������� ��������� �� ��*������� $���
�������� ������� �������� � ������ �������� ������������ �!���� �"�������)�����
���������������������������������������������������������������������(�����������
�� ����� � ��*������ ������ ������ ��*���� ������ � � ����� ��� ������ ��������� ���� �
�� � ��������� ����*����VBA�
��������� �������%� ��������)� �� ��� �������� ���'� ���������������� ����"������&
�����������" �������� ����������������������������VBA����������������������������������
���������������������������� ���VBA�� ��!�������������������(�������
������������,� ����������/���������� �������� ������� ���� �������
<������������$-����!"$ ����&?��<��� ����@&��#����<�����(��������(��'�����!�����#-���� ��-��"(��'��������-������!&;;;;&5������#-��5��-��"��#�(�������
&����������������������������������������*���������������������������
����������������#�!(�����������#����������!������������ ���������������
�����������������������������Sub�����������������������Function��
#�������" ��
��������� ���������������$ �������%������&
�� +��$ ���� ������ ����������� ���$ ���'� �� �������� ������
������� ���"����� �� ���&� +��$ ���� ����)� ������� ���
���$ ��'� �������� ����� ������������ ������������&�( ���� ���$ ���������������������������$��������� ��%� ��"�!����$ ���&
�� ,� ���$ ��� (�������� ��"��� ����������� �!��� ��������� ���&
( ���� ��� ���������� ��� ���$ ���� ���� ��'� ���� �� �� �� ����������
����'�������������� ����������$ ���'���������&�!�(�������&
�� +��$ ���� �A����)� ��$������� ���� ���$ ���� ���'� �������
������������ ��� ���$��� �� �������'� �����%� � �� �� #������� ���)������ ��������'� ������� ���� ������� �� ����� �������&(��������'��%����$ ������������"�����*&
�� +��$ ����<������;������� �������������������������������
��)���&�+��$ ����<������; ���������"������&
�� �� �%������� ������ ����'� ������� ���� �� �������� ��������$ �������'������! �!���"�����&���������)�'������$ �������'
���������"��� ������������ �� � ������ ������� ������ ���� ������������������������ ���&� ������ ���������� ���$ ���� ���'� ��! �!� ��"����'
���������������� ��"������$ ���&
��������. ���������� ��������� �
��� �����������" ����������������������������� ������������������!������������������������
��������� ���������������� ��� �� ������� ������ �������� �� � #�� ��������� �
��� � ��� ��� ��(�����!(��� ������� ����� � (�������� ��� ���� ��������� �� ��������������������
&����� ����� ��!�� �� �������� �� �� ����� �������� ��������� ������ �� �����
�������������� ����� ��������������������*�������������������� �� �����
������ ��#�� ����(�!(��� �� ����#����� ����� �� 0��� ������ �������� �����
���������� ���� ����������� ����� �����������!���� �"���������������� ���
����������� ��� ��!�
��� ������������� ������������ ����� �����������!����� ��������� ���
����� ���� �������������+�,��������������������������-�������� �����������
�������� ��������������� � ���,�����������.��������������!�������� ��������
����������� �������� ����������� ������
$�� ������%�������������&�� ���������������
!������' ��������������������������� ��� ��!�������� �������� ������������������
���������������������������� �� ����� ��������������� ��������&��������������
�� ��!��������������������������������������������������������������������
����� ��� ������� ��� ����������� ����� ����� ���� ������� ������������ �����
�����������������������*������������� ��������������� ��&��� ��������
�� ����#�!(��� ������ ��#� ���� ���� ��#� (�������� �������� ��� ���������
�������Visual�Basic�����������������
����������" ������������ ������ �� �������!� ����� � ����! ������ �� ��������� �������
VBA�����������������*��������������������#��/��������������������������
����� ��� ������� ����������� �� �������� ������� ��� ���������� ��� ����� � �
�������� ����!�������������������������������! ���������������������
�� �� �������" ��������"� ������ �� �� ���� ������������� ������ �� ����� � � � ��!�� ����#��
����� �� ���� �� ��� ��!���� ������� ������� ���� ���������������� ���� �����
������� � ���� ����� � ����� ������ ��� �� ���!���� �� ���� �� ����� ���!���� ��#
�����-���� �� VBA� ������� ���� ������ � ��� � ������ ������ ��������� �������
������� ����� � �� ���� ��������� �������� ����� /���� ��������� ���
����� � ���� �� �������� ��*�������� �� �� ����� ����#�!(��� ��#� �� ������ �
��������������������������������
<�����������:���<����#���!"����� ���$� -���� �������� ���$� -�����&�-A��-������#-;@&$ ����� ���$� -��!��������������"...��#����
��������. ���������� ��������� �
(������ )���������" �������
"� ������� ��*��������� ���� �� �� �������� ��:���<����#���!"�� �� �
������� <������ ��������� �������� ���������� ����� �� ������� ������ � ��
��� ��������� �����<�������<��A-�����<��������������������������� ���!�
������ ���� ��! ����� ������ ��� ������������ �������� �� ��*��������� ���� ����� ������
������������������� ����������������������������������������������������������
������������������������������
'����� ����� ��! ����� ������ ����� �������������!(��� ��� ��*�������� �����
����� '������ ����������������� �� ��������������� �������� ��� �������������0��
���� ������ � ��� �!���� ���� �� ������� �������� ������������ ���������� �
������������������ ��������������������������������VBA���������������������
�����������
��*�������� ����� � ����� �������� ���� ���� �� �������� "� ���� �����
���������������� �������������� ������!������������"���� ���������������
��� ����!���� ����� �� �� ���� �� �������� �� ���� ��� �#������ ������
��� ��!�������������������� ���������������������
$������*��"������
,� ������������������%�#��$��&�*��������$ ����(�������'�#��$��
���� ������ �!�� ����� ������! �� ���$ ��&� -��� ������������%�#��$����� ���$ ���(�������� �����!���� � ������
��� �&� .� �%� ����� ���'� �� ����$�� ��� ���������������!��������&�������'����� ���������%�#��$���������������� &� ,� ��� �� /,������ #��$��� �� ��������/� ����� �����#��$������&
$��������" ������
'�������� ���� ������� �!��!� ������� ���� ������ ��� ��������� ��� �����
�������� ���� ����� � ��� ������ ����� � ���� ����� $��� � � ������ ������
����� ��������� ������� ������(��� ��� ������ ������� ����� �� ���� ���%�������
������ ���������� ������ ������ 1- �$;�#�-�� � � ����� ������
1- �$;�#�-��
...$;�#�-����&/-�-��&1- �$;�#�-� ��������-�:- �*��� ��� ��������-�:- �*��� �9��...
�� �� �������" ��������������������� (�������� ������ ���������� �� ���� ���� ����� � ����� ��� ��
����������� �������� ����������� ��������������(�������������� �������
�����(���� ��� ����� � � ���#��� ��� �������� ���� ��� ����� ������ � ��
���������������������#���� ���������
/�������������������� �(��������
<�����(����������(����!�� ��������5�;�� ��������"����,�� ��������,����9�;
��������. ���������� ��������� �
��(��������B�,��#�(�������
� �������� ��� ���� ����� � (�������� ��� ������� �������� ������� ����
��*�������� �� �������� �� ���������������� �������� ������!(���� �������
���������� ����� � ��� ������� ��� ���� <������� '����� ����� ��! ����� �����
(������������������ ����������� �������������� ���"� �������������
����� ��������� �� ����������� �� ������� ����2������� ����� �������� ����������#
(��������
+���"���, �����" ��������������������
������������� ������������������������(������������! ������������� ����
�������(���������������������������������������������� �����%�������
������%���������������������������������"��� ��(����������������������
��������(��������B�,��������� �����������������������(������������
��� ��������������������������(����� � ��!(����������
$��������" ������������
&��� ������� � ���� ����� � (�������� ���������� ������ ����������
��������� �������!�� ��� �� �� ������ ��� ������ "� �����!(��� ����� �� ����
� ��������� ������� ��������� C��:��� ��� ���� ��� ������ �����(�����
�������� ��(������ �������� ���������� ����� �� �������� �� �������
�����!���������������������! �� ������� ���������
��������(����!"C��:�������(����!75�D"$ ����C��:����#����
������������� ����� ���� ��� ������ ���� �� �� �� VBA� ������� � � ����� ��� �����
����� � ������� 3������� ��� ������ %������� ������� �� ����� �� ������
����!������������ ��� �����������������������������������������(�����!(��
��� �������������� �����
"���������(���������������� �(���������������� ������ ��(��
��������������������������(����������2�������������������������������
;��"������������� �����*�������������� �����������������*��������%�������
������� ������������������������� ����������������!(�������������%��������"
����� ����� ������ �������������������*������������������� ������� � �������
������������ ��������������������! ������������ ������������������������������
��������������� ������ ��������� ��� ��*�������� ������������ �� ������ �
�������������������������� �����
��������� �����!(��� ����� �� ���� ����!���� ���� ���� �� "����
����� � ����� � ���!�� ��� ��� ����� ��� �� �� � �� ������ ��� ��������
�����������������(��������������*�����������������,�����������������
,���������� ��������;��'������ ��� �� � ��������� �����������(��������������
�����!(���������������������������������,��&��������������;���,������������� �
�������������������������,��������������������
��������. ���������� ��������� ��
������,����������
&��������� ������������ ������������������������� ������ ����������� �
"���(��� ������ ������������ ������ ��� ��� � ����� �� ����� ���� ��� ��������� �
���(�!����������/������� ����!�������� ������(������
����� ������ ����� ����� � ����� ���� ��!��� ������ ��� ����� ������
��������������� �
����� ��������� ����� ����� � �����!�� �����#���� ���� �����
������ ������������ ����������������������(������������
����� � ����� ����� �� ������� �������� ����� �� VBA� �������� �
������������������������������� ��������������������� ���������
��� ��������� ����� ���������� ������������� �
$��������" �����������������%����������
������� ���������� ���������������������� ����������������������
��+���� ������������ ������� (��������� ������� �����(���� ��� �����
����� � ������!���� ���� ��� �� �������!���� �� ���� �� ��������<�����# (����#�-�������#�-��!&2-������- ��&5�EF3"
��+���� � � ������� ������� (�������� ����� �� ����� �� �����(��� �
��������� ��� ������ ���� ����� � � ������� ������� ����� ��� �����
�#������������� �������������#�-��&���#��-'��&5��E4G
� ����-��� ������1� ������� ����� � VBA� ����� ����� �������� ���������� � �scope��� �������
������������������� ���������� ��������� ��������� ���� �������������
����������� ����� ���� �����!(��� �������� �������� ���������� ����� � �#����
��������� ����������� �����������������������
1�������������� ������������������������
����� ���� ���!� ����� � VBA� ������ ������ ��������� ��� ����
����� � � �public��� 0��� ��� ���� ��� ��� ������ � ������ ��� �!���� ��������� �� ��� ������ ��� �������� ��� ������� ������� ���� ����� ��� ������
������ ������� ���� ���� ������� �������� ���������� �������� ���
��� �������������������
�������������������������������������� ������������private���������!����������� ,����� ����� � ����� � ������� ��� ��������� �������� ������
��������� ��� ��!� ������������� � ������ ������� ��� ������ ����� �
���������������������������������������������������������������
��"� ������� VBA�� ������� �������� ���������� �������������� ���������
����� �������� �������������������������������������������������
���������������������� ��
1������� ��������������������������������������������������� �����������
����� ������������������/���� ����������������������������� ���������������
������
�������� �������� ����������" ���
"���� �������������������������� ���������������������������� �� ����������
��! �����������<���������<��A-����������*���������/�����
��������. ���������� ��������� ��
<����������H��-#+��!"...�!�����������������"��#����
<��A-���(���������H���#+��!"...�!�����������������"��#�(�������
,��������� � ������� ����������� ��!(������ ���������!������� � ����
���� ���!�� ��� ������������ ���������� ��! ����� ������ <������ ��� � �������
������� ��� ������������� ����� ������� �������� ������ ��� � �� ����� �
������������� ����� ��*������� ��� � �� ����� �� ��� ������� � ��� ��������
�����������������������������������������
$��� � ����� ���� �������� ���������� ����� � ������ ������� ��� �������
��� ���� ���� ������ ��������� ��������� ������ ������� <��A-��� $�#��� �
������ (����������� �������� �� ������� ��*������� �������� ���������� ������ �
��������������������������������������*�����������������������������
�����-������������������" ��
.������������ ��� � �� ������ �������� ��������� �#������ ���������
������� ������ � ������ ������� ��� �������� �� ������� ���� ������������� ���
��(�������������������������� ���������� ������������������������!���
��� ����������� ������������ �����������
�������� ������� ��� ���� ������� ��� ������� ��� ��� ���� ��������
���������������������#�����"����� ����� �����VBA������ �� ��� � �����������
������������������������������� ������������� ����
��������� � ����� ������� �#����� ������ � ��� ��(����� ������������� �����
��� ���� ��� ��������� ������� ���� ������������� ������ �������� +���� ������
��� �����VBA������������� ��������������������������������(����������! �����
�� ����� ��� �� �������� ����#���� ������ �� ����������� ����� ����� ������� �
������������������������������������!������ �
�������������� � �������� ��� �� ��������� ��� �� ���������� ��� �� �� ���������� �����
4���#���������������������!���������������������������������������������
������������"�VBA����� �!�� �� �����������������*��������������������
� ������ ������� ������������������������ ������������������! �� �
�������� ���������������� ������� ��������� ��
� )����������� ���� ����(�!�� ���������� VBA� ��������� ������������ �������� �
�������������� �������������������!�������������������� ����������� �
�������������� ������� ���� �������� "� ��*�������� ����������� ��� ��������� �
�������������� �������������� ��%������� ���� ����������� ������ ��*�������
����������������������������������!��������������� �
�����!(��� ������ ��*������� �������!� $;>���� ������ ���
���� �������!�
����$;>���� ������� ��������
��������. ���������� ��������� ��
�����!(��� �������� �������!� ���������!�� ���������� �� ������
?���-�����*���������������������������������������;��
��� �-���?���-�����*�����&�������;&
�����!(�����������*�����������������������������##��<����#����
<��A-���������##��<����#���!"
���������������������� ������ ������������� �����������!�� ��� ����� ��������� ���� ��������
��*����� ��� �� ������������ ��� ���!��0��� ����� � �������� ��� ���� ������� ���
������������������������������������������� �� ��������!(������������ ����
�� ���������������������!��������������" ���������������
�����!(��� ������ �������������� ��� ����� ��������� $;>���� �����
��� �������������������������� �����������
$;>���� ����������������� ������9��3
5� ����� ������ �������������� ���� ��������� ����� ��*����� �)�-������-��
��� ������������������������������������� ��������������������������
�)�-������-��.����������
$����������������" ������ �� ����� � ��� ����� ������!�� ������� ���� �����!��� /�����
�����!(���������� �������������2��-�����*������)�-������-���
�)�-������-��.2��-��!E�"
�����!(��� ������ � ������� %�����!� �I��� ������� � ������� ������� �
������� ���� ��������� $;>���� ������ �� ���(���� ��������� �� �������!
�I�-��2����
�I�-��2�������I�!$;>���� �����"
��"��������������.������������������!(����������������������VBA���������������������
���������.�� �� �������������������������������� ����������
�������������
��������� ������� ������� ������� ������� �� ������� �" ��� �
���������������������� ���
.����� ����(��������"��������������������!�����������������#����������������!�����������VBA�
���� ��������� ���������� ������������� �����!(���� ������ �� �� ������ �
%�����������������������!���������������#����������������������������������
������������
��������. ���������� ��������� ��
���������������������VBA� ������� ������ ���� ������������� �� � ����� ��������� � ������� ��
�������� � ����� �� ��������%�� �� ������� � �������� �� ���� ��� +���� ������
����� ��� �����������!(��� ����� �������� �� ������� ������ ��� ����!� �����
�������Visual�Basic�� ����������������
��.���������� ��� �������������� �������������������������������������
��% � �� ������ � �� ���������� ���� �� �����!(��� �������##��8/-��-��7
��/������ ������������ �� ������� ����������� �� ������� ����� �������
�� ���������� "� ������� VBA� ��� ����������� ������ ������������
�����!(������������� �!�"�#�$�%�����&���'�(�����)�*�+�,���-�.�/�0�1�2����
��.��������������������������� �
�������� ������ ��� ������� �� #���� �� ��������� ����� %��� �� ���������
�����������3������������
��.��� ��� ������� �������� ������������ �� ����� VBA�� ����� %�������
��������������������
��/������ ������������ ���� ������ ������� ���� �� ������ �������� ����������
/������ ���� ����� � ������� ������� ����� � ������ ��� �� ������
�����������������������������������*������������������(�����������
��� ������ ������ ����������� ����� ������� ������ ������������ �������� �
���������������� �����*������ ����������� ��������
VBA������������������������������������� ���� ���������������
�����'��� ��������1 �� ���� �������� �� ����� ������� ��������� ����� � ����������� ������
�!���������,���������������������� ��������������������������������������
���� ����!� �������� ������������ ����� ��� ���������� ���� ������������� �������
�%������� ��� ��!(��� ��� ���������� ��� ���� ��� ����� ������������ ����
�� ���!(����� �� ���������� ���� �� "� ��������� ������ � ��(����� �� �%���
��������#�����������������VBA��)������������������������������������������
3��������� ���������������� ��
#� ��"����������*�����������-����� ��
��������/���������
������� ��������� �����
����
�;�� �-��$����% �;���-; ��$����
��� ��������$�����% �����-��#��-��
��� ���0���$$��% ���1��'����-��
�� 1��0� ���0��� $ ���$��%
���<���-����
�� +��0�� ��2-#��
��������. ���������� ��������� �
#� (��,�� #�<-� ��
��� �������-�$ ���% ���?���<����
�� +���0�$������% ��>- � -��
#-� (��23�#��$ ���2����% #-������#-��
A-� ������ A-�����- �����
��� 4,����$��)��% �����-����������
(����� ��������
*����
�� 3��� ,��� $����������%
������� -��
� 1�,���$� ����% ��� :��$� -��
��# ��##��!�,����$�����% ��#�-��-�������� �2-��
��� ����$�!% ���*��
��� ��#,�� ,��� $���� ���������%
���*�;�-�����;
��- ���#��$#���% ��-�-���-�
��� 4����� ,���$����!�����%
���)- ���)�-#�
��' �5��6,���$#�����% ��'�- ���� ���A�
�- �!����$�� ��% �- *��(���-�(�������
��� 7������#$���������������#����%
��������� ��-��
.���� ���-��� �������0��������������(����������������� �������������������!���������������
������������������������������!(���
�����-���������������������������������-
�� �������������� �������� �������&�������� VBA� ��������� ����� � �� �� ���
���������� ������������������������������ �����������������������������.����
���� ������� �������� �������� ������� ����� � �� ��������� ��������� ���� ���
���������� �������� �� �������� �� ������� �� �������� ��� � ������ ������ � ��������
,���������������������������� ��������������� ��� ����!����������������
�������� ����������
��������. ���������� ��������� ��
/������ VBA� � ������� ����� �� �����(��� �� ����� ����������
��...*���...� ��������...>���������(��... ��������������������������
����������������� ����������� ��������������
���1���������J0�3�������������9�����������������*���
�������4���������
� �������������������3�
��#���>���
�������� ���������� ������� !� � ��������� ���� ��...>���
��...*���...� �� ��������� ���� �������� ��� ����� ����������� ����� ��� ����
�������������������#��������"���...>��������#�!(������������������>����
����...*���...� ���������#������������������ ������!���� ����!������
������ ������� ���#������������������ ������� �� ������������ �����������
������ ��������(�������������� �
������� ������ ��&�� ������� �� �������'� � ������ ������� ������������������ ����������� �������� �� ��� ��� ������ �� �'� ������� ����������� �� �� � � �%� ������%&� /���� �� ������ ���� ������� ��������&��'�������� � � �'������������&������6����� &�+������������� ����!����� ������������!� ����������� ��������� ��� ���� �� 3�,$0�����$��%� ����"���"������3�����4������$������+�������%&
������������������-�������������������-���� �������� ����� ��(���������������� �� �������� Visual� Basic� �����
�����������������������������������������������&��������������������������
����������� ������ ���������������� ���� �������������� �������� �� �������������
������������
$��� �����������������������!(���������������������������������������
�� ����������4��/�����������!(��������������������!�������������
��1-�'; ���������� �!�3�K�4G.4�L��I�!����$;*��; ������9�8���$;��� �����"�9��� ����-�-$- -��! ���-:����5��3"�9�8!�;�(�� �*�� #-;������ ��K����>- �<-;����'"�9�"
�.� ����'� ���� �� � ��������� �� ��������� $������������ ������ ������� %� �������� �����&� ,� ��������� ��������� �� ���� ���� �� ��� �&���� ��A-�#� ��-�-����� $�����
������%&� �� �������� ������� �� ��������� �� �����'� ������� ��������'�)������� �������� ������&���&
��������. ���������� ��������� �
������������������&��� �� ���� ������ �� �� ��� �������������� VBA� ��������� ���������� �� ����
������������ �����!(��� ����� �������� ������� ���� �� � ��������
&���������� ��� � �� ������������� �� ��������� ����� � ���� �� ���!(��
������������ ��� ������!(��� ������� ����� ����������� �������!�
����� ����� ���� ���� �� �� ��������� &�������� VBA� �������!� ��������
����������� ������������� &���������� ��������!�� ������� �� ����� ������ �� ��� �
������������ �������� ���� ��� ������!�� ����������!� ������� �� ��
�������!������&�����������������������������!��� ������������#� �������������
���������������������������������������������������
.������ �%�����������&���������� �� ���!���� �� �����%��� "���� ��� ���������� �� ������ ����� ��
�����%��� ��������� ����!� ������������ )����� ����(���� ������� �������!
������(��� ��� ������������� ���� ���(���� ����������� �� ���� ��� �������� ��� �
�� � �������/����������������������������������������������
�����������"�#������ ������
������������� ����������)� %���&��� ������� � ���������������������'��� ������%'�������������������������������&���� ����� ���� ����������������������� �� ��� ������&����'� ��������� ����� �������� ����'� �� �� ���� ����� ��%� ������������������� ���&
��������. ���������� ��������� ��
��������������$��� � ���! ���� �� ������� ����� �� ������������ ������(��� ��� ����������
������ ��������� �����%� �� �� ���� ������� ������� &� � ����!�� VBA� �����������
�����������������������������������������������������������������������������
������������ ������������ ������ ���� ������� �� ����������� ������ " ������
���� ����������(�����������������7���##�������6����������������������������
�� ���(�!� ��������##��� ����6� �'��������������� ������ ��7���##��� ����6
���������������������������������������!����%������������
��� ���������������������������'��%� �����&�/��������������������� ���������#�'� ������ ��##�������6� ���������������� �& &0���� ���� ���� �� ����� 7���##��� ����6� �� �� � ��� ������� � ��������#&� +�'����'� ��� ���������� ������� ���� ������ �� �%���������'� ����� ����� �����'� ���� ����� �� ��������������������������&
+� ������������$��� � �� ������ ���� ������������ ��������� VBA�� ������� ���������
� � � �� � ���� �������� ������!(����� ��%�������� ������� ���� ��! ����
�������� �� ��������� ������� ���� �� ��������� ��� ���������� ����������� ��
����(��� ��%������� ���� ���������� ��������� "���(��� ����������
������%����������� ������ ���� ����� ��%�������� �������� ��������� ���
���������� ������ ���� �������� ��������� �� ��������#����� ����� �� ������ �������
3�����(�����������#��������#���������������������� �������������������/�
������������������(����������������������(����#�����"������������!(���
����������������������������������������#�� �
� )����������/�������� ���������� �� ������ ����������� �������� ��*���������
��*�������������� ���������� ����*����!������
����A-���;�#/-��-��<��A-�������������/-��-���� ����������-���� �� �:+�-� 2� �������� �������
&��� ������� ���� ��*�������� ������ �� ������������ ������ ����
'�������������� ������ ������ ����(����� ��� dimension� ������� ��*����� .���
����! ������������� ������������������������������������������%����������
��������� �����������������,�����������*�������������� ����������������
�������� ���������� ������ ������������ ��! �� �� ������ <������ <��A-��� �
��-����������������������������������������������������������������������
����������
��������. ���������� ��������� ��
� �� )�����-�������*�������������!�������
��������������-�-���� ����������������!���������������
�����!��������������� ���������!������������ ��
" ��� ������ ��*�������� �������� ���������� ������ ����� � ������ �����
������ �� ���������� ������� ���������� �������� ���������� ���������� +���
��������� ��*��������� ��� ������ �������� ���� ������ �������������� �!���
�������� �������� +���� ��� ��������� ��*������� �� �������� ��� �����
������������ ������� �� ����� �������� ,����� ���� ���������� �������� ���������
��������� ������ ��������������� ��! �� ��� ��������� <������ <��A-��� �
��-����� ��������� ��� �������� ���������� ���������� ����������� �������
��������������������
-���� VBA� �� ��� ��������� ����� ��*�������� ������ �� ����� �������� �
�������� ����� �� ������������� ���� ���� ������� ��*������� ���� ������ �
����� �������� �����"������������!(������������������������������
<���������/-��-��<����#����!"���� �����# -���� ��������������*�;������� �����������������:-����� ��������; �����# -�������������!&�������������#M ��-��6&"M���� ����������������������*�; ��� �:��:-���M�������������(�������5������ ����� ��������� ��������N����������*�;�������������*�; ! �����# -��"�����:-������ �:��:-���!� �����# -��5����*�;�����"��#����
.�� ��� )�����-�����&���������������� ����*����!���������������������������������������
��� � �������� ���� ������ ����� ��� ������ ����(������ �����!���� �
������������� ������� � ���������� ������� �������� ��������� �� ������
�.��������������� ����*����������������������������
��� ���� ���!� VBA� ��������� ������������ ������ �� �� ���� ��*��������� &
������ ����� ������� �� �� �� ����������� �� ������ VBA� �������� ����� �������
�������!� �� �� ������� ��� ��� ����� G�� ������� ��� ���� �� �����!���� ���
��*��������� �������� ����� ��*����!���� ���� ���������� �� ������ �� ����
/-��-������������ ��!�����������!(����������
$� ����������-������������ ��������*�������������������������������������������������!(��������
���� �����VBA�����������������������������������������A-��-���������
����(����������������%������������������������������
����A-��-��
)�������*��������������$������������� ���������
���� ��$;�#���' �� ������
��������. ���������� ��������� ��
��*������� �������!� ��$;�#���' � ���� �������!� ���� �� ���� �����
��������� �������� ������������ ������#��� ������ �� ����� ! � ������ ����
���� ���� �������(�!������������������������������ ������������������� ��
�������� ��������5�����������
VBA����� ����������������������� �������� ������! ���������������-����
�������;��.�� ��������������� ���� �����������������������!����������! ��
�������!� �%%���������� ������ "� ��������� ����������� �������� ����� ���� ��
����������������������������� ������(��� �������������� � ������������� ��
#� ��"��������#���� ���������
����� ���� ���� ��� �� � �������������� �����
����-� 1�"������ ���� �� �������
*����$8�%�����(- ��$9%
�;�� �����&� $�������
���9� ��:��
������� �����&��$�������� ���8�:�;*<� ���:�;*;
>��� 2���&��$�������� ��� 8:���;��<��*�<� �:���;��<��*�;
����� ������ �� �����! �������� � ������������
��� 8�&�9:<:�/�<� �� 8�&�9�:=</��� ������$�����%�����>����&�9�:=</��� ��&�9:<:�/�<� ������������%�����
����� ������ �� �����! �������� �������������
��� 8�&;=;*=����<*:�:/�9< �� 8�&=�9*�*��<��:�;/�:� ��� ����$�����%����>� ���&=�9*�*��<��:�;/�:� ��&;=;*=����<*:�:/�9< ��� ����������%����
�������; 2���&�� ����� �����'�=� ������%� $�#�'���!���� ����� ��������� �������������
��� 8=::'��;':9�'*<�'�;;&�<9<� �=::'��;':9�'*<�'�;;&�<9;
�����- 2���&�� ����� �����':=�������%�$�#�'� ��:<����������� �������
��� 28;='::<'�*:'���':*�'��;'�=�'���'=�9'���� �� ����>� 28
��������. ���������� ��������� ��
����� ;&=::<�*:���:*���;�=����=�9���� �� :< ������������ ���
�-�� -���������� �� �� ������ �99� �� �� ������ ====� "� >� ��99?99?99� ��:�?�=?�=
������ (�)������ ����������!������)��
������� !���������� ���"
+��� �����������������%� ���������������� ���
��� 9� �� ������� :������� ��$������ ���%
������!������������� ���"
+��� ����������� ����� ��"����������� �������%��������
����� ���������*���99$#����������� ���%
/-��-�� 1!���������� 1!���� �������������� � �������� �����>� ���
�� ������'� ���� �������� �����
���
? ��N#�����#� $�����
��������*;��%
������� ����%'��������������������� ��'���
-������� �������"����������� ��%$��&��� � � ��������%
�����������������-������������� ���"� ������������ ��� �������� ��������� ������ �� ������������ ���� ���� ��
���� ��������/-��-��������������������������#������������������� �����/��������
���� ��������� ������� ����#��� �� ��*���� �� ������ � �� �� ����� �� ���� �
����#���������� ������������������������� �������!���#�!(������� �����
�� ��� �� ����� ��� �� ��*�������� ��������� ������ � ����� ��� ���������
���������� ������(��� ��*���� ��%�������� ���� �� ������ ����������� �� ����
����������)�������*�������������!�����/-��-����������(�!���%�����!
�!�����������+���������������������*����������������� ���!�/-��-����
������� �� ���� /-��-��� ������!�� ����#��� ��*��� ������� ��� ������ �
������ ������ �� ������ �� ��%�������� ������(����� �� ����� ���������� �����
����� �� ������� ���� ��� ���� ������� ������ ���� ���� ������� ��� �������� �
�������������� ����#��� ���� ������� ������ ��� ��*����� ���� ������ �� ���
/-��-���������� ������������� �������#������� ������������������ ��������� ��� �
�������� ���&���������!����������������������� ���������������������������
������ �������� ��� ������� �������� � ��������!�� �� ��������� �����
����������������! �������������� ������/-��-���
�+���� ����� /-��-��� ����� ��)������ ���� �'� ���� �
����� ��"�%������'�������?
����A-�*���������� �/-��-��
��������. ���������� ��������� ��
( ���'� �� ������ �� ��'� ���� /-��-���)� ���� ��%'� ������������ ��
�������!'���������������������������������������������������� ��������������?
����*��������
�����-������������ )�����+���� �#���� ��*������� �����!� �������!� ���� �������� �� ��� ���� �� ���
������������/-��-������������������ ������������VBA������ ��� �����������
�����������*�����������������������
�������������
+������������������������������-�-���� ��VBA�������� �����������(����
����#��������� �������� ��������������������*�������!��������!�������
������������������������������������������������*��������
%� ������ � ��� �� ��*��������������������������������������������� �#�����
������� �� �� �������� �� �������� "�������� �������!�� ���� ������� ���
������������� �� ������� ������� �������� ������� ���� ������ �� ��*�����
��� ����������3������������������ ����������������������� ����������������
������ �� ����� ���������� � ���� �� �������� ���������� ���!� #�����
&��������VBA�������������!��������!��"�������������������������������
��� ������ ���#���� ������������ ����� ������ ����� ������� ��� �� ���� ������
����(���� �������������'������������ �����������������������
�,����� ��"�'� ������ ������� ������� ������� ������'� ����
���������� ���� ����� '��� ������������?� ��������� #������ ��@���������,��� (���������� $0�������� ��)����� ����%%� ��� ���� �� �!���$� �����%� ����"���"������3�����4�����&
��� ���� �������� ������
������������� ���������� ��������� ���������� ���� �� ������� �������� ������
����������������������������%�������
��������� ���� ��������� ��������� ������� ����� � ���� �� ������
��*����������������������3�����*����!�������� ���������������������
����! ��������������������������������*����������������� ������<�����
<��A-���������-�����
+���� ��������� ��*������� �� ����� ����� � �� �������������� ����� ��� �����
������������ ������� ������ ����� ��"� ������ ������ ����� � VBA� ��� ������
�����!��������!��������� �����*������ �������(���������������������
��*���������������������� ���������������������������������������
��������. ���������� ��������� ��
������������'�� � ��� ��� ��!���� ������ �� ��*������ �� �� ���(�� ��! ������ �����
<��A-����0������������������������������������������*���������������� �������
�������!������������
<��A-��� ��>������ ����������� ��>������ �������
�+��������� <��A-��� �� ���� ������!�� � ������'� ���� �����
����� ������� �� �� ��������� <��A-��&� ( ���� ����� ������������
<��A-������������'���������������'����������� ���������������
������ ��&
��������������*�������� ��������� �� ���(�� <����� ������� ��� ��������� ���� �����
�������/�����
<�����������-��� ��������
&�! ����� ������ <����� ����������� ����� ��������� ��*������� �� ������
��*�������� �������� -���� VBA� �� ���#���� ������������� <����� �� ��������
������ ����*������ ������������������������������� ��������������������
���� ��������*����� �
�����&���������������������&�! ����� ������ ��-���� ������������ ���� ��*�������� ��������� �����
����� �� ����� ������� ��� � ��������� ����������� �� ������ ��� ��� ������ ������
����������������� �����������������������������(����
"������!(��������������������>- ����/-��-���������������� �� ���
������������ ������������������� �
����*�-� ����<����#���!"���� ��*�-� ����/-��-���� ���������-�������>- ����/-��-���� �������� ��*�-� ����/-��-�����(���-�! �:!"5�&$�#����*���&"���>- ����/-��-��������>- ����/-��-���9��$ ����&������&�%� ��*�-� ����/-��-���%�8
&.�&�%�&������������ �� ����&�%�8���>- ����/-��-���%�&����.&
��#����
"� ����� ����� �����
���>- ����/-��-��������>- ����/-��-���9�� ���������� �� �� ��� ���!
��������� ���� �� ��� �� ������� ����� �� +���� ��� ��*������ �������!
���>- ����/-��-��� �� ���(�� ��! ������ ������ ���� ������� ��-����� �
������������ ��������������������������������������������� ����� �������� ��
��������� ������������� ������ ����� ��
����� ������ ������ �� ������ � ��� ��*����� � ������� ������ ����� �� +���
������� ��� ����������� ���������������������������#��������� ������ �
�� #�� ��!� ������� ��*������ ����� ������� ���� ������ �� ��*�������� �����
��������. ���������� ��������� ��
��������� ��! ����� ��������-���� �������� ����(��������� ������!(���� ��
����� ��"����������������������������
<��A-�����-��������������!"��-����(��������������/��;$���!���*���*�1- ���� ��������"
�������� ���������� ��! ����� ��������-���� ���������� �� ��*�������� �����
����� <��A-��� ���� <������ ������ ���� ���� ���� ���������� �������� ���������
���! �� �����*��������
� )���������-�����������
� ������������ ��������� ���������� ������ ��*������� �� ������ ������ ���������
������ ��� "������� ��! ����� ������ ���� �� ��������� ��*������ �� ������ �
���� ���� ��������� ��� ������ ���� ����� ��� ���� �� ���� ������ ��*��������
������������������������������ ����������������������
���������� ��������5������� ��������5����>�� ��������
)�������������*������������� ����� �������
������� ��1������ ��������;5�#-������#*�� #-;�� ��-��
�(�)����� ����%� �� � ��� ������ ������������������� ����������� ���� ��%&� ,�� ����'� ��� ������%� ��� �� ���'� ������������� ��� ��!���� ���� /-��-��&� 0�� ���'� ���
������������� ��)������ ���� ��=5� ��+5� ��C� � � ������
����� ��=� �� ��+� �� ��� ���������������� ������������� ���
����������/-��-��'�����������������&
������ ��*�������� ��������� �� ���� ������ �������� ����!������ ��%�����!
���������� �����!���%�����!����������!����� ��������������������������$���
������� ��%�����!� �� �������!�� ������ ���������� ��� ��� ������ "� ��������
����������������� ��!���%�����!�������������������������� �����
����������������$��� � �������� ��������� ��� ������ ����������� ����� ���������� /�����
��� ����������������������������%�����������
�������7
"� VBA� �� ������ ������������� �������� ��� ������ ��������� ������ ��������� ��
������ ����� �� �� ���� ����� ������!(���� ��� ����� ��������� ��� ����
����� ��� "� ���������� � #�� ������ � ��������� ����� ��%���� '�� �����
�������� �� ����� ���� �� ������ ��� ��!���� ����������� �literal�� ����������
�" ���������������
��������. ���������� ��������� �
"�����������������������������������
��O�������& ������!����5�"����������������������� ���� ���#�5&�8%�&�������5�"����������!���� ���� �����.&
"����������� �������������������������������������� ������������������
��������� ��O������&��������� ��(�����������%��������������� ������
������������������� ����� ������������������� ��������������������������!�
�������� ������ �������� ��� ���� ������� ����� ���������� � ������� ����� ������
� ��� ��������� ��� ���� ������ '���� %� ����(���� VBA�� ��� ��� ������ ����������� /�
������������������ �������������� ��������VBA�� ��������(������ ���������� �
��������������������
��� ��� �������'� ���� ����� �������� ������������ ���������'� �'� ����"�� "�����'� ���������� � �������&� ,� ��������� ��������� ��� � :��:�A��� ��)�������'� ���� �� ������ ������� ��������������&�(������������'�� �������������������!������!� �������&� -��"��� �������� ����� ������� �������������!�������&
�����-������������������"���
������������������ ���������� ������ �������� ��������� ��� ������ ���! �!(��� �� ����
������������ ��
����������-�<������������ ��K� ��$-��������������������� �
����� �� �� ��$-����� �� ���������� ���� ��� ����� ��������� ����-�<�����
VBA�� �������� �������������� ������������ �������������(������������� ��
�����-������*��"���������"���
�����������2������� �� ����� � (�������� ������ ������ �������������� �� �������
������������������
��(-A����������������!&$�������!� �#��������P&"
6!����%������������������(�������������(������� ������"������������
%���������������� ��������������������������������� ��������������������
��������������0���� �������������� ��� ������� �����(��� ��%�������� �� ����� �����
�����������%�������������������������5��
$�������-���-"��� �� ����������������VBA����� ��������� ��������� ���� � �������
����������������� ������������������ ���������*�����" ������������������������
������������������������������������!����������������������
��������. ���������� ��������� ��
�������� ��������������;�$������������1������
������������������������3������0�����������#����������
����������������(�!(���� ���������������������������
��%�������VBA���������������!"������I�!"�
����������������������������(��������
+���� � ������� �������� ���������� ��� �� ������ �� ����������� ���
�������!���� �� ���������� ���� ����� ,�� ����� �� ������ �� ��� ����� ������� ��
%��������������������(�������������! ��� �����������%��������������
(��������� +���� �� � ������� ���������� ������ ������� ����������� ���� �
������������������������������ ������������������� �����
!����� �,������������� �����������
�������������� &�����VBA�������������������������������������������������������� ��
������������������������������� �������������&�����������������������������
�������� �� ������ �� ���(������ ��������� ��%�������� ������� �����
��������� ��� ���� ������� ������������� ��� ���� ������ �� ���������� �����
�����������������������������%�����!�������������
����������� ��� �� ������� ����� �������� ����������� �� � �������
�������� ���������������������������� ��������������������������� ����
������ ��� ������ �� ����� ��"� ����� ��� ���� ��� � �������� � ��������� ��
����� ��� ����� �������� ������ ������� ������� �������� �������� ��
��������� ����������� ��� ������ "� �������� ������ � ��� ������ ���� �
������������������ �������������������� �����
#� ��"�������������������� ������
�������%
����� ���� � � ������� �����
,��������������� ��% 9
�������$�������� ���% ������������� ����$//%
������$#����������� ���% ������� ��� ���� ���'������ ���������������+�������� ���9$�� �����������%
/-��-�� +����� $��$������ ������������! '� ���� �������"����� ����%
������ ���"�� $��$������ ������������! '� ���� ������ �������������������)��%
��������. ���������� ��������� �
+� ���������������+������������������������� ��� ������ ������� � ������������� ���� ��� �������
������ ����������� ���������� -���� ������� ������ ��������� �� �����
�������� ����� �������� #���������������������� �
� )�����������������*�������������������������������������� ��
��� ��� ��<�� -���� ����������&(��N���&��� ���#��*-�����-���� ��-�����QFL37L��Q��� �����?��� �����-����*���
��*������������������ ���������������*�������������� ������������������ ��
��� ����� ���������� ������������ ��� ������� ��*��������� ����#������ ��*������
�������� � ���� ��� ����� ���� ��� ��� �� ������ ��� ��� ����! ������ �������
���������������������������#����-����������������
������������������ ���������������������� ���������� ����������������
���� �������constant���0����������������������� ��� ���������� ���� ���������������
����������� �� ��� �� ���������� )������ ���� ���� ��������������� �!� �� �����
�%������
���������� �����#����� VBA� �� ����������� �� ������ �%��� �� �������� �� ��
������ ������������ ���� ��� ��������� ������ VBA�� VBA� �� Visual� Basic� �� ���!��������� ����%�����vb��������A���������������������56��57�������A�H�;*-�
����� �����#�� �3�, �� 8��� ���������� VBA� ���!�� �������� � �� �%�����
��������������������������Excel��-���-�'�#� ������������������������
������� ���������������7��
��� �� ������'� �� ���"����� ����� ������������� �������'��� ��� ���� ���� ��������� ���&� -��� �������� �#����$��� ��� ��� ��%� �������%� �������������� ��������� ���� ����� 4,������B����$��&�"������:%&
�����&����������-���������������������*���������������� ��������������������������������������������!(���
��� ������ /����� ���������� ��� ��(�������� �������� ������� � ������
���������� ���� ��������������������������������������������������������
���������������� �������
����;������,��0�DR�*������S�� �--�; G4���
��#���
���������������������������������������������������������������� ��+���
��%�������������������� ����� ����������� ������������� ��� �������
�������� ��������� +���� ��� ����� ���� ������ �� ������� ������ ������� ����
������������������������������������ ����������#�������(���������������������
������������� ���������������������
��������. ���������� ��������� ��
/���������������������������(��������������
��� ������*���--�;������ ��������;���G4���...����;�������,��0�DR�*���
���S�� �--�;�������*���--�;������#���
,����� �#����� ��������� ������ ������ ���������� �� ������� ����� �������
������� ��� ��������� ������ ���� ���� �������� �� �� ������� ��� ����� �����
�������� ��������������������������������&����������������������������)����
�����#��������5� �������������������� ������%��6����������������������������� ��
������� �������!�����#�!�������������������������������37�������
����������� ������������������������������� ��������!��������������� �
������!�� ������ �� ������ ��� ����� ������ ��(�������� ���� ���������� ��������
��������� �����������
�����-������������� ��
�� ������������ ����&������� � ����� � ���� ���� � �� ����� ��������� �� ���������� ���
��������������������������������������������������������������������������������
����� ��� ���� �� �� ��������� "������ ���� � �� ������� ��� �������� �� �������
�(������������� ���� �� ���������� ��*������ ����������� ������� ����� ������
������������ ��� ������ ���������� �� ������ �� ������� ��� ������� � �� ������� /���
���������������� ����������������!������������� �
��� ����;��:������5���;��-�;���3��� ����;�������75���;����������D���1�������*- �������;�����
�##�:����������*- ���������'*- ��!"
>���
����������������"� VBA� �� �������� �������� �� ������� ���� ��! ����� ������ �� � �������
���� ����*�����!��������� ��������� ���������������������������� �����������
����������� ��������� � �� ������ ��� �� ������� �� ��� ���� ���� �� ��� ����� ����
statement� ������������ ���� End� If�� �� operator� �������� ������� ��������� ,�
��������������(����������� ��������������� � ����������� ������������� ��
����������������"������!(���� ���������������������� ,������ ����� ���
��� ��������������������
����97
VBA������������ ���� ��������� ������������ ��%���� ����������� �������
����� �������������(�������������������������������(������������������
������������ �����������
��������. ���������� ��������� ��
�+��� ������������� ��� ��������� �������� � �������������$�!'� �&&� �$����� �� ������&� ( ���� ���&� ������������/����� ��/� �������� ������$��'� �������%&� ���� ���� ��� ������
&%���������&%�&& �.&���/���������3���&/
5��������������������������������
*-�! �������"�J0��.D
������� J0��� ������ �������������� ��� �������� �������������� ��� ���
� ���������� ��� �� �� �� ������������ ��� ���������� �����(���� ��� �����*���� ���
(- ���+������������ ��������� ��������3�������������� �������������*�����"
����������� ���������������������(- ��
������������������"� ����� ��� ������������! �!(����� ��������������� ��������� VBA�������
��������������!������!�� �����������������!��������������" ������
�����9������K�����
�������� ���� �������� ,� ������� ���������� �� &� ������� ������������ /�
������������ ���������������� ���������intA��!��intB�������������intC��
-�����������&��������������� ������������� ��������� �����������������
�� ��� ��������� ���� ������� �� � #��� ��� �� ������� ���������� "�� ���� VBA��������� ����� �� ������ �� ������ ������� ��� ��� �� ��������� �� ������ &��
���� ��������� �������VBA��������������������������������������������� ���
������� ��������������(���������������������
$��� � ��������� ����������� �� ������ � �������� ��������� ����������
���� ����������+����������
!�����9�����"�K�����
VBA���� ������������� ������������ ���������������������� ������������
��� ������ �����
&����� ��� ������� VBA� �#����� ������ ����� � � ������� �� ��� �
����������� ���� �� �������� +���� � ������� ���! ���� ���������� �������
���� � �� ���������� VBA� � � �� ����� ��� ����� �� ������� ���������� ��������
�����!(���������
��� "�� ��������%���� ����������� �������� ��������������
��� '������������ ����������
��� "�������!!�� ����������� ��!�������� ����������� �
"���������������������VBA����������� �������������������������������
� �����������������5�%���� ������������ ����������� ���������������
��������� � ����!���� ��������� ���������� ������ �� �� �������3�� VBA� ������� ����� � ��������� ������ ������� +���� �� � ������� ����������
���������� �������� �� �������� �� ������� ��������� VBA� � ������� ��� �����
������
��������. ���������� ��������� ��
#� ��"����������������������������������
���� ��� ������� ����� ���
����� ����������� ���
0��*�������
B ,��� �������� ,���� ���� &����! ��������������������'� ����!�� �! �������!
N (���$�� ������ ������� �! "�������
K�����L .������� ��
T 4�������� �� -���� �� ���������� ����!� �����'� ����"���
$�# ���#����������� ��� -���� �� ������ ��� �������� �������������������� ���
9�����N �����
.�����"��
% *�����$��������
������
� �������
J0 ��������
J ��&
0 2���&
J� ��&���������
0� 2���&���������
>�'� ������ ������ �&������
� +������'� �����!������ ��� '����� �� � �� ���������)��
����������
�����������������������������������������������������
�"��������������� �������� ����������������������������������� ������������������ �� �������� �
��������. ���������� ��������� ��
�� 1�"������/�/ ��&�/*�" �� ��������������"������ ����/ �����'����"���
��# 1�"������/�/
�� 1�"������/���/
=�� 1�"�����/����!��! ����/
�IA 1�"������'�����������
��� 1�"��������������$��
�����������"�VBA������#�������������������������������� ���������������� ����� ���
��� � ����� ������������������� ��������������������>�'����������������
�������*�������������� ���������������� ����������3���������������������VBA���������� ����� ��������� +�� ���� ������ ���������� �� ������ ���� ��������
������ ����� �����
�������������������'�������"����'��%���������%'��� ������*���'������(- �&��������'����������'������������������
J��$����&���������%?
���=�J����
/���� ����� ���=� ����� �:'� ����������� �������� �� �� (- �'
�����������:����&'������&
�����������)���������������������� ��������������������������#���!��� �����������
�� �������� ������������ � ������� &'!������ ����!��&���& ������&� �����
(- ���� � �������� ��� ������ ��� ��� �� ������� �� ������ ��� ���� ��������
��������� ��� ������ ��������� �� $��� � �� ��������� ����� ��� ���� ���� �
�������� ���������������������������������������VBA�������������������#��
������
����� ��� �������� ������ ������� VBA� ���������� ����� � ��� ������ ���������
�����������������!�������������� ����� ������������� ������������ �������
����������"� ������������������������ �� ���������!���������#��� ��� ������ ��
����������!����% ������ ������ ����� � ������ ��������������� �������� �
���������� ��� � ��� � �� ����� ����#��� ��� �� ���� ��� ����������� �����
� �������&-&�0�&�&���&-&�0�&C&�������*����
������� ���������������� ��"��'� ���� ���������� ��� ��������������'����!��������� ����)�������� ������������������
��������. ���������� ��������� ��
����-��� *��&� /���� ���!��� ���� ��$��'� ������� �������!���� �
��#����������� �'��"��������"�����$� ������$�����������������!�� ����&� ����'� ��� ����������! �� �������� ��� ��$��%&.����������&������'��������������%����� �! �%����������� �*���?
&-&���&�&
&-&�J�&C&
&�������&�J�&C������&
��� ��������� ����� ����� VBA� �� ������ ��� ��������� �� �� ��������� ������
�������+���������� ����� �!����������#����� �������������������������������#��
�� ����������+������ �������� ��������� ��VBA�������������� �������� ��
����
������ >�'�� ���������� ������ �� #�������� ��� ���� �� ��������� �
������������� ��� ������������������������������������ �������������������&
��������!����*������������������������������������������������%�����!����������
�������(������������������������������(� �������������������� �����������
�����-�������������������� ��������� � ������� ��������� ������ ����������� �� ���������� ���������� ���
��������������-��������(�!������������������������������
���*���� :��� ���4�0�D
,��� ���� � ����#�� 3�� ����������� ��������� ������ *����� �� VBA� ������
������������*���� :��� ���� �����*����
�*�!���� ������ *���� �� (- �'� �� ������ �'� ����!���
��������� $�#������� ���������� ���� �� �� ������!�� �����'����������'� ������ 8�� �� 9&� ����� ���������� ��������� �������!������������������&
����� � ��������� ������������!������������ �������������� � ���� ���
��������������������
������<�J�����O��������������1�����M���������������#��#�������#����
��#���
� ) ���������������������������%��������������*���������������+��������������������
������������������������� ��������� ������!� ���%���������������(�!(���
������ �� ��� ������ ��� ������ ���������� ���� ��������� ����� �� ����� ��
����������������� ������ ����������������������
������&�����#�� ��&�%��������!&������������6&"�%�8&�.������ �����������&�%� ���� :���%�&.&
������ � �������� ������� ��������� ���� ������ ��������� �����!(��
��� �������" �� ����������������������� ��������.�������
��������. ���������� ��������� ��
�+��� ��� ���� ����&�%� ������ ��� ������%� ������ ���%� ������� �������� �������� �� ������ �������� �� �����������������������&
�� �� ���������� ���"������������������������������������������!��������� ������ ���� ����� �
VBA�� ,�� ���� �� ������� � ���� ������� ������� ��������� �������� ������� ��
�������������������������������3�
��� �������������� ���,� ����� ����������������������������VBA���������%�����!�������� ������"��
� ���� ������������ ����� ��� ��������� �������� ���� VBA�� VBA� �������
����������%������� ���� ������������ ������� ���� ���� �� �� �������&���� �����
VBA� �������� ����� ��������� ������ �� ������� ���� ���� �� �� ������� �������
������ ���� ������������������������� ������������/������ ������ ,����������
������ �� ������ ����� ������ �������� ������� ������ 5������ ���� ����� �������
������� ��� ����� ��������� ���� ��������� VBA� �������� ����� �������� ��
��� �����
#����������,�� ���� ��/-��-��� ����������� ������������������� ��������� ���� �������
�!���� ��%������� ������������ ����������!�� /-��-��� ������ ������� �����
������� ��� ��%�������� ������������ �� VBA�� ���! ��� ����� �� ��� ������ ������
���������������*��� ��4��������������������������������������������������� �
�� � ���� �� �� ������ ����� �� ������ ������ ����� �� �����!(��� ���� �����
������������������� ��������������
����A-���;�����)�� ���7A-���;�����)�� ���&(��� ����&A-���;�����)�� ���Q�3L7�LEE���64E64E�<$Q
VBA� ��� ����� ���#���� ������������� ������ ��������� ��� �� ��������
� ������� �� ������������ ��� ���� ��� ������(����� �� ��������� ���� /-��-���
������� �����������������������������������������A-���;�����)��
���� ����������/-��-��L�-�������������������� ���������(���������������
����/-��-���������������(��%�������*;�� -���
��/-��-��*;�����*;�� -��!A-���;�����)�� "
������ � �������� �������� ������� ��������� ��/-��-��*;��� �����
������������ �����&�-��&�
������� �� ���� /-��-��� � ���� ����� � �� ����� ������ ���������� "������ �����
��� ������������������������ ����������� �����������*���������������� �����
/-��-��� �� ���������� ��� �!� �� ��� ����� �� ���� ������������������� ��������
������������� ������ ���������� �� �� ��� ������ �������� �� ������������ ���������
��������. ���������� ��������� ��
�������������������� ���������� �" ������������������ ����� ���� ��� ����� �
�����������
$� ������������������ ���+������ ����� ������ ��!����������� ���������������� ������������ ��� ��
�������� �������� ������� � ������ ����#�� ��� �� ���� ���� � ����� �%%���������
+������������ ��������� ������� ������ ������� ���� ���������� ���� �������
��������� ��� ������ ���� �� ������ �� ���� ������ �������� �������� ����� ������ ���
��������� ����������� �����������������������"� ��������� ������ �� ����� ������
������ �������� ��������� ���� ��������� ����� ����������� ��
�/���� ���"������ ��� ����� ������� �������� ����8������������� ��� ������ �����'� �����'� �� ��� �������� �� '��%� ��������'� ����� ����� ��������� ����� ��� "�%����&�3����������� ����%�������'���" �������������%������������������'�� ���������������!������������&
"��������� ������ ����������� ������!(������������� ����������� ��
����������������� �� ����� ������������ ������������������������� �����
����-����;��������������>����
������ �������� ����� �� ����!(��� �� ���� ��� �� ������� ����������� ��
������ ���� ������� ���������� �������� ��� ����� �������� �������
� �� ������ ��� ���������� ������ ������� �� �������!� �#������ ���� �
������� ������� ��� ������ ��� �� �������� ��� ���� � �� ������� $���
�������� ��������� ���� ������ ���� ������ ��� ����� 3�6�� +� �����
�
����������������!(���%������VBA����������������������� ���������,
�����������+��� ��(�-�������D.G3�N33�
��+���� ���� � ������ �� � �� � ��������� ��� ���� �� �������;� ��������
���������� �8��������� �� ��������-������ �8� ���� �� ��������� ��������
�������� ��� "� ����(��� ������ VBA�� �������� ��� �����-� ��� ��������
������������� ����������������������������*�������������!�����������
.������������ �����-� ��������� ������� �� �� ������ ������ /-��-���
$��� �� ��������� ��� ��� ���������������������������������������������
������� ��� ����� ���� �� �� ����!(��� �������� �� ������� ����������
�����������%�����!������
.�� �������-��%�����������
���� ��������� ����������-������������������������������� ������*������������
������������(- �������������� ���������������������!������������������������
������ ��� �������� ���������� �� ���� �� �������� /������ ��������� ���� ��
����������� �����*���������� ���������! ������(- ��������� ��! ����
,����������������������������� ����������-������������������������
��� ��� ������ *���� ���� (- ��� .����� ������ ��� �� ������ ��� ��� ������ � ��
�� � �������������� ������� ���������������������������������� �����������
������
��������. ���������� ��������� �
���������;��������;��� �����-���� ��������� �����-����*������ ��������� �����-����(- ���������;��������;����������*���
*��'�>����;��#���
������ ������� ����� ������ ����� ����-�� ���
��������� ��)���� �� �������������'� ����������� ��"������� ������� ��&� ,� C��!'� ������'� ����� ���!����� ���� ����!����� ����� �������
�����$�������� �!��� �! "���� �?
����A�1��#�:.��������$-���� �������A�1��#�:.��������$-�
+� ������������������!��� ��"��������� � ���� ������������� ������ �� ���� �������;��� �������������
��� ����� �� � �� ����������� �� ������ ��%������� ��� ���� ����&��� ���� ��
���� �� �� ����!(��� �� ���� ������ �� ������ ������ ������� ���� �� �� ������
����!��������������� ���������;����������� ������������������������ ������
����!(��� �� ���� ������� ������� �� �������!� ������#��� �#������ ������� �
�������������������������� �������� ������������������� �������������
,���������;������������������������������� �����������������������������
����#��� ����� ���� >����� ��������� �� ������ � �������� ���� ����� �� ����#��
�� �����!�� ��� ���� ������!�� �� � ���� �� ���� ����� �� ����!(��� �� ����
������� �������������;������������������� �8��������� ������������ ������
3��������������� ���%�������������
��� ����������� ���� �������;� ��� #�����������"�� ���� �
��%� ��%&�1��&��������������#��$�!� ����(���-�� ��#�������
/�������-/'� ������ ������������� ���� ���� ����� �������� ����'� ��� ������'�#��������������8��� �� ��"������!��&
+� ������������������#�� ,������ ���-����������������������� ������������������������������������
�������������VBA������������������������� ������������58��8����6�37����
�� �� �������� � ������� ��������� ������� ������ ��� ���(���� ��������� ��� �����
���������� �� �������� �� ������ �� �������� �������� ���� ��� ������� ���� �� ���������
��������
��������� ������ �������� ������������������������������������! �����������
%�� /������ �����!(��� ����� � ��*����!�� ���� ������ �� ���� �-��� �
�������!�������� �����
����#-�1�##����-;�� ��-��5�#-�*������������;�� ��-��#-�1�##����-;���QDL3�LEEQ#-�*������������;���Q76�46���<$Q
��������. ���������� ��������� ��
&��� �� �� ��� ��� �� ���!����� VBA� �������� ����� � ������ ����� �������������� �
������������ " ������� (���-�� !Q��L3DLREQ5� &>���� #-��&"� � ����� �����
�*�� #-;5� �������� 3D5� �ERE�� �� ��������� �� 7������� ��������5� 3D
)���#��5��ERE���������������
$�� ������� ���'�� �������� �����������������%����������� ����������#����������
Q�EL�L3���QQ����345�E7QQS-��-�E��E�4Q
+�����������Visual�Basic�������������������� ��� �������������������� ����������(��� ���%�������� ���������� �������������������Windows��+���� ������ �������� VBA� ���������� ����(��� �����.��������� ��������� ���� ������� ����
����������������!(�!���������(����������������� �
���������"���������������%������������������ ����� ��������� ���� ��������� �����$
����<$����������������������������
Q��6D46���<$QQ36767���$Q
/���� �(��� ������ ����� Q��6�36�7� <$Q�� �������� ��� ������� VBA� �������� ���
�������������������������!��������,���������������������� �(���������� ��
VBA�������������/������������������������� �����Q�6�637Q��VBA������������
� ������������������Q�36��637��$Q�
����������������"����� ��������������������������� ����������������(�!��������� ����������VBA������ ���
���������� ���� �� ���������!�� ��������� ������ ��������� ��� /�����
Q7L�EL3��4Q�N�Q7L�EL3��DQ� ��� ����� ��� ������ �� ����� Q�3L7�L�E��Q�
��*������������! �������������������� ��VBA����������� �������-������������
������ ������������������������ ���������� �����VBA����������%��������-���##!"
�� �-������!"�� ���� �� ������!�� � ������� ���� ��������� �� �������� '�
���������������������������� ������������
$��� ��������� ������� ��� ��������� ������ ������ ������������ �� ������� �
��%���� ����������� �������������������!(���� �������
Q�G6�4��$Q�9�Q�36��Q�M���Q�G6�46���<$QQ�G6�46����$Q�N�Q�6�4��$Q�M���Q�G6��6����$QQ�G6�46�4��$Q�9�Q�6�67���$Q�M���Q�G6�46D4��$Q
"� ����� ������ � ��������� �� ������ �� ��� ������ &��� �������� VBA������������������� ����� �������������Q�6�67���$Q���������������������
Q�36��67���$Q�
�����-�����������1 �� ���������������������!�VBA�����������%�����!�����������������������
���������� ������ ������������ ������������ �������� ����� +���� ������ ���� �
��������. ���������� ��������� �
� ������ ��� ����� ���������!� ���� ���� �� ����������� %����� ���� �������������
������� ����� ��� �� ������� )����� ������������ ����� ���� ����� �� ����!
��%�����!�� ������(�!��� �� ���������� �� �� ������ ��������� %������� ���
�����������*������������������������������� ����������������������
���� ���� � ����� ����� ���� � ������ �� ������ �� ���� ���� ���� ���� � �
�������� �� �������� ��������� ������ ����� ����������� ���� �� ������� ���������� �
����� �����
�5���&������������"�������������� ����"������������ �������%� ������ �� ������� �� � �������� �� ���� ���� ��� ��������'� ������&����������&��������������������������������� �&
��� ��������� ��� ����� ��������� ��������� ������������ ��� ��� ��
�������������VBA�������������������������� ��� �������������� ��������������
������ ������ �� ����������+������������ ����������
���� ��)�������� ������� ��)���������QS�;�335��E�DQ
��������� ��)������� ������ ��������� ��� ����� GL33L�E�D�� ���� �����
������ ����������������������� �� #�� ��������������������� ��� ���� ��� �� ��
������ ��������������������������������� ���������������������������
������� ������� �������� ������ �� ����������! ��������������������������'������������#��$�������������� �&����
�����������������������������������'�������������������������������$��������������%&�� �������� ����� ������!�����������������&
+� ���������������� ���� ����� ���������� �������������� ��������� �� ���� � ��� ��� ������
������������ ���� ���� �� ������ ,����� ���� ��� ������� ����������� ���������
������(���������� ������������ �����������������������
�+������������������'��������������������������������������)�����������'�����������"������&
������������������������� ��������������!(������ ���������� ������
���� ��������!� ��� '����� ��� ������ �� �������� ������ ��*������� 0���� �����
����������������������������� �����������������������������,���� ������������
��������"�������
�����������������������
��3�5
78�87�
��������. ���������� ��������� ��
3�6
������
6�3
83��3�
"� ��������������� ������������ ��������������������� ��� ��������� ���� �����
������%����������+����������������� ��������� �������� �������������� ��������
��� ����� ������ �������� �� ������ � �� #� �� ������� ��������� )����� � VBA�����!�������������
(������������1� �������� ��������� ���������� VBA� ���������� ���� �!(��� ����������� �� ������
$��� ���� ����������������������������������������������������� �������������
��������������� ������ ����� ������!(���� ������ ��������� �� ��������� /�����
� ������� ���>�������-;�!7"� ���� ����� ��� ������ �������� ����� ����� ��� �
������������ ��� ������ � � ��������� �� �������� ���>�������-;�� &��� �����
�������������������������������������������� ��� �������������� �� �������������
������������������ �����%������������������������������>�������-;�!7"�
����������������� �� ������
�������� ������������������!(���%��� ������!(��������������
�� !�� ��������� �������� ����� ���� �������� VBA� ������ ������� �
������������������� �������� ������ �� ����!� �� ����� ���� �
��"�� ���������!��� ����!���� #�������� ����� ���� ���� �������
/������������������������������������������������-�������������������
������� ��/-��-�����������������!��!���%�����!��������(�!����
VBA��������������������������������������������������� ��!���%�����!�
������� ��/-��-�����������������
+�������-��������"��������������������������� ����! �������� ����� ����������������������������
���� ����� ��������� �������� � ����� ������ ��������������������,������
��� �������� �� ������������������ �� �������� )����� � VBA� ������ �����
�������������5��
� )��������������)����� �� ���� �� ������ ��� ����� � ��*��������� ���� �� �� ��������������
��*���������������������������*������������������������������������������
��*�����������������������������������!�������� ������������������������ ��
��� ���� ����� ���������� ����������� ������ "� �������� ��� ���� ���� �����
���������������������������������������
"� ����� ����� ��*��������� ������� ���� �������;�� ��� ���������� ���� ��
�����������
<��������<����O���� �!"�� ��������;
��������. ���������� ��������� ��
"������!(����������*���������������� ��������������-���
����#-�*��������-���!�3"�� ��-��
0������������*������� �� ����� ���������������������
����������-;����������!7D5��75�3E5�D"�� ��������
��(������� ����������������������������������������!������������� �� �����
)������� �������� ����������������� ��������#�����*�� ����� ��
�����"���/������������������� ��
����������������������������������������������������� ����������������!��������������� �
��������������� �������� ����������� �� �������������������,����� ������� �����
��������� ���� ����� ��������� ������� � ��� ��� �� ����#�� ���� ������ ����������
���� �� ������ �� ���� ���������� +���� �� �������� �������� ��� ����������� �� �� �����
�����������������������������
��� ������!(��� ������� �� ���������� �������� �������� ������� �� � ������
�������� � ��������� ���(����� �� ������-;�!�"� ��� ������ ������� ���(����� ��
�������������������������+������ ��������� ������������������������������������
������������ ������ ������ ���� ������ ��� $��� � ���� ������ � ��������� ����(���
������� �� �������� �� ��� ��������� ������ ��������- ���� �� ������� ��*�������
����� �����������0���� ������ ���������� ������� ��� ������ � �������� �������
����� ������� ��� � ���� ������ � ������ �� �������� �� �������� ��� ��������� ����
���������� �������������������������
� )������������������ ���������
����������� ���������� ������ �������� ��� ����� ��*�������� ����� ��������
%��������� ��� ����� ������� ��� ������� �������� ���� ����#�� ���� ����#��� $���
��*������ ������ ���� ����������! ���� ����� ���������� �� ������� ���������
���������������������*����������������
����������� �������� ������ ������������'� ���� ���������������� ��������������������"�����&
$��� � ��*������ ������� ���� �������� ��� �������� ��*������� ����� �������� �
���� �����������&������ ������������������!�������
���������������������������������������������������� �
������������ ������������������������������������� ���������� �
���������������������������������������������� �������������������
���������4���#��������� �������!������#�����*�������������� �������
����������������������������� ������
��������. ���������� ��������� ��
�-���������� ������� � ����� %������ �#����$�!'� ����� ��� �� "�� �����'� ��� �"�� ������������ �������� 2����� $��
/��!�#������/�)������ ����������%'��������� �! �������?
2�#���#-������#-; �!��� ������������#-; �N��"
�������������������������������������������������������������
�,� ����&����� ������� ����� ��� �������� ��������"����� ��� �����&
0 ���"���/��������������������� ����������� ������������������������������������������������
�������������(�!���� ���������! ������������� ����������.������������������!
���� ���� ���� ������� ���������� ��������� /������ � ������
���-;��� �!D5F"� ��������� �������!� ��%�����!� �� ������ D�� �������� F�� �
�����������������������
�������������������������������������������������� ��������������� ������� �
������ ����� ������������!(������������
������������� ��� ����� ��������� ��������� "� ����� ����� ��� ����
������������ ��������� ���������� �������� �������;�� �����������!45R5�E"���3G.EE
������������� ��� ����� ��������� �������� ���������� #-�*�-��-��� �#-�*�� ��-�� �!345���"
��.����������� ��� ����� ��������� �������� �� � ��������� ����� �� 74� K!�����9��������� �!753""
)����� ������������ �� �� ������ �������� �������� �� ��� ������ �� �����
������������������ ��� ����������������������� �������������������������� �
������� ��������� ��������� ���������� ������ ����� ������������ ���� ������
�������
���� ��*�#-; (�������!3E"�������? ������ ��� ��������...M�*����� ����#������5������� ������������������? ������ ������������!&+��#���������������#5�������&8
%�&"�� ���������7�&"� ����! ��*�#-; (�������!���? ������ ��N��""
$������*��"�������������������������������������������%�������������������������������������� �����
������ ������������ ���������� VBA� ��������� ������� ������� �� �������� ���� �
���������������������#������� �������� � ������ ��&���������!����������������
��������. ���������� ��������� �
��������%��������������� �����������+������������� ������������������������
������������%������������VBA������� ��������VBA���Visual�Basic�
��� ��������'�%�����������#��$��������"��������������������!�������������#��$��������'��%����������������������!������"��������'��������������������������������������)����������&�,"�����;� ������'� ���� ��������� ������� �� ��)���'� �� �� "�����9'��)����������������������#��$����������������&
� ���� ���������������� �VBA��������������������� ��������������� ���������
����������� -���� ������ �������� �� ��� ������������ ����� ����!
��������!� ����� �� VBA� ������ �������� ��� ��������� ��! �� �
������ ���� � �������� ������ �� ����� �� �������� /����� �� ��
��! �� �� ������������!������ ����#��� ������� ��/������ �����
�����������������������������!������/�������������#������������������
������ ������ ��! �� �� ������ ������ �������������� ���� ����� ������
��������/������������������ �����������������!���������������
����������������������� ��������� ������!(����������!���������� �
�����!�������������������!&T�������� �-��������-� &"�
��$�������� "������ �� %������� �����!�� ���� ��� ���� ����� � ���
(��������� ����� �����(�!�� ��� ������ $����� %������� �������!���� ���
���� �� ���� �� ���������� ���� �� ����� �� %�������� ��������� *-��
#�*-��������*-�!#���;�#����"�� 2������� ������ �������!���
���� ���� �� ��� ����� �� ������ ����� �� � �������� ���� �� ������ �
������������������������*-��!#����������"�J�D4�*����
�� ����� ������� �� ��*�������.������ �� �������� ����� �� � ��������
������<�������*������������+��������!������������������� ������
����� �##�!���� �������� Visual� Basic�� ��������� ������ ����� ������������.<����! ��$� -��(���$-� "�
"� �������� ������ � ��� � ������� �� ������� VBA�� �������� �� ��� ��
��������������� ��%�������������� ��
#� ��"�����������������������*��"���
��������������� ��
"� �� ��� ��������
2-�#���,� (������ ��$���������"������ �������%����
�I��!������" 6��$�� ,����� ��� ��� ���������� ��� �����������
(���-��! �����" 6��$�� 6���������� ��������"����� ���������
��������. ���������� ��������� �
�����������
�-�� (������ .����������������!� ���
�-�� 6��$�� ,����� ���� ����! �!������!� ���
���.2-� � ��� ���)������� ������� �&����� ������������������
.�������������������� "������ �������� �VBA�����������������!(������������
��$��������%�����&��������2�������VBA�(���-��%����������!���
���������� ����������� ������������������������������� ��������� ���
�� ������������� �� �������� �� #��������� �� ���(�!� %������� (���-�
������ ��������� �� ������ ����� � ������ �������!� ���� �-���� �����!
VBA������������������������������������� ��������(������������#��
���� ������%�������� ������������������������������/�8/88������������
�!��� 8�� ������ +���� ��� ����� ��� ������� �� %������� ��� ��������
�������������������������������
��'���������%��� ��&�������� -���� VBA� ����������� ���� �� �
������������������������ �����������VBA� ��(�����!�� ������%����������
��� ����� ������������� ���� �������!���� ���� ����������
�������� ������ ������������ VBA�� ���� ������������� ���� �� VBA� ��
����������������������������������������� ��� ����������������������� �
�������������������%�����������!�������;��, (�� �� ��/-�
�����������������VBA�������������#������������������%����������
%������������������� ������������� ��������
��(����� �� ��� � �� ���������� VBA� ��������� ������ %������� ���
���������� ����(��� ��� � �� �������� ��������� � �������� �� ������� �
����� ����� ��� ��� � ������ ��� ��������!(��� ������� ������ ������ ���
����������� �����
��������� ��������������������2�������$ ��������������� �����
��� ���������� ������������ ��������!�����%����������� �������
������������������ ������������������
����������������������������&�������������� ��VBA��������������
%������� ���� ���� � �� �������� ���� ������ ����#���� ������� ��� ��� �
��� ������������(����������!��������� �������������� ��������� �����
������������ ������� ���������+�������������������������������������
%������� ��%�������VBA�������������������������������
��(����� �� ����������� ���������� ���������� )����� �����������
����#��� ���� ������ ����������� ���� � ��%������� ��� ������� ���� �������� �
�����������������Windows�������������� ��������� ���������
.�����-�������'������ !� � ��������� � �control� structures���� ���� ����� � ������ ���� ��
����� ������ ��� �������� �������!(��� �� ���� �� ������� ���� � ����� �
��������. ���������� ��������� �
������!��� ������ ������� ������� � ��������� �����!(���� VBA� �����������
����#��� � ��� �����!(��� �������� ���� �� �������� ��� ��� ������ �� �� �
������ ������� ������ ���������1����
��)����� ����������������� ��������� ������� ����������� � ��������� �
������������ ��� ������ ������ �������� ��� ����� *���� ���� (- ��� 1����� �
����� � VBA� ���! �!�� ��...*���� ��� ����������� ������������� �
�������- ��
��*���������������� �������%�������������������������������� �����
���� ����� ��� � �������� ������������ ��������� &����� ��������� ����
���������� ������� ����������� ����� (��... ���� +���� ���� ������
��������������������������� ��� ���������������������������������
����������� ������ ��...>���� ����!(��� ��� �� ����%��������� ���
� �������� �������� �� ��������� ���� ���� �� ��*������ �� ����������
�������������(����-��... ���
���������1�������������� �������������������������*������������� ���
��*���������������������������
1����!(��� ����� � ���!�� ������� ��������� ����������������
����������� ���� ������!�� ������� ��� ������ ������������ ������ � �������
����� �
���������������������������������$��� ������� �������� ��������� ����������� ���� ���� ���� ��� ���� ����������
����������������������������������������...*���������� ��������������!
���������������������
���-�J���*����M�,� ��-�����!���5���������-�M���������������������������"�����--�����M������������������������-����"������
��#����M����5����������� ����!������� ���������������
������� ������ ��� ��� ��!(��� ������� ���� �� ��������� ��� �
�������������� ��������� �� ������� ���� �� ����#���� ��������� "�!� �����
� ����!������� ������! ��� ��������������� �
"��������� �������������!��������!���������������������! ������� ����
������ ���������������������������������������������������������� ��
$��,���������%&�����������&����� � �� ����� ��� �����!(��� ���������� ���������!��� ��� ���� ��
���������� ������������ ����������������� ���� ���� ����#�!(��� ���������
VBA� �������� �� � ������!� ������ ������ � �(�� ��� ����#����� �����
"������ �� ������ � �����!���� ���� �#����� ������� ����� �� �����
��������������)���������������������������������������������������������
"������!(����������������1���...>���� ��������� ���� ���� ��������
�� ����#���!� �� ��...*����� �� ������ �������� ��...*����� �� ���!� � �����
�������������1���...>����
���-�J���*������1������0��
������U��
��������. ���������� ��������� �
�����0�#�*���#���-
��#����M�*����!�������������������������...*���>����M�*����!�������...1���
��#����M�*����!��������!��������������...*���
$� �������$������-�������������
���������������� �� � ����� ��������� ������� ���� �� ��������� ����� ������ ���� �� �
���������������-���������� �� ��������� �����������������������!������������
��� ����(� ���������������������������������!�����������������������������
������������ ���������������������2�����Robert�Frost����������! �������������� ����
$��� � ���������� � ������� ���� ���� ����������� ����� ������ ��� �����!(��
������ �VBA��� �� ��!��������� ����� �� �������������������������"����
������ � ������� ����� ��...>����� ������ �� ����� � ��...*���� �� �����
�- ��� ������ � �� ������ ��� ������ �� � ��������� ��������� �� ������ ����
����������� ,����� �����!(��� ������ �� ���� (��... ��� �� (��
�-��... ���������� ��� �����������������!��
.����� ���%�������������,�������� ���...*������������- ������...>���������!���#�����������
����!� ������ ����� � �������� ����� ������ ��� ������ ������� ��������� ��� ��� �����
��������*��������(- ���1��������������� ����!����� �������VBA�� ���������
��� �� �������������� �� VBA� ��� ���!� (- ��� "��� ������ ��� ����� �����������!�
*������ � ���� ����� ������ �� � ������� �������!���� ������� �� �������
���������� ���� �� ���������� ��� ����� ����� ��� �������� /���� �������
���������VBA��������������������������������������������������(��������������
������������������ ������� ����������5�
#� ��"��������������������������,��
��� #���� $ �%������
-�J�� 3����-���&��
����� 3�����������
��*��-� !&����;&"� � ������������-�
(�)��'� %������� �� ����������*��-� � ���� /����;/'� ���� �'� �
�������� ��������� �����������������-�
I�� !�L� K� 3E.737D"� 0�� ���! �� �����"�9��3
*�� ������ �������� ������!�L
K� 3E.737D"� $����&� ���� ����
���������� ����!�! �� �����"�9�3
��������. ���������� ���������
�����-��������������������������
���������6��� ��������������� �� �������� ������������������� �����������*�����
(- �� �� ������ ���������� ��� ��������� ������ ����� ���� ��� ����� ���� ����
�����������������*��������(- ����/������������ ������ ����������� ��������
������������� ���������(����������#�������=����"��������6�����������������
�����!��
#� ��"��������1����������������
���� ��� "�!� ����� & �������
������ $����� �
��# 0������ ��������� ����%�� ������������*���
7�K�3� �� F� ��#�3�0���
3�9�3� �� D� ��#DN3����
*���
(- �
�� /���� �����!��"�� ���� ������������*���
��� 0� 3�� ��� 3�0���
4�J�D����F�J�4
*���
(- �
=�� /���� ����� �"��� ������������ *���
$������ ��(- �'� ���� ���
����������!������ *���
����(- �%
4�9�4� J� E� =��4�9�4�����
4�9�4� 0� E� =��4�9�4�����
4�9�4� J� E� =��4�9�4�J0���
*���
(- �
(- �
�����-���������������%&���'( �/�������� �������������� ��������� ����������������!������...*�����
���������������...*���...� ������...� �����
�������*����$�%&���'( �"� ��(��� ��� ��� ��������...*���� � ������� ����� ������ ����� �������� ����
*������������������� �����������������������(- ��������������������
���� �����*���!���������55���������� �������� ������5��� ���� ������������"��#���
��������. ���������� ��������� �
&����� VBA� � ������� ������ ��...*���� �� ��������� � ����� ������
*���������� ����!��������� ��������������#�����+����� ����������������
(- ���� ����� � �����!����� ��������� ������ �� �����!(���� ������
����� �� &�! ����� ������ *���� ������������ �� ������ ������ �� ��� �� ������ �
� ��������� /���������� ����#���� ������ �� ���(�� ��#� ���� ��� �� VBA� ���������(���������#�����
!�����,��� ������ �����������%&���'( �&����� �������� ��...*���� �������� ������� ����� ������� ���� �� ������
� ��������� �� ��������� ��������� ������ ���������� ���� �� ������ ������ �
��...*�����"������ ��������������������� �����������#����������������������
�������������������������������/�����
������<�����0�3��*����$ ����&��������@�-����"����"��������@&
0��������������� ���
������<�����0�3��*���$ ����&��������@�-����"����"��������@&
��#���
�����-����������������%&���'( ����)�* +���� ������������ ��� � ������� � ������ ������ ������ � �������� ����� �
�������������������������������������������...*���...� ���"� �������� ���
������ ������������� �������������� ��������������������*�������������������
��� ����������(- ��������������������!(�������������
����� �����*���!���������5������������� ������5��� ���� �������������!*���""� �!���������5������������� ������5��� ���� ����� �����!(- �""��#���
+����� ��������������VBA�� ��������� ��� ����������������������������
������ � ������ ��� ������ ��#� ���� �� ������ ����� �� ����� � ����� ������
� ����!���������������� ����������� ��
"� �����!(��� ����� ��������� � ������� ������� ��������� ��� �������
��������� %�� � VBA� �������� +���� ���� ����� ������ ��������� ��� ���� ��� "��
������������� �������������#���!��������� ��
���*;���������������������� �����-�#�������*������������������.�-�'�������%�((%�M$������
� �
���������������.���'��������%�((((���M.� #����#���
"� ����� ��������� ���������������� ���� �������� �� ���� ��
�������� �� �������� ��������� %�� �� &�! ����� ������ *;����� ��������
�������� ��������� ��� ��*����� ��� ���� �� �� ������� ���������� ��*�����
���������������������������*����������-�#�������
��������. ���������� ���������
�+� ������#����%���'�����������������&�"������*&
��� �����%&���'( �$����������������������������������������������������������� ��� �� �����
������ � ������ ����� ������� � ��� � ������� 0���� ������ ��������� ������ �������
/������ ����� ������� �#��� ������ ��������� �����!���� ��� ��� �� ������ ��
������������������!(����������� �+����������� ����������� �������������������
����������������� ��������������������������� ��������������������������������
�*������� �� ������� ��� ���� ������� �� )������� +���� ��� ������ ������� ������
�����������������7�����������"����������������� ������ ������������������
��...*������������������������������������������ ��������������������������
�������������� ������������...*����
��� ������!���-�%$������-���������������
%&���)�* %&&�! ����� ������ � ���� ���������� ���� ������ ������� �������� ������� �
��� ���� ����� ������ � ������� ����������� ����� �� ������ ����� �������� ������
����������������������!(���
����� ������*���!���������5������������� ������5��� ���� �������������"� ������ �����!���������5������������� ������5��� ���� ������ ����5���� �������������"� ������ �����!���������5������������� ������5��� ���� ���������� ����� �����5����� �������������"...!��� ���� ���������������� ���"� ��M����#����� �������������!���������5������������� ������5��� ������� ����� �����"��#���
&��� ��������������� ������������ ������������ ���������������
�,� ��������� ��...� ���� ������!���� ������� ��������'
�����������������������������&�+�����%��������������&���� ������� ����������!���&�(�������� ���������'�� ���������
�����������'� ��� ���� �������"������ ���� ��� �� ��������'� ���'�������'�������"���&
��� ������!���-�%%$����,����������
%&���'( �"������ �� ����� � ��...*������ ������������� ������� ��...� ����
�����������!������������������������������ ��� ��#������������������ �����
�������������� ������������������������������������������ �����������...*���
���������%������+����X������*������Y������*������ �������A��B���C��
��������. ���������� ��������� �
)����� ����� ����� ����� � ��...*���� �� �!� �� �����
��...*���...� �����...� �����������������!�����������������������/���
������� ������������������������� ������������...*����
����� ������*�������� ������*���!���������5������������� ������5��� ���� ���������� �����
�������"� ������ ������*���!���������5������������� ������5��� ���� ���������� �����
�������5����� ������ ����"��#����M�*����!��������������# �����...*���
!��������������5������������� ������5��� ���� �������������5�������������� �����"� �!���������5������������� ������5��� ���� ������ ����"��#���
�����!(��� ������ ���� ������� �� �������� ��...*���� � �����
����(����� �� ������������ ��� ��� ��� �� � ������ ������� �� �������� ���(����
��������
��� ��)<��0�7.4�*������ ��?��� �0����*���
$ ����&'���������������������������@&��#���
��#���
��� ������!���-�%%%$������-�����
������������������������������.������������ ���� ������ �������� �� ����������� ����������� �����������
������� � ���� �� ������� �� ��������� ��...*����� ��� ������� ����� �����
� ���������������������������������������/����������������������� ��(���
��������,���������������������� �����������������������...*����
��� ��)<��0�7.4���#� ��?��� �0����*���$ ����&'���������������������������@&
��#���
�����-���������������� � ���!�* ����� ���...� ��������...*���������������������������������� �
� ������� ���� ����� ���� ������ �#������ ������ � ������ ����� ������� � ��
� �������+���������������������������������������� ������������ �����������
������(��������������������- ������!(��������!(�������������
�������- ���� �����- ����������!���������5������������� ������5��� ���� �������������������������"�- ����������!���������5������������� ������5��� ���� �����������������
��������. ���������� ��������� �
��������"...�M���� ���� ����������������- ��- ��� ��M����#����� ���!���������5������������� ������5��� ���� �������������������������������5������������"��#��- �
2���������������������������� � ���!�* �������� ������ �- �� ��� ���������� ���� ������ �� � �������� ����� �
������ �� ������ "������ ������ ������� � ������� ����������� ��� ���� �����
���������� ������ ��(��������� ������������� �� ���+����������� ������
-�9���0��
��� � ������� ������ � ������� �� ������ ����� ������� ��������� �-� 9� ���� �
���� �� ������������� ���������! ����������0����
���������������� � ���!�* ���������� ���� ��������� ������� ������ �- ��� "� ������!(��� ����
���2���(����� ��*����� ��������!(��� %���������� �� ������ ��������� *;���
�������������������������������
�������- �����2���(��.*;���- ��&/ ������&
����������#��������������#��9���- ��&-������&
������������<�������������������<�����9���- ��&+����N#� ��&
���������1<����������������1<�����9���- ��� �
$ ����& ��������������&��#��- �
'�������������������������������� �����������(����������������*;����������
�������� �������� �� ������������ ������� ��� ����������� ������ ������ �- �
���#���������������������������������� ���������- ������������������
������� ������2���(��.*;�����&/ ������&�*����� ,�� ������ ����
��������� ��*����� *;��� ����� / �������� ������� �������� �� �����!(���
��������������������� ���������������- ������� ��������������������� ��
������� �������� +������������������������������- ���,������������������
�������������������- ���������������������������������� ������������
��������!�* �)�* +������� ��������������*;���������������������������������- ���� ��������
�������- ��� ������������������������������������- ���"����������� ��
�- �� � �� � ������ ����(����� ��� �#������ ������ �- �� � �� �������������
��������� ��������� �������� ������ ������������ ��� �������� �������
����������� ����� ��� ����� ��� ��� ����� ��� ��������� �������� ������ ���! ���
�������- ��� ��� ����� ������ ���%��������� ������������ �� ��������� �
��� ������������ ����������
��������. ���������� ��������� �
�� �� ��������������������!�* '�� �������������- ������ ��(�������������� �����������������
�������� �� ���(�!� ������� �- �� ������ �������� �� ������ ����� �� ������
��(�� ��������������� ���� �� ���(�!� ����������������� ������ �����
�- ���� �����������������
�������- �����<-��������
"� ����� ��� ��� ��������� ��� ������� ���� ��������� ���������
��������!(��� ��������������� ������������������� ��� �������������������� �
�������������� �������
��)���������������� �����������������
�- ���R�*��74$� -�� !&%� ���&".<����
�������� ��������� ��� ������ *�������� ��� �������� ������!(���� �����
���������������������! ������������ � ����� �������������� ����������������
��)��������������������������������������� ������ � �����+�
�- ��� �0�F4$� -�� !&���� ��&".<����
"� ����� ��� ��� �������� ������������ ��! ����� ������ � � ���� �������
����������"���(������������������������ ������� ���VBA�����������! ����
�������������� �����
��"���������������- �����������������������������������
�- ����*��45��45�� �0�44
$� -�� !& ���������������������&".<����
��������� ���������� ���� ���� ������ �- �� �� ������������ ����������
������� ��� � �����!�� ����������� ��� �������� ���� +���� ���� ���
��������!��������������������� ����� ������!(�������� �
������������������������-�������"����������� � ������� �������!���� ���� � �������� ������� �� �������� � ������ ����
���������� ���� 0��� ��������� �������� ������!(��� � ������� ���������
�������� ������ � ��������� ���������� ��%�����!� �� � ������� �����!(����
��������������� �������������� �
VBA���������������� �������������������������� �������������������7�
#� ��"��������3����
������� ��������� ���
��...>��� -���%����'������������������
(��... �� (�� ����������������
(����-��... �� -������ �"����)��������������
��������. ���������� ��������� ��
�+�������������������$������������'������������$�������&����� ������&���&�"���&"�&
3�����#������ � �� ��� � ������� ��...>���� ������� �� � ���� ��������� � �����
����������������������� ����������������$��� ����������������������������
����� ������ ��...>���� � ������� ��������� � ������� ���������� ����� �
������������� �� �������� ��...*���� ����� ������ � ��...>���� ������� ��
��������� �������������!�����������!(������ ����
��" ��������(���������#�������������������������������������������!(��
��� �����������������������
��$���������� �����%�����������������������������������������������%�����
�������� �� ��� ��� ���� ������ ���� ������� ����#��� ������ ���� ������ �
����#���
����������������� ������������ �������
��" ��������������������������������������������
��"��� �������������������...*����� �������������������������������
���������������������������� ������ �!���������� �����������
#��������������#����+��,VBA� ��������� ���� �������������� ������� ��...>����� ��� ����� ��
���������� �����������������8��
#� ��"��������3�����#����+��,
���� ��� ���� ���
��...>��� +������� ��������� �������������'� ��%� �� ��� $����� ����������� �������� ��� ���� � ��#��
���1���...>��� ������� �� ��������� �������������'�����������������
��...>����1��� ,������� ����� ���������� ���������� "�� �� �%� ���'� ����������������
���?���...>��� ������� �� ��������� �������������'� ������� ���� ����������
��...>����?��� ,������� ����� ���������� � ����� �� ��������� "�'� ����� ����������
��������. ���������� ��������� ��
�����-���������������#��-(�� ���+��,8�������1���...>���������������!(�������������
���1������ ����!���������5������������� ������5��� ��� ������������">���
��� � �������� ������� ��� 1���� VBA� ������� ������ �� +���� �������
������� �������� ������ ����������� �� � �������� ����� � ����������� ��
�����!(��� ������ ����� ������� >����� +���� �������� ��������� VBA� � ������
����� �� ������(����� �� ������� ��� ����������� ������� >����� ������
��������������������1���������������������������
&��� ������� ����� ���� ���������� �������� �� ������ ������ ��������� ��� ����
��������� ����� ��� ����������� ������ ���� ���"� ������ ��� ��� VBA� � ����� ����� �
�������������������������������� ��������������������������
������� ����������� ��� ���� ��� ���� ������ � ��� ������� ���� ��� ������
�������������� ������������ ���������������������������������������(�������
�� � ������ ����������������������� ������!���������������������� ��������
�� �������������� ���������
������#��-(�� ���+��,�.��� &/��� ���������0
�����!(��� ���� �������� ��� ����� �������� ��� 1���...>���� �
��������������������������� ����������� ���������� �������������������������
����������������������!������ ����
����2�A�� �*������� !"�������������- ������� ������������������������� ��������5� ���-�':-�# ������� �������
���1�������������- ������J������������- ��������8
�������!&��������� ���"�� �5�#� �!���E.&">���
���1�������������- ����������������������������- ������$�#��� ���-�':-�# �������� ���-�':-�# ������%���������������������- �����������!���������- ������L���"
>���
$ ��� ���-�':-�# �������#����
� )����������
��� �� ����� ��� ������� ��� ����� ������ ����������� �������������� �� ����!
����������� ������������������������ ����������������������������������������� �
�������������&����� ������� �� ������ ������ ��� ����� ������������������-
��������������!������������������ �������������������� ������/��������#�
��������������������������������������VBA�� ������������
8���� �������� ����� �������� ����� ������� ���#���!(��� �� �����������
������(��� ������ ������ ������ >���� ��� ����� VBA� �� �� ���� ������� ���
�������������������������� ������8����� ����������������������������(��
��������. ���������� ��������� ��
������ ��������� ���������� �� ������� ����� ���������!�� ������ �� ������
������� ��������� ��� ���������� ��� ����� ��� �� ������ �� ��� �� #���� ��� ���
�����������������!�������� �� ������
&����� �������� ������(��� ��� ������ VBA� �������� �� �����!(���� ������
1�������� ���� � �������� ������ ������ ��������� ��� ����� ��������� ����#�� �����
���������� �!���� ��� ������ ��� ������ ���!�� ��������� ������ ��� ����������1���
���������- ������ 0� �� ������ �������� ����� ��� 1���
���������- �������������������������������������������
������� ���#������� ������� ��������� ���� � ����� ����� ������� �
������������� �� �������������� ���� ��������� ������ �������/������������� ������
����������������� ��� ������������ ����������������������������� ����������� �
������ �
��"� ����� ������ ������������ ������ $�#� �������� ����� ��� ��� �
����������� �������� ��������� ������������� ,��� ���� ��������
����������������������������������������������� ������������� �������
��� �����
��"�� ������ ������ ������ ��� ������ �� ����� ������� ������������ �� �����
������������������
��"�������������� ���������������������� ������� ������������������������
�������� �� ��������� �������� ������ ������� ����������� ����� ��%��
�������� ���������� ���� ���������� ��� ����� ��������� �����������
%������������0��������������������������� ��VBA������������������� ��
�������������������� ������������ ����% �
���������� ��������������������������������- ������������������
�������������������������������� �������% ��������!������%�����������
��� ��� ����#�� ��� �� ��� ���� %������� ���� �������� �����!� ������� "� VBA������� ���� (- ��� ������� ����� ����� �������� �� ������� ���������
�������� �����
���������������#������ ����������������1���...>������������������������� �����������!
%�����"����������������������!������������������ �������������.�%��������
����������������������������&������������������������1��������?������
#����+��,�-(��
��������������������������1���...>��������...>����1�����������
���1���...>�������������������������� �����������������...>����1�������
������������������
"������������1���...>����������� �������������������������������+������
�������������������� ��������������������� ���������"� ����������...>���
1����� ��������� ����� ������� � ���������� �� ������� ����� ����� ���� �����
������� ��� �� � ������� ����� ��� ������ �������� ����� ����������� ���
���������������������������...>����1�����������������������������������
������������������!(������ ����������������������������
����������...>����1���� ���������� �� �� ������ ��� ���� �� � �������
��������� ���� ��*������ �������� ���� ������ ���� ��������� ���� �� ������ ��������
����#�������������������+�������������� �����*�������������������#������������
��������. ���������� ��������� ��
��������� ���������� �������������� � �������� ������ ���� �������� ����� ��� ��� ��
�������������������������������������������������������*������
3�����#��1����
����� ����1���...>���������?���...>����%���������������� ��,�
������������ ������������������������� ����!� ������������������#�������� �
� ������� ���� ������ ��� � � ��������� �������� ��������� +���� �������� ���
����������1����� ������������������������������?�����������������J0
�� ������ �������� �����!���� ������ ���� ����� � ��...>���� 1���� �
��...>����?��������������!����������������!(����
$��� ����"�������������&�����������)2��
#�1������� ��������� ���������!�� VBA� ��%�����!�� ����������!� ���� ������
�#��������������������� ��������&���������!������������������������
��� ������� ���� �������� .������ ���������� �������� �� ����� ������ ������� ���� ����
� ����� ��� ������ ���� ���� �� VBA� ��(�������� ������ ���� ���� �������� ������� �
��������������������� ���������������������������������!(�����������
��������"� �����!(��� ����� � ��������� ������������� ����� ������ �������� ����
�����������������������������������������������(������
���1���� ����J��&C&������! ���"�0���*���
��������#��� ������ ����%� ��� ������)�� ����-�-����
>���
�*��� �������'� �������� ���� ��� ���������� �� ������ �
���������� ��...*���� ���� ������ �- �'� ������� �� $���&� 0����
�������'� $���� ����������� ����� � ������� �� ����8����� ������� ���������� � �������� ��������� ����&� 0���� ����� ���������������� ��� ���� �� ����� ���� ��'� ������ ����������� ����� �� '�
����������"�&
.�� �������-�����-�#�� ��-(�� �����1������������ ������� ���...1���L?���...>��������������������������
�� ���������������������&���� ��������������������������� ��������������������
"� ������ ��� ��������������� ��������...>���������1���� ����?�����0���
�������������������� ������������������������- �����������������������
����� ���� ���������� ������� ������� �������� ���! �!�� ������ ���� ���� ��
����������������� ���������������� ��������������������������
"�������������� ���������������������...>����
��������. ���������� ��������� �
��!���������5������������� ���������������!�������� �"
����� �����*���������
��#���!���������5������������� ������5��� ������ ����� ���� ������">���
&��� ������� ���� �� ������ ��������� � ������� ������ �� ��� �������� ������
��������������������� ������������������������+��������������������������������
���������������������� ������������$����������������������������������
���� ������� ����������� �������������� ���� �� �����!(��� ������ ���� �������
��...>��������������������������������������������������(����������
����)���� :��!"
���� :������������!&���������!���������!�N�"&"
����� ���� :�����&&�*���
���� :������������!&�����"���������� �.&�8%�&���� ����5��������#�����������&"
� ����>��! ���� :���0��"�*��� ���� :������������!&��!�������� ����#���&�8%�&������#����.����� ����5�������������&�8%�&�����&"
� ���� ���� :���J�&�&���� ���� :���0�&�&�*��� ���� :������������!&������ ��������� ����&�8%�&������ .��������#�����������&"
� �������
��#���>���
��#����
0��� ������� � ������� ������ ���� ���� ������� ������ � ����� � ���� ��
��������
3����������3 2�+���� ���������� �������� ��� ������� � ��������� ������ ������ ������������ ����
(��... ����������� ���������������������������������"� �����������"���
��� ����� �� ����� �� ��� ��� �������� ������ ��� �� ����� ����� ��
� ����������� ��� ���� � �������� ������ ����������"��"��� ��������
���� ��������������&������ �� ����������������� ������"������� ���!������
���(������
1�(����������������(��... ���� ������������!(����������
(�������������� �������������*������������������!���������5���������� �������� �������������������������������� �" ���������
��������. ���������� ��������� ��
�����!(��� ���� ���������� ����� �##�!���� ���� � ����� ����(����� ��� ����
�������� ������ ������ ��� �������� Visual� Basic������� ��� ��� ����� �##�!���� ����(�!�����������������#�����D ��
���������*�*���!"������� ��������
(���������*���������.<�����&&���������0&�%��
������#����
"��� ��(������������"� ������������"���� ��� ����� ����!���� �������
&����� ����� �� ��������� ��� ����� ��������� �� ���������������� ��� �� ��� ������
��������� ��"� ����� ���"����� ��������� � �� �������� ������� ������ �����
������ ���������� ��������������������������� �����������&�����������������
��� ��������������(������
�� �� ���"������������3 2�&��� ������� � ��� ����� ��� ������� �� �� ������ �� �������� ��� ����� ���� �����
(��... �������������� ������������ ��� ������ ���� ���� ���� ������ �� � ��� ���
��������� ������ ��� ������ ,����� � �� � ����! �!���� �� �����!(���� ����� ��
������������������� ��� ����� � �� ���� �� ������������ ����������������� ������+���
���������������������������������������� ��������������������������������
�� �� ������ �� �������� �� ���� ����� ��� ����� ����� �� ��� ����� �������� ����������
&�������������������������������� ���������� ������ �������������� ����� ����
��������������!(����������
�,� �������� ��'� �������� ����&��� $���� (��... ��'
������ �������� �� ������ �� � ����)� ��!���� ������ ��
������������������������ �! ������������������������������� ������ ���������&� ( ���� �� ��� ��8����� ���!����� ����!�������� �� �������� ��&� 0�" �� ���� ������ �� ���������� �������
$������� ����� �� �� ���� �� ��'� ������� $����� ���� ����� ��� ���������� ��&
��� ������� ����� �������� �� ��� $����� (��... ��&
+��������� �������)� '��� �����'� ������� $�� ��" �� ��%� ��%������'� ��" �� "�� ����� �������&� 1��&� � �� �����������&�!�)�$������������������������&�"����������������&
3�����������3 2�����������8��� � (��... ���� ���������� ��������� ����� � �� ������ �� ����������
������������ ������� (��... ��� ������ ����� �� ���� �������� ������ ���� ���
�����!������*���������� ���/�����������������������������(��... ������
�������������������� ������ ����� �����
����������-;���I�-�� �!�D"�� ��������(���-��������D
��������. ���������� ��������� �
������-;���I�-�� �!-"���-�K�- ���-
&����������������� ������������*������������������������ �� ���������������3�
��������VBA��� ����� �������������!������������������'���������������������
(��... ��� ���� ��������� ��� ����� �������� ��������� ��������� ��� �� ��� �3�
���������� -� ������� ��� ������� � �� ������ ��� �� ��� ����� ��������� ���� ���� ��
������� �
$��,��"�����������3 2�&��� �� ������ �����!(��� ������ � VBA�� ���� � (��... ��� ������ � ��
������� ��������������������������������!(��������� ����!�������� ������
������
���� ��2�M�2�����"����� "������"�� �2-�#���,��M������� ������������������ "������"��� (���������*��4
��2���2�#�!"(���������*��4
�����.<����� ��2�K�2�#�!�" ����
����
���������� ���� ���� ���� ��� �� �������� �� ��*�������� ��������� �
�������������� ��������� ��� ��� �� ����� VBA�� '����� �� �������� ���#���� ����
(��... ����'�����VBA�� � �����%�����!�2�#����������������������� ��2
��� ������� ��� ������ '����� � ��������� ���������� ����� (��... ���� �� ������
� ������������������� ��������������� �� ����������������##�!�����"��������
����� ����#����������� ����#����� ��������� � ����������� �����������������
���#����� ������� /������#���� ��� ������ ��� ��� VBA� �������� �� �� ���
���#���������������� �� �� ������� ����������������������
����� � �������������� ���������� ������������ ���������� �������� ���� ������
������ ������!� ������� ����������� ��� ����������� �������� �������������!
������������������ ��� ���������� ����������������������������� ����
������� ��� ������������������
�,�����$�����(��... ������������!������!�����������
�� ��"������� ���������&� *�� ��� $���� ������� ��� � �� ����������������&
$��� �������&-%����������)2������������ ���� (��� ����� ������ ������������ � ���� �������� ����
(��... ���� �(�� ��� ������ ���� ���������� ������ ������� �� ��� ������������ �
������ ������������ ���...*���������������- ���� ������� ��� �� ��������
�����(��... ���
������ ��� ��������� ������������� ���� (��� ��������� ������ �������� ��
���� ����������� ������ ��������������������������������������� ������������
"��� ��������������������� ��������� ����� ����������������������������� �
����������� ��%�������� �� ���������� &� � ����!�� ���������� ��� ���� ����
��%����������������������������%����� ������������������������������������
��������. ���������� ��������� ��
����������� ��� ���� �� ��� � ��� ������� �� �����!(��� ���� ������� ��������� �
����������� ����������������
(���������*��A-����-;��,����A-�<�������-;�!�"���&*����#� �����@&�*���
$ ����&�������������������������������1�������@&��������
��#���A-�<�������-;�!�"���A-�<�������-;�!�"�K� ����>�
����
����)��(���3 2�"������ (��... ���� ������ VBA� (��� �-��... ��� � ������� ��
������������� ����*������������ ����������� � �
�4�����(����-��... ������������"������&
����������������������&�����������4�'�+�����������������������������������������������!�������������������
�����������������������������������������������)�*���������������
������������������������������� ����������������������������(��������������
����� �� � ������ ���� ������� ���� �� ������ ���� ����������� ������ �
��������$��� � �������������� ����� ��������� �� ���� ��� ���� ����������#����� ��
�������������VBA���������� ���
�����������-����������������4�'�"� ����� ����� ������ )�*�� �������� ��� ��������� ����� %������� �� �����
�����-/-�������������������� ��������������� �����
(��������)�*��-����!���� ������� ��������"�������2�� ���������������- ������ �����
�- ��3D�3����� ��������
�- ��� �J�������/-�������������
�- ��0��������/-�������#;��;�����
��#������!�����N��#�����������")�*��-���������2����(�������
�� �������� �
����������������-)�*��-������N���2
��#�(�������
��������. ���������� ��������� ��
��������������-����������������4�'�.�������������������)�*������������������������������������������
����������������!��������������������������!(�������������������������
� ��������� &���� ������(��� ����� � � ���������� �������� )�*��� ����������
�� �������� ��� "������ ���� ���������� ����������� �����!(��� ������ � ���
������������� �������������� �
.������� �������� ������ )�*�� ��������� ��������� ��� �� ����� ���������
������� � ������� ������ �� ���������� 4 ������ ��� ������ ���� ��� �����!�� �
������� �� ������������� ������� �� ������� �� ��������� ��������� �� ���
������������������������������������"���������� ���)�*���������� ���������
����������3�������������������������������#���� �����