Excel 2003 中的单元格式可以有多种, 如下图:
其中日期/时间可以与数字进行互转, 但前提是这些日期/时间必须是Excel能识别的格式, 例如: 输入2009-12-24 , 转换为数字是:40171
输入2009-12-24 10:10:10, 转换为数字是40171., 官方说法其日期是以1900年1月1日为起始日, 时间以午夜零时为起始时间.
MS SQL Server 2005 的datetime类型的日期时间也是以1900年1月1日零时作为起始点, 我想, 当我们以这个数值(40171.4237268519)插入MS SQL Server 2005 字段为datetime
类型的表时, 产生的日期应该是: 2009-12-24 10:10:10
,
但很可惜, 实际上得到的却是:
比预期的多出了两天!!!
为什么?
同是微软的东西, 难道算法还会不一致?
原来这里面有一个很隐蔽的BUG(不知道算不算BUG):
先在Excel的某个单元格上设置格式为日期格式, 然后输入0, 回车! 结果是1900-1-0
, 晕了原来Excel的参考起始日期并不是官方说的1900-1-1
, 而是1900-1-0
, 这样算出来的日期就比如SQL Server算出来的多出了一天!
再次在单元格上输入60
, 然后回车, 结果是1900-2-29
! 微软真能搞, 1900年并不是润年(真正的判断法则是:能被4或400整除,但不能被100整除的年份为闰年), 所以这里又多出了一天!
所以Excel算出来的日期数值与SQL Server算出来的日期数值相差2
天!
- 大小: 44.5 KB
- 大小: 7 KB
- 大小: 8 KB
分享到:
相关推荐
"Excel2Json进阶版"是一个Python工具,它专为将Excel文件转换成Json格式而设计,适用于那些需要在Excel和Json之间灵活切换的项目。这个工具不仅提供基本的转换功能,还支持Json的全格式,包括Map(字典)和数组等...
【数字转英文】 将选中区域(默认)或已使用区域存储格的金额数字转换成英文格式显示的表达字符串,为三资企业制作客户外汇付款通知书的理想工具。 【文本转EXCEL】 将文本文件按指定的分隔符号分隔一次性导入到...
函数功能与参数:与“大写”函数相反,将大写字符转换为阿拉伯数字。 函数名称:分割取数 函数功能与参数:按分割符取数。第一参数为单元格,第二参数表示取第N个,第三个参数表示分割符。 函数名称:共有项 函数...
2. **数据提取**:xlrd允许开发者读取Excel文件中的单元格数据,包括数字、字符串、日期和时间等。它还可以解析Excel文件的样式信息,如字体、颜色、对齐方式等。 3. **工作簿和工作表操作**:通过xlrd,你可以访问...
函数功能与参数:与“大写”函数相反,将大写字符转换为阿拉伯数字。 函数名称:分割取数 函数功能与参数:按分割符取数。第一参数为单元格,第二参数表示取第N个,第三个参数表示分割符。 函数名称:共有项 函数...
4. **样式和格式设置**:可以设置单元格、字体、边框、填充、对齐方式、条件格式等样式属性,以实现与Excel高度一致的视觉效果。 5. **图片和图表处理**:除了处理单元格数据,Aspose.Cells还能处理工作表中的图像...
- 提供了丰富的数据格式化选项,如数字格式、日期格式、货币格式等。 - 可以设置单元格样式,包括字体、边框、填充色和对齐方式等。 - 具有公式计算功能,能够处理复杂的Excel公式并返回结果。 - 支持数据过滤和排序...
2. **数据类型**:NPOI支持多种数据类型,如字符串、数字、日期、布尔值等,可以方便地将数据转换为合适的单元格类型。 3. **样式和格式**:开发者可以通过NPOI设置单元格的样式,包括字体、颜色、边框、对齐方式、...
5. 写入数据:使用工作表对象的`write()`方法,可以向指定单元格写入文本、数字或日期。 6. 设置样式:可以使用`Font`、`Pattern`、`Alignment`等类设置单元格的字体、颜色、对齐方式等样式。 7. 保存文件:最后,...
NPOI 2.4作为2.0系列的一个版本,可能包含了自2.0以来的一些bug修复和改进,而4.0系列则可能引入了更多的功能,比如对新版本Excel文件格式的支持,如XLSX和XLTM等。 在使用NPOI时,你可以: 1. 创建新的Excel工作...
4. xlsxwriter:创建 Excel 格式的 xlsx 文件。 5. xlwings:利用 Python 调用 Excel。 6. csvkit:CSV 文件工具包。 7. marmir:把 Python 数据结构转化为电子表格。 文档和文件处理 1. pdfminer:从 PDF 文件中...
在5.3.1.0中,可能解决了上一版本中出现的bug,并增强了对新格式或标准的支持。 7. **API易用性**:Aspose.Cells提供清晰的API接口,使得开发人员可以轻松集成到他们的项目中。开发者可以根据需求选择.NET、Java、...
19. Excel的日期和时间类型:在Excel中,日期和时间被视为数值类型。 20. Windows XP系统:它是支持多用户多任务的操作系统。 21. 插入/改写模式切换:按[Ins]键可以在插入和改写模式间切换。 22. 退出Windows:...
从pandas 0.21.0版本开始,pandas发布了一系列更新和改进,包括与Apache Parquet文件格式的集成,优化了类型转换,增强了警告系统,并改进了创建列时的错误处理。此外,还增加了对Categorical数据类型的管理,并提升...
3. **数据格式化**:可以设置单元格的数据类型(如数字、日期、字符串),并通过`CellStyle`类调整字体、颜色、对齐方式等格式。 4. **读取数据**:使用`Row`对象的`getCell()`方法获取特定单元格,然后根据需要...
13.新增“将后缀为元的数字批量大写”功能,将选区中"元"前面的所有数值转换成人民币大写形式,不以元结尾的数值会自动忽略。 14.新增“还原为小写”功能,可将大写金额还原为小写数值。 15.修改“缩放文档内的...
19. **Excel数据类型**:日期和时间在Excel中被视为数字类型。 20. **Windows XP**:这是一个多用户多任务操作系统,支持同时执行多个任务。 21. **编辑模式切换**:Insert键用于在插入和改写模式间切换。 22. **...
修改扩展界面支持库三,解决单击卷帘菜单后导致日期框不能弹出下拉窗口的BUG。 4. 修改XP风格支持库,解决GDI资源泄露,以及在使用通用组件库六时组合框标题出现重影的BUG。 5. 修改扩展界面支持库一,解决树形框...
5. **数据格式化**:在生成Excel的过程中,我们还可以对数据进行格式化,比如设置数字格式、日期格式,甚至应用样式如粗体、颜色等。 6. **文件保存**:最后,将生成的Excel工作表保存为一个`.xlsx`文件,用户可以...
考勤报表是系统的重要功能,源代码中可能会有专门的报表生成模块,使用如Excel或PDF格式进行数据导出。这涉及到了文件操作和格式转换的知识。 7. **多线程与并发处理** 高并发环境下,系统可能采用多线程技术来...