SQL数据连接提取在Excel中丢失格式

时间:2019-02-06 10:43:34

标签: sql sql-server excel

我有一个Excel视图,该视图利用SQL Server连接到其数据库的数据。

提取的部分数据是日期,SQL查询以103(dd / mm / yyyy)格式请求该日期。

convert (varchar(11), [mytable].[myDate], 103)'my date'

如果我直接在SQL Server管理器中运行SQL代码,则直接将其复制并粘贴到Excel中就可以了。

但是,一旦我将其作为Excel中的SQL数据连接运行时,数据似乎就会丢失其格式并变成文本字符串。 (请注意下图,日期如何向左对齐)

Excel date as text

我能找到的唯一解决方案是在Excel的“文本到列”中包含日期的列,并将格式设置为DMY。但是,这只是短期修复,因为每次刷新数据连接时,格式都会再次丢失。

text to columns fix

correct formatting

设置Excel中的外部数据属性以保留单元格格式。

data properties

除了编写一些VBA以在数据刷新时自动将“文本转换为列”格式外,任何人都没有任何想法。

日期以dd / mm / yyyy hh:mm:ss的形式存储在基础数据库中,我是否需要将其提取为103以外的其他格式?

谢谢。

1 个答案:

答案 0 :(得分:0)

感谢Salman / Caius。修改了SQL查询以采用本机格式,然后在前端对其进行了处理。