以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  求个代码 返回周数  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=40109)

--  作者:jianjingmaoyi
--  发布时间:2013/9/9 21:31:00
--  求个代码 返回周数

  上月的21号 到本月的22号  总共有几周

 

 

  第一周  是几号到几号

  第二周  是几号到几号 

  以此类推

 

  这个代码怎么写?


--  作者:有点甜
--  发布时间:2013/9/9 21:48:00
--  
 如下代码,参考修改。

Dim s_date As Date = #8/21/2013#
Dim e_date As Date = #9/21/2013#

Dim ls As New List(Of String)
Dim temp As Date = s_date.AddDays(6 - s_date.DayOfWeek)
ls.Add(s_date & "-" & temp)
Do While temp < e_date
    ls.Add(temp.AddDays(1) & "-" & temp.AddDays(7))    
    temp = temp.AddDays(7)
Loop

For Each l As String In ls
    msgbox(l)
Next

--  作者:jianjingmaoyi
--  发布时间:2013/9/9 22:01:00
--  

谢谢!

 

 如果第一周就计算7天,到最后一周算到几天就几天呢,代码怎么写?


--  作者:有点甜
--  发布时间:2013/9/9 22:15:00
--  
 如下代码

Dim s_date As Date = #8/21/2013#
Dim e_date As Date = #9/18/2013#

Dim ls As New List(Of String)
Dim temp As Date = s_date.AddDays(6 - s_date.DayOfWeek)
ls.Add(s_date & "-" & temp)
Do While temp < e_date.AddDays(-7)
    ls.Add(temp.AddDays(1) & "-" & temp.AddDays(7))    
    temp = temp.AddDays(7)
Loop

ls.Add(temp.AddDays(1) & "-" & e_date)

For Each l As String In ls
    msgbox(l)
Next

--  作者:jianjingmaoyi
--  发布时间:2013/9/9 22:20:00
--  

这个不太对

 

 

  我的意思是

 

 

Dim s_date As Date = #8/22/2013#   从22号开始
Dim e_date As Date = #9/21/2013#   到21号结束
 
   第一周是按照22到28号 7天计算 每隔7天算1周 算到下月21号结束这样的意思!  最后一周是几天就是几天.前面都是1周为7天这样.

--  作者:有点甜
--  发布时间:2013/9/9 22:28:00
--  
 Dim s_date As Date = #8/21/2013#
Dim e_date As Date = #9/18/2013#

Dim ls As New List(Of String)

Do While s_date < e_date.AddDays(-7)
    ls.Add(s_date & "-" & s_date.AddDays(6))    
    s_date = s_date.AddDays(7)
Loop

ls.Add(s_date & "-" & e_date)

For Each l As String In ls
    msgbox(l)
Next

--  作者:jianjingmaoyi
--  发布时间:2013/9/9 22:32:00
--  
 谢谢  就是这个!  学习了  尽管还是有些是懂非懂. 哈哈