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

[µo°Ý] ±N¤£¦P¤u§@­È¶×¦b¤@­Ó¤u§@ªí¤º

[µo°Ý] ±N¤£¦P¤u§@­È¶×¦b¤@­Ó¤u§@ªí¤º

123.rar (28.12 KB) ¦U¦ì¥ý¶i³o¬O¤@­Ó­È¯Z²Î­pªí¡A¥­¤é«Y¥ÑA²Õ¤H½ü­È¡A¶g¤»¤Î¨ä¥L¨Ò°²¤é¤´¥ÑA²Õ¤H­û½ü­È¡A¬P´Á¤é¥ÑB²Õ¤H½ü­È¡A½Ð°Ý­n¦p¦ó±N¤T­Ó¤u§@ªíªº½ü­Èª¬ªp·|¾ã¦b¤@­Ó¤u§@ªí¤º©O¡A¥Î¨ç¼Æ¬O§_¥i¥H¹F¦¨

¥»©«³Ì«á¥Ñ GBKEE ©ó 2011-9-10 19:35 ½s¿è

¦^´_ 1# h60327
For i = [K1] To [K1] + 730     ¶W¹L¤@¦~·|³y¦¨¸ê®Æ¤£¥¿½T     
«Øij : °²¤é,¥­¤é ¶g¤é ­n­×§ï¬° For i = [K1] To DateAdd("yyyy", 1, [k1]) - 1     ¥BK1 ¬O­n¦P¤@¤Ñ

Á`ªíB2:->  2011/09 XXXX    ¤¤¶¡­nªÅ¤@®æ
  1. Sub Ex()
  2.     Dim ¶gªí(), Ds As Object, ªí³æ As Range, R As Range
  3.     Dim Sh As Worksheet, f As Range, D As Date
  4.     ¶gªí = Array("¤@", "¤G", "¤T", "¥|", "¤­", "¤»", "¤é")          '¬P´Á§O¤§°}¦C
  5.     Set Ds = CreateObject("Scripting.Dictionary")
  6.     With Sheets("Á`ªí")                                             '«ü©w¦bÁ`ªí
  7.         Set ªí³æ = .[B5]                              'Á`ªíªº²Ä1­Ó¤é´Á
  8.         D = DateValue(Split(.[B2], Space(1))(0))                    'B2:->  2011/09 XXXX
  9.         For Each Sh In Sheets
  10.             If Sh.Name <> .Name Then                                '¨Ì§Ç¦b¥­¤é,°²¤é,©P¤é µ¥¤u§@ªí
  11.                 For Each R In Sh.UsedRange.Columns(3).Cells         '²Ä3Äæ
  12.                     If R = Month(D) Then Ds(DateSerial(Year(D), R, R.Cells(1, 2))) = R.Cells(1, -1)  'R.Cells(1, -1): ->·í¤é­È¯Z¤H­û
  13.                     'R = Month(D)   ¦P¤@¤ë¥÷
  14.                 Next
  15.             End If
  16.         Next
  17.         ªí³æ.Resize(31, 14) = ""      '²M°£Â¸ê®Æ
  18.         Do While Month(D) = Month(DateValue(Split(.[B2], Space(1))(0)))    '°j°éªº±ø¥ó¬O¦P¤@¤ë¥÷
  19.             Set f = .Cells.Find(Ds(D))                                     '´M§ä·í¤é¦bªí³æ¸Ì­È¯Z¤H­ûªº¦ì¸m
  20.             .Cells(ªí³æ.Row, f.Column) = "¡´"                              'f.Column: ­È¯Z¤H­û¦ì¸mªºÄæ¼Æ
  21.             With ªí³æ
  22.                 .Cells = Day(D)                                            '¼g¤J ¤é¼Æ
  23.                 .Cells(1, 2) = ¶gªí(Weekday(D, vbMonday) - 1)               '¼g¤J¶Ç¦^¬P´Á§O
  24.                 .Resize(, 2).Interior.ColorIndex = IIf(Weekday(D, vbMonday) >= 6, 6, xlNone) '¨î­q¥ð°²¤é­I´º¦â
  25.             End With
  26.             Set ªí³æ = ªí³æ.Offset(1)                                       '©¹¤U¦ì²¾¤@¦ì
  27.             D = D + 1                                                       '¤é´Á+1¤Ñ
  28.         Loop
  29.     End With
  30.     Set Ds = Nothing
  31.     Set ªí³æ = Nothing
  32.      Set R = Nothing
  33.      Set Sh = Nothing
  34. End Sub
½Æ»s¥N½X

TOP

¦^´_ 1# h60327

¨ç¼Æ§¹¦¨½Ð¨£ªþ¥ó
123.rar (22.41 KB)
¾Ç®üµL²P_¤£®¢¤U°Ý

TOP

¼Ï¶s¤]«Ü¤è«K§r¡C

TOP

¥Ñ©óÅv­­ÁÙµLªk¤U¸ü¡A½Ð°ÝHsiehªO¤j¨ç¼Æ¤½¦¡¬°¦ó©O¡H¦A¦¸·PÁ¦U¦ì¥ý¶iªº«ü±Ð

TOP

        ÀR«ä¦Û¦b : ¹D¼w¬O´£ª@¦Û§Úªº©ú¿O¡A¤£¸Ó¬O¨þ¥¸§O¤HªºÃ@¤l¡C
ªð¦^¦Cªí ¤W¤@¥DÃD