ªð¦^¦Cªí ¤W¤@¥DÃD µo©«

[µo°Ý] »ù®æ§R°£±i¼Æ¦Û°Ê§R°£

¦^´_  coafort

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
With  ...
samwang µoªí©ó 2022-1-27 10:20


«D±`·P®¦S¤j¤j
¡A¦³±z¯u¦n:D

TOP

¦^´_  coafort

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
With  ...
samwang µoªí©ó 2022-1-27 10:20


½Ð°Ý¤j¤j
¦pªG¦P¤@Äæ
3~23
27~40
»Ý­n³o­Ó¥\¯à
½Ð°Ý¸Ó«ç»ò§ï©O¡H
§Ú§ï¦¨¥H¤U¡A¥u¦³3~23¦³³o¥\¯à¡A27~40¨S¦³
ÁÂÁ¤j¤j
  If .Column = 16 Then
        If .Row < 3 Then Exit Sub
        If .Row > 23 Then Exit Sub
        If .Count > 1 Then Exit Sub
        If .Value = "" Then .Offset(, 1).ClearContents
        End If
    If .Column = 16 Then
        If .Row < 27 Then Exit Sub
        If .Row > 40 Then Exit Sub
        If .Count > 1 Then Exit Sub
        If .Value = "" Then .Offset(, 1).ClearContents
        End If

TOP

If .Column = 16 Then
         If .Row < 3 Then Exit Sub
         If .Row > 40 Then Exit  ...
samwang µoªí©ó 2022-1-29 12:21


¤j¤j±z¦n
3~40·í¤¤
24~26³o¤T¦C¬O¤£»Ý­nªº
¤j¤jªº¤è¦¡¦n¹³¥u¦³26
ÁÙ¬O»¡¥t¥~24 25¤]¬O­n¿é¤J©O¡H
ÁÂÁ¤j¤j

TOP

If .Row >= 24 And .Row
samwang µoªí©ó 2022-1-29 13:56


ÁÂÁ¤j¤j
²×©ó¥i¥H¤F
¦³¤j¤j¯u¦n
¯¬ºÖ¤j¤jªê¦~¦æ¤j¹B
·s¦~¤j§Ö¼Ö:D

TOP

½Ð°Ý¤j¤j¡A¤U¦C­n¦p¦ó¾ã¦X©O¡H
§Ú¥Î¤À³Î½u¤À¹j
¤]´N¬O²Ä¤G²Ä¤Tªº¤u§@ªí¬O³o­Ó
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
With Target
    If .Worksheet.Index = 1 Then Exit Sub
    If .Worksheet.Index > 3 Then Exit Sub
    If .Column = 41 Then
        If .Count > 1 Then Exit Sub
        If .Value = "" Then .Offset(, 1).ClearContents
        End If
    If .Column = 27 Then
        If .Count > 1 Then Exit Sub
        If .Value = "" Then .Offset(, 1).ClearContents
        End If
    If .Column = 1 Then
        If .Count > 1 Then Exit Sub
        If .Value = "" Then .Offset(, 1).ClearContents
        End If
    If .Column = 16 Then
         If .Row < 3 Then Exit Sub
         If .Row > 40 Then Exit Sub
         If .Row >= 24 And .Row <= 26 Then Exit Sub
         If .Count > 1 Then Exit Sub
         If .Value = "" Then .Offset(, 1).ClearContents
      End If
    If .Column = 20 Then
         If .Row < 3 Then Exit Sub
         If .Row > 40 Then Exit Sub
         If .Row >= 24 And .Row <= 26 Then Exit Sub
         If .Count > 1 Then Exit Sub
         If .Value = "" Then .Offset(, 1).ClearContents
      End If


²Ä¥|²Ä¤­ªº²Ä¤C²Ä¤K¤u§@ªí¬O³o­Ó
================================================================
    If .Worksheet.Index = 6 Then Exit Sub
    If .Worksheet.Index > 4 Then Exit Sub
    If .Worksheet.Index > 8 Then Exit Sub
    If .Column = 45 Then
        If .Count > 1 Then Exit Sub
        If .Value = "" Then .Offset(, 1).ClearContents
        End If
    If .Column = 30 Then
        If .Count > 1 Then Exit Sub
        If .Value = "" Then .Offset(, 1).ClearContents
        End If
    If .Column = 1 Then
        If .Count > 1 Then Exit Sub
        If .Value = "" Then .Offset(, 1).ClearContents
        End If
    If .Column = 17 Then
         If .Row < 3 Then Exit Sub
         If .Row > 40 Then Exit Sub
         If .Row >= 24 And .Row <= 26 Then Exit Sub
         If .Count > 1 Then Exit Sub
         If .Value = "" Then .Offset(, 1).ClearContents
      End If
    If .Column = 22 Then
         If .Row < 3 Then Exit Sub
         If .Row > 40 Then Exit Sub
         If .Row >= 24 And .Row <= 26 Then Exit Sub
         If .Count > 1 Then Exit Sub
         If .Value = "" Then .Offset(, 1).ClearContents
      End If
  End With
End Sub
ÁÂÁ¤j¤j

TOP

¦^´_  coafort


    ÁÂÁ«e½ú
«á¾ÇÂǦ¹©«¾Ç²ß¨ì Workbook.SheetChange ¨Æ¥ó
¥H¤U¬O¾Ç²ß¤è®×,½Ð«e½ú ...
Andy2483 µoªí©ó 2023-7-21 08:41


¯u¬O«D±`·PÁ¤j¤jÀ°¦£
¥i¥H¤F
ÆgÆg

