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

[µo°Ý] ¯x°} or VBA ¦p¦ó«Ø¥ß ?

[µo°Ý] ¯x°} or VBA ¦p¦ó«Ø¥ß ?

½Ð±Ð¦U¦ì¤j¤j¥ý¶i:
¯x°} or  VBA ¦p¦ó«Ø¥ß ?
¦pªþ¥ó¤º»¡©ú:

¬¡­¶Ã¯1.rar (7.32 KB)

¦^´_ 11# duck_simon

¦pªGG:Kªº¼Æ¦r¬O¤£­«½Æªº®É¡A¥i¥H¥ÎCOUNTIF¨Ó³B²z¡A¤½¦¡­pºâ¤è¦¡»P5¼ÓGBKEE¶WªOªºVBA¦¡¤@¼Ëªº¡A¥i¥H¹ï·Ó¨Ï¥Î

L27  =IF(OR(MMULT(COUNTIF(G27:K27,N(OFFSET(G27,-ROW($1:$20),{0,1,2,3,4}))),{1;1;1;1;1})>3),1,0)
{...} ªí¥Ü»Ý­n¥Î CTRL+SHIFT+ENTER ¤TÁä¿é¤J¤½¦¡

TOP

¦^´_ 9# ML089


    ·PÁ ML089¤j¤j, ¯u¼F®` , §Ú¬Ý¤F³£ÀY·w  ÁÂÁ ~

TOP

¦^´_ 8# GBKEE


·PÁ ¶W¯Å¤jªO¥D«ü¾É ,ÁÂÁ ~

TOP

¦^´_ 6# duck_simon

L27 =IF(OR(MMULT(1-ISERROR(MATCH(N(OFFSET(G27,-ROW($1:$20),{0,1,2,3,4},)),G27:K27,)),{1;1;1;1;1})>3),1,0)
©¹¤W½Æ»s
{...} ªí¥Ü»Ý­n¥Î CTRL+SHIFT+ENTER ¤TÁä¿é¤J¤½¦¡

TOP

¦^´_ 7# duck_simon
³o¬OVBA µ{¦¡½X,§A­n¥h°õ¦æ³oµ{¦¡.
·P®¦ªº¤ß......(¦b³Â»¶®a±Ú°Q½×°Ï.¥Î¤ß¾Ç²ß·|¦³¶i¨Bªº)
¦ý¸ê·½µL­­,«á´©¦³­­,  ¤@¤Ñ1¤¸ªºÃÙ§U,¤H¤H¦³¯à¤O.

TOP

¦^´_  duck_simon
¸Õ¸Õ¬Ý
GBKEE µoªí©ó 2014-4-18 09:27



¦^GBKEE¤j¤j: ½Æ»sµ{¦¡½X¤§«á  ÁÙ­n³]¦ì®æ (L27) =EX  ¶Ü?

TOP

²Ä1´Á¤ñ²Ä2´Á~²Ä20´Á¶Ü?
²Ä2´Á¤ñ²Ä3´Á~²Ä21´Á¶Ü?
²Ä3´Á¤ñ²Ä4´Á~²Ä22´Á¶Ü?
ML089 µoªí©ó 2014-4-17 22:43



¦^ml¤j¤j  ¥i¥H, ®t¤@´Á¨SÃö«Y !

TOP

¦^´_ 3# duck_simon
¸Õ¸Õ¬Ý
  1. Option Explicit
  2. Sub Ex()
  3.     Dim Rng(1 To 3) As Range, i As Integer, ii As Integer, iii As Integer
  4.     Dim Msg(1 To 5) As Integer
  5.     Dim MsgAll(1 To 19) As Integer
  6.     With Sheet1
  7.         Set Rng(1) = .Range("G1:K" & .Cells(.Rows.Count, "G").End(xlUp).Row)  'G:K ªº½d³ò
  8.         For i = 20 To Rng(1).Rows.Count                                       '²Ä20¦C¶}©l
  9.             Set Rng(2) = Rng(1).Rows(i)
  10.             Set Rng(3) = Rng(2).Offset(-19).Resize(19)                         '©¹¤W19¦Cªº½d³ò
  11.             Erase MsgAll                     '¬ö¿ý19¦C¤¤ªº Msg
  12.             'Erase ³¯­z¦¡ ­«·sªì©l¤Æ©T©w¤j¤p°}¦Cªº¤¸¯À , ¨ÃÄÀ©ñ°ÊºA°}¦CªºÀx¦sªÅ¶¡
  13.             For ii = 1 To 19
  14.                 Erase Msg
  15.                 For iii = 1 To 5
  16.                     If Application.CountIf(Rng(3).Rows(ii), Rng(2).Cells(iii)) Then Msg(iii) = 1  '°O¿ý¨C¤@¦Cªº¬Û¦P¼Æ
  17.                 Next
  18.                 If Application.Sum(Msg) >= 4 Then MsgAll(ii) = 1
  19.             Next
  20.             If Application.Sum(MsgAll) >= 3 Then
  21.                 Rng(2).Cells(1, iii) = 1
  22.             Else
  23.                 Rng(2).Cells(1, iii) = 0
  24.             End If
  25.         Next
  26.     End With
  27. End Sub
½Æ»s¥N½X
·P®¦ªº¤ß......(¦b³Â»¶®a±Ú°Q½×°Ï.¥Î¤ß¾Ç²ß·|¦³¶i¨Bªº)
¦ý¸ê·½µL­­,«á´©¦³­­,  ¤@¤Ñ1¤¸ªºÃÙ§U,¤H¤H¦³¯à¤O.

TOP

²Ä1´Á¤ñ²Ä2´Á~²Ä20´Á¶Ü?
²Ä2´Á¤ñ²Ä3´Á~²Ä21´Á¶Ü?
²Ä3´Á¤ñ²Ä4´Á~²Ä22´Á¶Ü?
{...} ªí¥Ü»Ý­n¥Î CTRL+SHIFT+ENTER ¤TÁä¿é¤J¤½¦¡

TOP

        ÀR«ä¦Û¦b : ¸Ü¦h¤£¦p¸Ü¤Ö¡A¸Ü¤Ö¤£¦p¸Ü¦n¡C
ªð¦^¦Cªí ¤W¤@¥DÃD