我有一些在excel中创建图表的代码。 x轴采用日期格式,作为标准的Excel设置,自动缩放始终在数据开始之前留下较大的间隙。为了解决这个问题,我希望我的第一个日期值是第二个时间,并将其设置为.MinimumScale,但我遇到问题并且无法将其转换为正确的格式。
例如,DateTime.Now值现在是14/12/2017 14:25,而作为excel中的数字,它是43083.60。我想(虽然我不是100%肯定)我需要输入我的.MinimumScale
的值With chartPage.Axes(Excel.XlAxisType.xlValue)
.HasTitle = True
.AxisTitle.Caption = "Time (Days)"
.hasminorgridlines = True
Dim date1 As String
date1 = DateTime.Now.ToString
MessageBox.Show(date1)
.MinimumScale = date1
谢谢
答案 0 :(得分:1)
Excel将日期时间值存储为Double
数据类型。 Axis.MinimumScale Property也是Double
类型。
要将.Net DateTime
值转换为代表Excel DateTime值的Double
,请调用其ToOADate Method。
.MinimumScale = DateTime.Now.ToOADate()