Board logo

標題: [分享] 指定月 顯示指定星期 [打印本頁]

作者: hcm19522    時間: 2025-10-28 16:05     標題: 指定月 顯示指定星期

[attach]38187[/attach][attach]38187[/attach]
作者: hcm19522    時間: 2025-10-28 16:06

(搜尋 輸入號碼 14467) google網址:https://hcm19522.blogspot.com/
作者: Andy2483    時間: 2025-11-18 14:54

回復 1# hcm19522


    謝謝前輩分享此主題,後學藉此帖練習陣列與字典
學習間發現:令字典相等時,可以讓字典內成員同動,如同字典的分身,學習心得如下,請前輩們指教

執行結果:

[attach]38280[/attach]

Option Explicit
Sub TEST()
Dim Crr(1 To 2, 1 To 32), D As Date, Z, A, C%, T$, T1$, T2$, T3$
[B2].Resize(5, 15).ClearContents
Set Z = CreateObject("Scripting.Dictionary")
D = Year(Date) & "/" & Val([A4]) & "/15"
Set Z("一") = CreateObject("Scripting.Dictionary")
Z("一")("A") = Crr: Set Z("三") = Z("一"): Set Z("六") = Z("一")
Set Z("日") = CreateObject("Scripting.Dictionary")
Z("日")("A") = Crr: Set Z("二") = Z("日"): Set Z("四") = Z("日")
For D = DateSerial(Year(D), Month(D), 1) To DateSerial(Year(D), Month(D) + 1, 0)
   T = Right(Format(D, "[DBNum1]aaa"), 1)
   If Not Z.Exists(T) Then GoTo d01
   A = Z(T)("A")
   C = A(1, 32) + 1
   A(1, 32) = C
   A(1, C) = Format(D, "d")
   A(2, C) = T
   Z(T)("A") = A
d01: Next
[B2].Resize(2, Z("一")("A")(1, 32)) = Z("一")("A")
[B5].Resize(2, Z("日")("A")(1, 32)) = Z("日")("A")
End Sub


Sub TEST_1()
Dim X, Y, Z
Set Z = CreateObject("Scripting.Dictionary")
Set Y = Z
Set X = Z
X("A") = 1000
MsgBox "Y(""A"") =" & Y("A")
MsgBox "Z(""A"") =" & Z("A")
End Sub




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)