excel_vba_±à³Ì½Ì³Ì(ÍêÕû°æ)-µÚ35²¿·Ö
°´¼üÅÌÉÏ·½Ïò¼ü ¡û »ò ¡ú ¿É¿ìËÙÉÏÏ·ҳ£¬°´¼üÅÌÉ쵀 Enter ¼ü¿É»Øµ½±¾ÊéĿ¼ҳ£¬°´¼üÅÌÉÏ·½Ïò¼ü ¡ü ¿É»Øµ½±¾Ò³¶¥²¿£¡
¡ª¡ª¡ª¡ªÎ´ÔĶÁÍꣿ¼ÓÈëÊéÇ©ÒѱãÏ´μÌÐøÔĶÁ£¡
Óï¾äÓ¦¸ÃÓÃÓÚ¾ö¶¨Ö´ÐÐÁ½¸ö²Ù×÷ÖеÄÄÄÒ»¸ö¡£µ±ÄãÒªÖ´Ðжà¸öÓï¾äʱ£¬Äã×îºÃʹÓöàÐиñʽµÄ¡¡
If¡Then¡ElseÓï¾ä£º¡¡¡¡
If¡¡Ìõ¼þ¡¡Then¡¡¡¡¡¡
¡¡¡¡Èç¹ûÌõ¼þΪÕæʱҪִÐеÄÓï¾ä¡¡¡¡¡¡
Else¡¡¡¡¡¡
¡¡¡¡Èç¹ûÌõ¼þΪ¼ÙʱҪִÐеÄÓï¾ä¡¡¡¡¡¡
End¡¡If¡¡¡¡
×¢Ò⣬¶àÐеÄIf¡Then¡ElseÓï¾äÒԹؼü×ÖEnd¡¡If½áÊø¡£Ê¹ÓÃÉÏÃæÏÔʾµÄËõ½øʹµÃ³ÌÐò½á¹¹Ò×ÓÚÔÄ¡¡
¶Á¡£ÔÚÏÂÃæµÄÀý×ÓÖУ¬Èç¹ûÌõ¼þActiveSheet¡£Name¡¡=¡¡¡°Sheet1¡±ÎªÕ棬VB¾ÍÖ´ÐÐThenºÍElseÖ®¼ä¡¡
µÄÓï¾ä£¬²¢ÇÒºöÂÔElseºÍEnd¡¡IfÖ®¼äµÄÓï¾ä¡£µ±Ìõ¼þΪ¼Ùʱ£¬VB¾ÍºöÂÔThenºÍElseÖ®¼äµÄÓï¾ä£¬²¢¡¡
ÇÒÖ´ÐÐElseºÍEnd¡¡IfÖ®¼äµÄ´úÂë¡£¡¡¡¡
If¡¡ActiveSheet¡£Name¡¡=¡¡¡¨Sheet1¡¨¡¡Then¡¡¡¡¡¡
¡¡¡¡ActiveSheet¡£Name¡¡=¡¡¡¨My¡¡Sheet¡¨¡¡MsgBox¡¡¡¨This¡¡sheet¡¡has¡¡been¡¡renamed¡£¡¨¡¡¡¡¡¡
Else¡¡¡¡¡¡
¡¡¡¡MsgBox¡¡¡¨This¡¡sheet¡¡name¡¡is¡¡not¡¡default¡£¡¨¡¡¡¡¡¡
End¡¡If¡¡¡¡¡¡
ÈÃÎÒÃÇÀ´¿´¿´³ÌÐòʾÀý£º¡¡¡¡
1¡£¡¡¡¡ÔÚ¹¤³ÌDecisions£¨Chap05¡£xls£©Àï²åÈëÒ»¸öÐÂÄ£¿é¡¡¡¡
2¡£¡¡¡¡ÖØÃüÃû¸ÃÄ£¿éΪIfThenElse¡¡¡¡
3¡£¡¡¡¡ÊäÈëÏÂÁйý³ÌWhatTypeOfDay£º¡¡¡¡
Sub¡¡WhatTypeOfDay£¨£©¡¡¡¡¡¡
¡¡¡¡Dim¡¡response¡¡As¡¡String¡¡¡¡¡¡
¡¡¡¡Dim¡¡question¡¡As¡¡String¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡106¡¡
¡¡¡Ò³Ãæ¡¡123¡
¡¡¡¡Dim¡¡strmsg1¡¡As¡¡String£»¡¡strmsg2¡¡As¡¡String¡¡¡¡¡¡
¡¡¡¡Dim¡¡myDate¡¡As¡¡Date¡¡¡¡¡¡
¡¡¡¡question¡¡=¡¡¡¨Enter¡¡any¡¡date¡¡in¡¡the¡¡format¡¡mm/dd/yyyy£º¡¨¡¡_¡¡¡¡¡¡
¡¡¡¡¡¡¡¡&¡¡Chr£¨13£©&¡¡¡¨¡¡£¨e¡£g¡££»¡¡11/22/1999£©¡¨¡¡¡¡¡¡
¡¡¡¡strmsg1¡¡=¡¡¡¨weekday¡¨¡¡¡¡¡¡
¡¡¡¡strmsg2¡¡=¡¡¡¨weekend¡¨¡¡¡¡¡¡
¡¡¡¡response¡¡=¡¡InputBox£¨question£©¡¡¡¡¡¡
¡¡¡¡myDate¡¡=¡¡Weekday£¨CDate£¨response£©£©¡¡¡¡¡¡
¡¡¡¡If¡¡myDate¡¡¡·=¡¡2¡¡AND¡¡myDate¡¡0¡¡Then¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ActiveCell¡£Offset£¨0£»¡¡1£©¡£Value¡¡=¡¡¡¨positive¡¨¡¡¡¡¡¡
¡¡¡¡ElseIf¡¡ActiveCell¡£Value¡¡0£©£¬Èç¹û¸ÃÖµ²»´óÓÚ0£¬VB½«Ìøµ½Ï¸öElseIf²¢¼ì²éÌõ¼þ¡¡
ActiveCell¡£Value¡¡0¡¡Then¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ActiveCell¡£Offset£¨0£»¡¡1£©¡£Value¡¡=¡¡¡¨positive¡¨¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡ElseIf¡¡ActiveCell¡£Value¡¡¡¶¡¡0¡¡Then¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡ActiveCell¡£Offset£¨0£»¡¡1£©¡£Value¡¡=¡¡¡¨negative¡¨¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡®End¡¡If¡¡£¨ÔÎÄ´íÎ󣬶àÒ»¸öEnd¡¡If£©¡¡¡¡
¡¡¡¡End¡¡If¡¡¡¡¡¡
End¡¡Sub¡¡¡¡
ÒòΪÄãÐèÒªÔËÐйý³ÌWhatValueºÃ¼¸´ÎÀ´²âÊÔ¸÷ÖÖÌõ¼þ£¬ËùÒÔ£¬ÎÒÃǸøËüÉèÖøöÁÙʱµÄ¿ì½Ý¼ü¡£¡¡¡¡
4¡£¡¡¡¡´ò¿ªÁ¢¼´´°¿Ú£¬²¢ÇÒÊäÈëÏÂÁÐÓï¾ä£º¡¡¡¡
Application¡£OnKey¡¡¡¨^£«y¡¨£»¡¡¡¨WhatValue¡¨¡¡¡¡
Ò»µ©°´Ï»سµ¼ü£¬VB¾Í»áÔËÐÐOnKey·½·¨½«¹ý³ÌWhatValue¸³Óè×éºÏ¼üCtrl£«Shift£«Y¡£Õâ¸ö¼üÅÌ¿ì½Ý¡¡
¼üÖ»ÊÇÁÙʱµÄ¡ª¡ªµ±ÄãÖØÐÂÆô¶¯ExcelºóËü¾Í²»Æð×÷ÓÃÁË¡£ÄãͬÑùÒ²¿ÉÒÔÓÃExcel½çÃ桹¤¾ß²Ëµ¥¡¡¡
ºê¶Ô»°¿òÀïµÄÑ¡ÏîÀ´ÉèÖÿì½Ý¼ü¡£¡¡¡¡
5¡£¡¡¡¡Çл»µ½Excel½çÃ棬²¢¼¤»îSheet1¡¡¡¡
6¡£¡¡¡¡ÔÚµ¥Ôª¸ñA1ÀïÊäÈë0£¬²¢ÇÒ°´ÏÂCtrl£«Shift£«Y¡£VB½«µ÷Óùý³ÌWhatValue²¢ÔÚµ¥Ôª¸ñB1ÀåÃ×ÊäÈë¡¡
¡¡¡¡¡¡¡¡¡¡¡°zero¡±¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡109¡¡
¡¡¡Ò³Ãæ¡¡126¡
7¡£¡¡¡¡ÔÚµ¥Ôª¸ñA1ÀïÊäÈëÈÎÒâ´óÓÚ0µÄÊý×Ö£¬²¢°´ÏÂCtrl£«Shift£«Y£¬VB½«Ôٴε÷ÓÃWhatValue¡£VBÆÀ¹À¡¡
¡¡¡¡¡¡¡¡¡¡µÚÒ»ÖÖÌõ¼þ£¬ÒòΪ¸Ã²âÊԵĽá¹ûΪ¼Ù£¬ËùÒÔËüÌøµ½ElseIfÓï¾ä¡£µÚ¶þ¸öÌõ¼þΪÕ棬Òò´ËVBÖ´ÐС¡
¡¡¡¡¡¡¡¡¡¡ThenºóÃæµÄÓï¾ä£¬²¢ÇÒÌø¹ýÏÂÒ»ÌõÓï¾ä£¬Ö±½Óµ½End¡¡If¡£ÒòΪEnd¡¡IfºóÃ沢ûÓÐÆäËüµÄÓï¾äÁË£¬¡¡
¡¡¡¡¡¡¡¡¡¡¸Ã¹ý³Ì±ã½áÊøÁË£¬µ¥Ôª¸ñB1ÏÖÔÚÏÔʾ¡°positive¡±¡£¡¡¡¡
8¡£¡¡¡¡ÔÚµ¥Ôª¸ñA1ÀïÊäÈëÈÎÒâСÓÚ0µÄÊý×Ö£¬²¢°´ÏÂCtrl£«Shift£«Y¡£Õâ´Î£¬Ç°ÃæÁ½¸öÌõ¼þ¶¼·µ»Ø¼Ù£¬¡¡
¡¡¡¡¡¡¡¡¡¡Òò´ËVB¼ÌÐø¼ì²éµÚÈý¸öÌõ¼þ¡£ÒòΪÕâ´ÎµÄ²âÊÔΪÕ棬VB¾ÍÔÚµ¥Ôª¸ñB1ÀïÌùÉϱêÇ©¡°negative¡±¡¡¡¡
9¡£¡¡¡¡ÔÚµ¥Ôª¸ñA1ÀïÊäÈëÈκÎÎı¾£¬²¢°´ÏÂCtrl£«Shift£«Y£¬VBµÄ·´Ó¦ÊÇ¡°positive¡±£¬È»¶ø£¬Õâ²»ÊÇ¡¡
¡¡¡¡¡¡¡¡¡¡¸öÂúÒâµÄ´ð°¸¡£ÄãÒ²ÐíÏ£ÍûVBͨ¹ýÏÔʾ¡°text¡±À´Çø·Ö¿ªÕýÊýºÍÎı¾¡£ÒªÊ¹ÄãµÄ¹ý³ÌWhatValue¡¡
¡¡¡¡¡¡¡¡¡¡¸ü¡°´ÏÃ÷¡±Ð©£¬Äã¾ÍÐèҪѧϰÈçºÎͨ¹ýʹÓÃǶÌ×µÄIf¡ThenÓï¾äÀ´×÷һЩ¸ü¸´Ôӵľö¶¨¡£¡¡¡¡
6¡£Ç¶Ì׵ġ¡If¡Then¡¡Óï¾ä¡¡¡¡
½«Ò»¸öIf¡ThenÓï¾ä»òIf¡Then¡ElseÓï¾ä·ÅÔÚÁíÍâÒ»¸öIf¡ThenÓï¾ä»òIf¡Then¡ElseÓï¾äÀï¡¡
Ã棬Äã¿ÉÒÔÔÚÄãµÄVBA¹ý³ÌÀï×÷³ö¸ü¸´Ôӵľö¶¨¡£ÕâÖÖÒ»¸öIfÓï¾äÀï°üº¬ÁíÒ»¸öIfÖ¸Áî¿éµÄ½á¹¹³Æ¡¡
ΪǶÌ×µÄIfÓï¾ä¡£¡¡¡¡
½ÓÏÂÀ´µÄ¹ý³ÌTestConditionsÊÀÉϽÚÀïµÄ¹ý³ÌWhatValueµÄÐÞÕý°æ£¬ÑÝʾǶÌ×µÄIf¡ThenÓï¾äÊÇÈç¡¡
ºÎ¹¤×÷µÄ£º¡¡¡¡
Sub¡¡TestConditions£¨£©¡¡¡¡¡¡
¡¡¡¡¡¡Range£¨¡¨A1¡¨£©¡£Select¡¡¡¡¡¡
¡¡¡¡¡¡If¡¡IsEmpty£¨ActiveCell£©¡¡Then¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡MsgBox¡¡¡¨The¡¡cell¡¡is¡¡empty¡£¡¨¡¡¡¡¡¡
¡¡¡¡¡¡Else¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡If¡¡IsNumeric£¨ActiveCell¡£Value£©¡¡Then¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡If¡¡ActiveCell¡£Value¡¡=¡¡0¡¡Then¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ActiveCell¡£Offset£¨0£»¡¡1£©¡£Value¡¡=¡¡¡¨zero¡¨¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ElseIf¡¡ActiveCell¡£Value¡¡¡·¡¡0¡¡Then¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ActiveCell¡£Offset£¨0£»¡¡1£©¡£Value¡¡=¡¡¡¨positive¡¨¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ElseIf¡¡ActiveCell¡£Value¡¡¡¶¡¡0¡¡Then¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ActiveCell¡£Offset£¨0£»¡¡1£©¡£Value¡¡=¡¡¡¨negative¡¨¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡End¡¡If¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Else¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ActiveCell¡£Offset£¨0£»¡¡1£©¡£Value¡¡=¡¡¡¨text¡¨¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡End¡¡If¡¡¡¡¡¡
¡¡¡¡¡¡End¡¡If¡¡¡¡¡¡
End¡¡Sub¡¡¡¡¡¡
ΪÁËʹ¹ý³ÌTestConditions¸üÈÝÒ×Àí½â£¬Ã¿¸öIf¡ThenÓï¾ä¶¼ÏÔʾΪ²»Í¬µÄ¸ñʽ£¬ÏÖÔÚÄã¿ÉÒÔÇå³þ¡¡
µØ¿´µ½¹ý³ÌʹÓÃÁËÈ