4.4 ±äÁ¿
¡¡¡¡±äÁ¿ÊÇÓÃÓÚÁÙʱ±£´æÊýÖµµÄµØ·½.ÿ´ÎÓ¦ÓóÌÐòÔËÐÐʱ,±äÁ¿¿ÉÄܰüº¬²»Í¬µÄÊýÖµ,¶øÔÚ³ÌÐòÔËÐÐʱ,±äÁ¿µÄÊýÖµ¿ÉÒԸıä.
¡¡¡¡ÎªÁË˵Ã÷ΪʲôÐèÒª±äÁ¿,¿ÉÒÔ°´ÕÕÈçϲ½Öè´´½¨Ò»¸ö¼òµ¥µÄ¹ý³Ì:
¡¡¡¡1)´´½¨Ò»¸öÃûΪ"Äã½ÐʲôÃû×Ö"µÄ¹ý³Ì.
¡¡¡¡2)ÔÚ¹ý³ÌÖÐÊäÈëÈçÏ´úÂë:
¡¡¡¡Inputbox "ÊäÈëÄãµÄÃû×Ö:"
¡¡¡¡ÏÖÔÚ²»Òªµ£ÐÄinputboxÓï¾äµÄÓï·¨,½«ÔÚµÚÁùѧʱÖÐÁ˽⵽ÓйØÕâÌõÃüÁîµÄ¸ü¶àÐÅÏ¢.
¡¡¡¡3)°´ÏÂF5¼üÔËÐйý³Ì,Õâʱ»áÏÔʾһ¸öÊäÈë¿ò,ÒªÇóÊäÈëÄãµÄÃû×Ö.
¡¡¡¡4)ÊäÈëÄãµÄÃû×Ö²¢°´"È·¶¨"°´Å¥,Ôò½áÊø¸Ã¹ý³Ì.
¡¡¡¡ÄãÊäÈëµÄÃû×Öµ½ÄÇÀïÈ¥ÁË?ÈçºÎÕÒµ½Óû§ÔÚÊäÈë¿òÖÐÊäÈëµÄÐÅÏ¢?ÔÚÕâÖÖÇé¿öÏÂ,ÐèҪʹÓñäÁ¿À´´æ´¢Óû§ÊäÈëµÄ½á¹û.
¡¡¡¡4.4.1 ±äÁ¿µÄÊý¾ÝÀàÐÍ
¡¡¡¡Ê¹ÓñäÁ¿µÄµÚÒ»²½ÊÇÁ˽â±äÁ¿µÄÊý¾ÝÀàÐÍ.±äÁ¿µÄÊý¾ÝÀàÐÍ¿ØÖƱäÁ¿ÔÊÐí±£´æºÎÖÖÀàÐ͵ÄÊý¾Ý.±í4-1ÁгöÁËVBAÖ§³ÖµÄÊý¾ÝÀàÐÍ,»¹ÁгöÁ˸÷ÖÖÀàÐ͵ıäÁ¿ËùÐèÒªµÄ´æ´¢¿Õ¼äºÍÄܹ»´æ´¢µÄÊýÖµ·¶Î§.
Êý¾ÝÀàÐÍ ´æ´¢¿Õ¼ä ÊýÖµ·¶Î§ Byte 1×Ö½Ú 0 - 255 Booleam 2×Ö½Ú True»òÕßFalse Integer 2×Ö½Ú -32768 - 32767 Long(³¤ÕûÐÍ) 4×Ö½Ú -2147483648 - 2147483647 Single 4×Ö½Ú ¸ºÖµ·¶Î§:
-3.402823E38 - -1.401298E-45
ÕýÖµ·¶Î§:
1.401298E-45 - 3.402823E38 Double 8×Ö½Ú ¸ºÖµ·¶Î§:-1.79769313486232E308 - -494065645841247E-324
ÕýÖµ·¶Î§:4.94065645841247E-324 - 1.79769313486232E308 Currency 8×Ö½Ú -922337203685477 - 922337203685477 Decimal 14×Ö½Ú ²»°üÀ¨Ð¡Êýʱ:
+/-79228162514264337593543950335
°üÀ¨Ð¡Êýʱ:
+/7.9228162514264337593543950335 Date 8×Ö½Ú 1000Äê1ÔÂ1ÈÕ - 9999Äê12ÔÂ31ÈÕ Object 4×Ö½Ú ÈκÎÒýÓöÔÏó String(³¤×Ö·û´®£© 10×Ö½Ú+1×Ö½Ú/×Ö·û 0 - Ô¼20ÒÚ String(¹Ì¶¨³¤¶È£© ×Ö·û´®µÄ³¤¶È 1 - Ô¼65400 Varient£¨Êý×Ö£© 16×Ö½Ú Double·¶Î§ÄÚµÄÈκÎÊýÖµ Varient£¨Îı¾£© 22×Ö½Ú+1×Ö½Ú/×Ö·û Êý¾Ý·¶Î§ºÍ±ä³¤×Ö·û´®Ïàͬ
¡¡¡¡±í4-1 VBAÊý¾ÝÀàÐÍ
¡¡¡¡×÷ΪABV³ÌÐòÔ±£¬Ò»¸öÄ¿±êÊÇÑ¡ÔñÐèÒª´æ´¢¿Õ¼ä¾¡Á¿Ð¡µÄÊý¾ÝÀàÐÍÀ´±£´æËùÐèÒªµÄÊý¾Ý£¬ÕâÕýÊDZí4-1Ìṩ¸÷ÖÖÊý¾ÝÀàÐÍ´æ´¢¿Õ¼äµÄÔÒò¡£ÀýÈ磬Ҫ±£´æÖîÈç°à¼¶Ñ§Éú×ÜÊýÕâÑùµÄСÊý×Ö£¬ÄÇôByteÊý¾ÝÀàÐ;Í×ã¹»ÁË¡£ÔÚÕâÖÖÇé¿öÏ£¬Ê¹ÓÃSingleÊý¾ÝÀàÐÍÖ»ÊǶԼÆËã»ú´æ´¢¿Õ¼äµÄÀË·Ñ¡£
¡¡¡¡4.4.2 ÓÃDimÓï¾ä´´½¨±äÁ¿(ÉùÃ÷±äÁ¿)
¡¡¡¡ÏÖÔÚ,Äã¶Ô±äÁ¿¿ÉÒÔʹÓõÄÊý¾ÝÀàÐÍÒѾ±È½ÏÊìϤÁË,ÒÔÏÂÎÒÃǽ«´´½¨±äÁ¿.´´½¨±äÁ¿¿ÉÒÔʹÓÃDimÓï¾ä,´´½¨±äÁ¿Í¨³£³ÉΪ"ÉùÃ÷±äÁ¿" DimÓï¾äµÄ»ù±¾Óï·¨ÈçÏÂ:
¡¡¡¡Dim ±äÁ¿Ãû AS Êý¾ÝÀàÐÍ
¡¡¡¡ÕâÌõÓï·¨ÖеıäÁ¿Ãû´ú±í½«Òª´´½¨µÄ±äÁ¿Ãû.¶Ô±äÁ¿µÄÃüÃû¹æÔòºÍ¶Ô¹ý³ÌµÄÃüÃû¹æÔòÏàͬ.ÕâÌõÓï¾äÖеÄÊý¾ÝÀàÐͲ¿·Ö¿ÉÒÔÊDZí4-1ÖеÄÈκÎÒ»ÖÖÊý¾ÝÀàÐÍ.
¡¡¡¡±äÁ¿Ãû±ØÐëÒÔ×Öĸ¿ªÊ¼,²¢ÇÒÖ»Äܰüº¬×ÖĸÊý×ÖºÍÌØ¶¨µÄÌØÊâ×Ö·û,²»Äܰüº¬¿Õ¸ñ¾äºÅ¾ªÌ¾ºÅ,Ò²²»Äܰüº¬×Ö·û@ & $ #.Ãû×Ö×î´ó³¤¶ÈΪ255¸ö×Ö·û
¡¡¡¡ÔÚ½ÓÏÂÀ´µÄÁ·Ï°Öн«ËµÃ÷ÈçºÎÔÚVBAÖÐʹÓñäÁ¿,Ä㽫ҪÊäÈëÄãµÄÃû×Ö,²¢ÓÃÒ»¸öÏûÏ¢¿ò½«ÆäÏÔʾ³öÀ´.¾ßÌå²½ÖèÈçÏÂ:
¡¡¡¡1)´´½¨Ò»¸öÃûΪ"ÏÔʾÄãµÄÃû×Ö"µÄ×Ó³ÌÐò.
¡¡¡¡2)ÊäÈëÒÔÏ´úÂë:
¡¡¡¡Public Sub ÏÔʾÄãµÄÃû×Ö()
¡¡¡¡Dim sÃû×Ö As String
¡¡¡¡sÃû×Ö = Inputbox("ÇëÊäÈëÄãµÄÃû×Ö:")
¡¡¡¡Msgbox "ÄãºÃ"& sÃû×Ö
¡¡¡¡End Sub
¡¡¡¡3)½«Êó±ê·Åµ½¹ý³ÌÖеÄÈκεط½,°´ÏÂF5¼üÔËÐйý³Ì,»áÏÔʾһ¸öÊäÈë¿ò.
¡¡¡¡4)ÊäÈëÄã×Ô¼ºµÄÃû×Ö²¢°´»Ø³µ¼ü,»áÏÔʾһ¸öÏûÏ¢¿ò,ÏÔʾµÄÎÄ×ÖÖаüº¬Äã×Ô¼ºµÄÃû×Ö.
¡¡¡¡5)µ¥»÷"È·¶¨"°´Å¥,·µ»Ø¹ý³ÌÖÐ.
¡¡¡¡ÔÚDimÓï¾äÖв»±ØÌṩÊý¾ÝÀàÐÍ.Èç¹ûûÓÐÊý¾ÝÀàÐÍ,±äÁ¿½«±»¶¨ÒåΪVariantÀàÐÍ,ÒòΪVBAÖÐĬÈϵÄÊý¾ÝÀàÐÍÊÇVariant.ÄãÖªµÀÕâÒ»µãºó,×î³õµÄ·´Ó¦Ò²ÐíÊǾõµÃÓ¦¸Ã²»ÓÃ×Ô¼º¾ö¶¨Êý¾ÝÀàÐÍ,¶ø½«Ò»ÇÐÅ׸øVBA.ÕâÖÖ¹ÛÄîÊÇÍêÈ«´íÎóµÄ.Äã±ØÐë¾ö¶¨Ñ¡ÔñʹÓúÎÖÖÊý¾ÝÀàÐÍ¡£ÒòΪVariantÊý¾ÝÀàÐÍÕ¼Óô洢¿Õ¼ä½Ï´ó£¨16»ò22×Ö½Ú£©¶øÇÒËü½«Ó°Ïì³ÌÐòµÄÐÔÄÜ¡£VBA±ØÐë±æ±ðVariantÀàÐ͵ıäÁ¿Öд洢Á˺ÎÖÖÀàÐ͵ÄÊý¾Ý¡£
¡¡¡¡4.4.3 ±äÁ¿ÃüÃûµÄ¹ßÀý
¡¡¡¡ÏÂ±í¸ø³öÁËÍÆ¼öµÄ±äÁ¿ÃüÃû¹ßÀý
Êý¾ÝÀàÐÍ ¶Ìǰ׺ ³¤Ç°×º Array a ary Boolean f bin Byte b bit Currency c cur Double d dbl Date/Time dt dtm/dat Integer i int Long l lng Object o obj Single sng String s str Variant v var
¡¡¡¡±í4-2 ±äÁ¿ÃüÃûµÄǰ׺
¡¡¡¡4.4.4 ʹÓÃÊý×é
¡¡¡¡Èç¹ûÄãʹÓùýÆäËû±à³ÌÐòÓïÑÔ,¿ÉÄܶÔÊý×éÒѾ±È½ÏÊìϤÁË.Êý×éÊǾßÓÐÏàͬÊý¾ÝÀàÐͲ¢¹²Í¬ÏíÓÐÒ»¸öÃû×ÖµÄÒ»×é±äÁ¿µÄ¼¯ºÏ.Êý×éÖеÄÔªËØÍ¨¹ýË÷ÒýÊý×Ö¼ÓÒÔÇø·Ö,¶¨ÒåÊý×éµÄ·½·¨ÈçÏÂ:
¡¡¡¡Dim array_name(n) As type (ÆäÖÐnÊÇÊý×éÔªËØµÄ¸öÊý)
¡¡¡¡ÀýÈç,Èç¹ûÒª´´½¨±£´æ10¸öѧÉúÃû×ÖµÄÊý×é,¿ÉÒÔÓÃÒÔÏÂÓï¾ä:
¡¡¡¡Dim sѧÉúÃû×Ö(9) As Integer
¡¡¡¡×¢Òâ,À¨ºÅÖеÄÊý×ÖÊÇ9¶ø²»ÊÇ10.ÕâÊÇÒòΪÔÚĬÈϵÄÇé¿öÏÂ,µÚÒ»¸öË÷ÒýÊý×ÖÊÇ0.Êý×éÔÚ´¦ÀíÏàËÆÐÅϢʱ·Ç³£ÓÐÓÃ.¼ÙÉèÒª´¦Àí15ÃÅ¿¼ÊԳɼ¨,¿ÉÒÔ´´½¨15¸ö¶ÀÁ¢µÄ±äÁ¿,ÕâÒâζ×ÅҪʹÓÃ15¸öDimÓï¾ä¡£Ò²¿ÉÒÔ´´½¨Ò»¸öÊý×éÀ´±£´æ¿¼ÊԳɼ¨£¬¾ßÌåÈçÏ£º
¡¡¡¡Dim s¿¼ÊԳɼ¨£¨14£© As Integer
¡¡¡¡ÉùÃ÷Êý×éʱµÄÁíÒ»ÖÖ·½·¨ÊDz»¸ø¶¨´óС¡£¿ÉÒÔÔÚ³ÌÐòÔËÐÐʱ¶¨ÒåÆä´óС¡£Í¨¹ý´´½¨¶¯Ì¬Êý×é¾Í¿ÉÒÔ×öµ½¡£ÀýÈ磬ÄãµÄ³ÌÐòÒª´´½¨Ò»±í¸ñ£¬¿ÉÒÔÌáʾÓû§ÊäÈë±í¸ñµÄÐкÍÁеÄÊýÄ¿¡£ÉùÃ÷¶¯Ì¬Êý×éµÄÓï·¨ÈçÏ£º
¡¡¡¡Dim dyn_array() As type
¡¡¡¡¶ÔÊý×éÉùÃ÷ºó¿ÉÒÔÔÚ³ÌÐòÔËÐÐʱÓãºReDimÓï¾äÖ¸¶¨Êý×éµÄ´óС£º
¡¡¡¡ReDim dyn_array()(array_size)
¡¡¡¡²ÎÊýarray_size´ú±íÊý×éµÄдóС¡£Èç¹ûÒª±£ÁôÊý×éµÄÊýÖµ£¬ÇëÔÚReDimÓï¾äºóʹÓñ£Áô×ÖPreserve,¾ßÌåÓï·¨ÈçÏ£º
¡¡¡¡ReDim Preserve dyn_array(array_size)
¡¡¡¡4.4.5 ±äÁ¿¸³Öµ
¡¡¡¡ÉùÃ÷±äÁ¿ºó¾Í¿ÉÒÔ¸ø±äÁ¿¸³Öµ¡£Çë×¢ÒâÏÂÁÐÓï¾äÖÐΪÊý×é±äÁ¿¸³ÖµÊ±Ë÷ÒýÊý×ÖµÄʹÓá£
¡¡¡¡³ÌÐòÇåµ¥4-4
¡¡¡¡Dim iÈËÊý As Integer
¡¡¡¡Dim i¿¼ÊԳɼ¨ As Integer
¡¡¡¡Dim i As Integer
¡¡¡¡iÈËÊý = inputbox("ÊäÈëѧÉúµÄÈËÊý£º")
¡¡¡¡ReDim Preserve i¿¼ÊԳɼ¨(iÊýÁ¿)
¡¡¡¡For i = 1 to iÈËÊý
¡¡¡¡i¿¼ÊԳɼ¨(i) = inputbox("ÊäÈ뿼ÊԳɼ¨"& i )
¡¡¡¡Next