Оглавление 1. Конфигурация среды 2. Основные операции ASP в Excel 3. ASP использует Excel для создания таблицы данных 4. ASP использует Excel для создания диаграммы 5. Решения для просмотра, загрузки и удаления файлов Excel на стороне сервера 6.
Текст приложения 1 Сервер конфигурации среды. Судя по справочным материалам по настройке терминальной среды, все конфигурации серии Microsoft должны быть в порядке, а именно:
1. Win9x+PWS+Офис
2. Win2000 Профессионал+ПВС+Офис
3. Win2000 Сервер+IIS+Офис
В настоящее время средой, в которой автор успешно протестировал, являются последние две. Для версии Office особых требований нет. Учитывая неопределенность конфигурации клиента и низкую совместимость, рекомендуется, чтобы версия Office на стороне сервера не была слишком высокой, чтобы клиент не отображался правильно после загрузки.
Еще два счастливых открытия, касающихся настройки серверной среды:
1. Машина разработки автора изначально была оснащена WPS2002 от Kingsoft, но всегда возникала проблема с созданием объекта Excel. После удаления WPS2002 ошибка исчезла.
2. Автор любит использовать FrontPage при разработке кода ASP. Оказывается, если FrontPage открыт (на стороне сервера), создание объекта происходит нестабильно, иногда успешно, а иногда неудачно. После тщательного исследования мы обнаружили, что если программное обеспечение серии Office запускается на стороне сервера, успешно создавать объекты Excel сложно.
Еще одна вещь, которую необходимо установить на стороне сервера, — это разрешение на работу COM-компонента. Введите «DCOMCNFG» в командной строке, чтобы войти в интерфейс настройки компонента COM. Выберите Microsoft Excel и нажмите кнопку «Свойства». Выберите «Пользовательский» для всех трех переключателей. Во время редактирования добавьте «Все» ко всем разрешениям. После сохранения перезапустите сервер.
В конфигурации среды клиента нет ничего особенного. Если установлены Office и IE, подойдет любая универсальная версия.
2. Основные операции ASP в Excel
1. Создайте объект Excel
set objExcelApp = CreateObject("Excel.Application")
objExcelApp.DisplayAlerts = false не отображает предупреждения
objExcelApp.Application.Visible = false не отображает интерфейс
2. Создайте новый файл Excel.
objExcelApp.WorkBooks.add
установите objExcelBook = objExcelApp.ActiveWorkBook
установите objExcelSheets = objExcelBook.Worksheets
установить objExcelSheet = objExcelBook.Sheets(1)
3. Прочитайте существующие файлы Excel.
strAddr = Server.MapPath(".")
objExcelApp.WorkBooks.Open(strAddr & "TempletTable.xls")
установите objExcelBook = objExcelApp.ActiveWorkBook
установите objExcelSheets = objExcelBook.Worksheets
установить objExcelSheet = objExcelBook.Sheets(1)
4. Сохраните файл Excel как
objExcelBook.SaveAs strAddr & "TempTable.xls"
5. Сохраните файл Excel.
objExcelBook.Save (Автор успешно сохранил при тестировании, но на странице появилась ошибка.)
6. Выйдите из операции Excel.
objExcelApp.Quit должен выйти
set objExcelApp = Nothing
3. ASP использует Excel для создания таблицы данных.
1. Вставка данных в диапазон
objExcelSheet.Range("B3:k3").Value = Array("67", "87", "5", "9", "7", "45", "45", "54", "54" , «10»)
2. Вставьте данные в ячейку
objExcelSheet.Cells(3,1).Value="Internet Explorer"
3. Выберите диапазон
4. Нарисуйте толстую линию слева от ячейки.
5. Нарисуйте толстую линию с правой стороны ячейки.
6. Нарисуйте толстые линии сверху ячеек.
7. Нарисуйте толстые линии под клетками.
8. Установите цвет фона ячейки.
9. Объединить ячейки
10. Вставить строку
11. Вставьте столбец
4. ASP использует Excel для создания диаграммы.
1. Создать диаграмму
objExcelApp.Charts.Add
2. Установите тип диаграммы.
objExcelApp.ActiveChart.ChartType = 97
Примечание. Двумерная линейная диаграмма — 4; двумерная круговая диаграмма — 5; двумерная столбчатая диаграмма — 51;
3. Установите заголовок диаграммы.
objExcelApp.ActiveChart.HasTitle = Истина
objExcelApp.ActiveChart.ChartTitle.Text = "Тестовая диаграмма"
4. Установите графику через данные таблицы.
objExcelApp.ActiveChart.SetSourceData objExcelSheet.Range("A1:k5"),1
5. Непосредственная установка графических данных (рекомендуется)
objExcelApp.ActiveChart.SeriesCollection.NewSeries
objExcelApp.ActiveChart.SeriesCollection(1).Name = "=""333"""
objExcelApp.ActiveChart.SeriesCollection(1).Values = "={1,4,5,6,2}"
6. Связать диаграмму
objExcelApp.ActiveChart.Location 1
7. Отображение таблицы данных.
objExcelApp.ActiveChart.HasDataTable = Истина
8. Отображение легенды
objExcelApp.ActiveChart.DataTable.ShowLegendKey = True
5. На стороне сервера можно реализовать множество решений для просмотра, загрузки и удаления файлов Excel: «Location.href=", Navigate» и «Response.Redirect». . Рекомендуется использовать клиент. Причина в том, чтобы дать серверу больше времени для создания файла Excel.
Реализация скачивания немного более хлопотная. Лучшее решение — скачать компоненты с готовых серверов в Интернете или настроить и разработать компонент самостоятельно. Другой метод — использовать компонент Excel на клиенте, а клиент управляет файлом Excel на стороне сервера и сохраняет его на клиенте. Этот метод требует, чтобы клиент открыл разрешение на работу небезопасного элемента управления ActiveX. Учитывая трудности с уведомлением каждого клиента о необходимости установки сервера в качестве доверенного сайта, во избежание проблем рекомендуется использовать первый метод.
План удаления состоит из трех частей:
О: Файлы Excel, созданные одним и тем же пользователем, используют одно и то же имя файла. Имя файла может состоять из идентификационного номера пользователя или идентификационного номера сеанса, что гарантирует отсутствие дублирования строк. Таким образом, новый файл автоматически перезапишет предыдущий файл при его создании.
B: Если в файле Global.asa настроено событие Session_onEnd, удалите временный файл Excel этого пользователя.
C: Если в файле Global.asa настроено событие Application_onStart, удалите все файлы во временном каталоге.
Примечание. Рекомендуется использовать структуру каталоговКаталог исходного кодаКаталог шаблона TempletКаталог временного хранилища Temp
6. Мертвый процесс Excel при возникновении ошибки в приложении — очень неприятная вещь. Добавление «Возобновить при ошибке далее» перед каждым файлом поможет улучшить эту ситуацию, поскольку оно будет настаивать на выполнении «Application.Quit» независимо от того, генерирует ли файл ошибку, гарантируя, что каждая программа будет выполнена без выхода из тупика. .