问题描述
大家好,任何人都可以吸我。
我正在使用sql函数填写excel中的日期和日期
在我的用户界面中,我有从日期和到目的地。
2013年4月1日 - >从即日起
2013年4月30日 - >到期日
Excel报告
日期日
1-03-13周一
2-03-13周二
3 -03-13星期三
。
15-03-13星期二
..
30-03- 13星期二
这里的日计算我把它制成了excel sheet公式本身。
= TEXT(A1, dddd)
在我的excel表格中,我将该公式硬编码了31天它是静态的
但是我的用户界面他可能选择不到31天
即1-3-12到15-3-12
所以我的excel表日专栏在15-03-13之后所有周六,周六只有
如何解决这个问题。 />
错误结果:
日期日
1-03-13星期一
2-03-13星期二
3-03-13星期三
。
15-03-13星期二
星期六
星期六
星期六
预期成果
日期日
1-03-13周一
2-03 -13星期二
3-03-13星期三
。
15-03-13星期二
Hi guys any one can sugest me.
I''m using sql functions to fill date and day in the excel
In my user interface i have From date and To date.
1 April 2013--> From Date
30 April 2013-->To Date
Excel Report
Date Day
1-03-13 Monday
2-03-13 Tuesday
3-03-13 Wednesday
.
15-03-13 Tuesday
..
30-03-13 Tuesday
Here day calculation i made it excel sheet formula itself.
=TEXT(A1, "dddd")
In My excel sheet i hard coded the formula for 31 days it is static
But i my user interface he may select less than 31 days
i.e 1-3-12 to 15-3-12
So i my excel sheet Day column after 15-03-13 all coming Saturday,Saturday only
How to solve this problem.
Bug Result:
Date Day
1-03-13 Monday
2-03-13 Tuesday
3-03-13 Wednesday
.
15-03-13 Tuesday
Saturday
Saturday
Saturday
Expected Result
Date Day
1-03-13 Monday
2-03-13 Tuesday
3-03-13 Wednesday
.
15-03-13 Tuesday
推荐答案
Sub EnumDates()
Dim curDate As Date, fromDate As Date, toDate As Date
Dim i As Integer
i = 1
fromDate = DateSerial(2013, 1, 1)
toDate = DateSerial(2013, 3, 31)
curDate = fromDate - 1
Do While curDate < toDate
curDate = curDate + 1
With ThisWorkbook.Worksheets(1).Range("A" & i)
.NumberFormat = "yyyy-MM-dd"
.Value = curDate
End With
With ThisWorkbook.Worksheets(1).Range("B" & i)
.NumberFormat = "dddd"
.Value = curDate
End With
i = i + 1
Loop
End Sub
SQL:
SQL:
DECLARE @curDate DATETIME
DECLARE @fromDate DATETIME
DECLARE @toDate DATETIME
SET @fromDate = '2013-01-01'
SET @toDate = '2013-03-31'
SET @curDate = @fromDate -1
;WITH dates AS
(
SELECT @curDate +1 As MyDate, DATENAME(dw, @curDate +1) AS MyDayName
UNION ALL
SELECT MyDate +1, DATENAME(dw, MyDate +1) AS MyDayName
FROM dates
WHERE MyDate<@toDate
)
SELECT *
FROM dates
这篇关于关于winform中的Excel报告的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!