Решите проблему экспорта результатов запроса ASP в идентификационный номер в Excel.
Автор:Eve Cole
Время обновления:2009-06-23 17:01:06
Недавно при использовании asp для экспорта результатов запроса базы данных доступа в файл Excel возникла проблема, поскольку одно поле представляет собой идентификационный номер. В экспортированном файле Excel последние три цифры всех идентификационных номеров стали равными 0! Как это удручающе! Проверив онлайн, я обнаружил, что числовой формат Excel по умолчанию — «нормальный», который может нормально отображать только вводимые 11 цифр. Если число превышает 11 цифр, оно будет отображаться в научной записи.
Чтобы решить эту проблему, я могу пометить данные запроса только как текстовые данные. Ниже приведена часть кода:
<%
'Экспорт в Excel
set rs = server.createobject("adodb.recordset")
sqlstr="выберите * из имени вкладки, где"&searhsql 'оператор запроса
rs.open sqlstr, oconn, 1,3
%>
<%set fs = server.createobject("script_ing.filesystemobject")
'Сохранить файлы
имя_файла="info.xls"
темп=имя файла
filename=request.servervariables("appl_physical_path")&"\"+имя файла
'Удалить существующие файлы Excel
'если fs.fileexists(имя файла), то
'fs.deletefile(имя файла)
'конец, если
'-Создать файл Excel
установите myfile = fs.createtextfile(имя файла, true)
тусклая строка, ответ
строка=""
для каждого x в rs.fields
строка = строка & x.name & chr (9)
следующий
'Сначала напишите имена столбцов таблицы Excel
строка myfile.writeline
пока не rs.eof
строка=""
для каждого x в rs.fields
'Здесь данные помечены как текстовый тип
strline= strline & "="""&x.value &""""& chr(9)
следующий
'Записать данные таблицы в Excel
строка myfile.writeline
rs.movenext
идти
link="<a href=\" & temp & " title=Сохранить данные в таблице eecel><font color=red><b>Экспортировать файл Excel</b></font></a> "
ответ.напишите ссылку
установить мойфайл = ничего
установить фс=ничего
RS.закрыть
%>
Пример загрузки исходного кода: http://code.knowsky.com/down/12254.html.