TOP

¦^´_  coafort


    ®¥³ß
«á¾Ç»{¬°¥Î¤u§@ªí¯Á¤Þ¸¹¿ëÃÑ ­·ÀI°ª(¸U¤@¤£¤p¤ßÅܰʶ¶§Ç)
«ØijÁÙ¬O¥H¤u§@ªí ...
Andy2483 µoªí©ó 2023-7-21 09:10



¯uªº«Ü¦n¥Î
¯uªº«Ü·PÁ·|VBªº¦w­}¤j¤j

TOP

¦^´_  coafort


    ÁÂÁ«e½ú
«á¾ÇÂǦ¹©«¾Ç²ß¨ì Workbook.SheetChange ¨Æ¥ó
¥H¤U¬O¾Ç²ß¤è®×,½Ð«e½ú ...
Andy2483 µoªí©ó 2023-7-21 08:41


½Ð°Ý¤j¤j¡A¥Ø«eªº³]­p¬O³æ¤@§R°£¸òµÛ§R°£¤@­Ó
¦pªG¤@¦¸°é¿ï¦n´X­ÓµLªk¸òµÛ§R°£
½Ð°Ý¦³¿ìªk§ï¶Ü
ÁÂÁ¤j¤j

TOP

¦^´_ 32# Andy2483

³ø§i¤j¤j¡A¤£¯à¥Î©O
ÁÂÁ¤j¤j

TOP

¦^´_ 34# Andy2483

ÁÂÁ¤j¤jªºÀ°¦£
¦ýÁÙ¬OµLªk¨Ï¥Î
§Ú§ï³o¼Ë
Option Explicit
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim Wi%, xA As Range, xR As Range, xP As Range, xI As Range
'¡ô«Å§iÅܼÆ:Wi¬Oµu¾ã¼Æ,(xA,xR,xP,xI)³£¬OÀx¦s®æÅܼÆ
With Target
   On Error GoTo 99
   '¡ôµ{§Ç¹J¨ì¿ù»~´N¸õ¨ì¼Ð¥Ü 99ªº¦ì¸mÄ~Äò°õ¦æ
   Set xA = Intersect(.Cells, Range([A1], ActiveSheet.UsedRange)).SpecialCells(4)
   '¡ô¥OxAÅܼƬO ¥æ¶°®æ(IJµo®æ»P¦³¨Ï¥Î®æ)¸ÌªºªÅ¥Õ®æ
   Wi = .Worksheet.Index
   '¡ô¥OWiÅܼƬO IJµo¤u§@ªí¯Á¤Þ¸¹
   If InStr("/2/3/6/", "/" & Wi & "/") Then Set xP = [A3:A233,AA3:AA233,AO3:AO233,P3:P23,T3:T23,P27:P40,T27:T40]
   '¡ô¦pªGIJµo¤u§@ªí¯Á¤Þ¸¹¬O 2©Î3 ,´N¥OxPÅܼƬO[]¸ÌªºÀx¦s®æ
   If InStr("/4/5/7/8/", "/" & Wi & "/") Then Set xP = [A3:A233,AD3:AD233,AS3:AS233,Q3:Q23,V3:V23,Q27:Q40,V27:V40]
   '¡ô¦pªGIJµo¤u§@ªí¯Á¤Þ¸¹¬O 4.5.7©Î8 ,´N¥OxPÅܼƬO[]¸ÌªºÀx¦s®æ
   Set xI = Intersect(xP, xA)
   '¡ô¥OxIÅܼƬO ¥æ¶°®æ(xPÅܼƻPxAÅܼÆ)
   If xI Is Nothing Then Exit Sub
   '¡ô¦pªGxIÅܼƬO µLª«¥ó? True´Nµ²§ôµ{§Ç°õ¦æ
   If Intersect(xI, .Cells) Is Nothing Then Exit Sub
   '¡ô¦pªG¥æ¶°®æ(xIÅܼƻPIJµo®æ)¬O µLª«¥ó? True´Nµ²§ôµ{§Ç°õ¦æ
   For Each xR In xI: xR.Offset(, 1).ClearContents: Next
   '¡ô³]³v¶µ°j°é!¥OxRÅܼƬO xIÅܼƸ̪º¤@®æ,¥O¥k°¼¹j¾À®æ²M°£¤º®e
99: End With
End Sub


½Ð°Ý¤j¤jÁÙ¦³­þ¨Ç»Ý­n§ï¶Ü¡H
«D±`ÁÂÁ¤j¤j

TOP

        ÀR«ä¦Û¦b : ¤@­Ó¤H¤£©È¿ù¡A´N©È¤£§ï¹L¡A§ï¹L¨Ã¤£Ãø¡C
ªð¦^¦Cªí ¤W¤@¥DÃD