Я уже задавал вопрос по адресу: StackOverFlow, и меня отправили сюда.
Я импортирую даты из немецкой таблицы SQL Server в немецкий файл Excel через встроенный инструмент подключения Excel.
Однако формат даты такой же, как в SQL Server: 2012-08-08, но я хочу отобразить: 08.08.2012. Когда я дважды щелкаю внутри ячейки, она распознает немецкое форматирование даты, но, конечно, я хотел бы иметь этот формат для всего столбца в начале, не изменяя его вручную.
Мне также нужно иметь возможность использовать эти даты для расчетов.
Я знаю, что есть текстовое поле, в котором вы можете ввести «Определение» SQL в инструменте подключения Excel, но оно не работает с «обычными» SQL-операторами.
Нужно ли что-то менять в SQL Server или как заставить это работать?
microsoft-excel
sql-server
sql
date
TonyC
источник
источник
insert into [dbo].[DateTest] Values ('2011-12-01', '01.12.2011')
. Вывод всегда в первом формате. С DBCC USEROPTIONS я вижу, что dateformat установлен в dmy. Что мне нужно изменить? Небольшой пример был бы действительно хорош. Спасибо.Ответы:
Если я вас правильно понимаю, вы говорите, что поле в SQL Server хранится в формате datetime, и вы хотите перетащить эту информацию в Excel, создав соединение с таблицей SQL Server и отобразив его в немецкой форме даты dd.mm. .yyyy
Вам не нужно редактировать SQL на вкладке определения окна Свойства подключения для форматирования - это может быть проще, чем вы думаете.
Используйте мастер подключения данных Excel, чтобы открыть таблицу, которую вы хотите отобразить в Excel.
Затем в Excel для каждого столбца даты выберите весь столбец, щелкните ячейки формата (или удобное сочетание клавиш Ctrl + 1), затем на вкладке «Число» щелкните «Пользовательский» в нижней части столбца слева. В текстовом поле «Тип» введите: дд.мм.гггг
В следующий раз, когда вы обновите данные, Excel должен сохранить немецкое форматирование ваших дат. Вы можете использовать что-либо в этих столбцах для расчетов, Excel знает, что это даты.
источник