ASP dan Excel digabungkan untuk menghasilkan kode tabel data dan grafik. Teman yang membutuhkan bisa merujuknya. Daftar isi
1. Konfigurasi lingkungan
2. Operasi dasar ASP di Excel
3. ASP mengoperasikan Excel untuk menghasilkan tabel data
4. ASP mengoperasikan Excel untuk menghasilkan Grafik
5. Solusi penelusuran, pengunduhan, dan penghapusan file Excel sisi server
6. Lampiran
teks
1. Konfigurasi lingkungan
Mengenai konfigurasi lingkungan sisi server, dilihat dari bahan referensi, semua konfigurasi seri Microsoft seharusnya baik-baik saja, yaitu:
1. Win9x+PWS+Kantor
2. Win2000 Profesional+PWS+Kantor
3. Server Win2000+IIS+Kantor
Saat ini, lingkungan tempat penulis berhasil menguji adalah dua lingkungan terakhir. Tidak ada persyaratan khusus untuk versi Office. Mengingat ketidakpastian konfigurasi klien dan kompatibilitas yang rendah, disarankan agar versi Office sisi server tidak terlalu tinggi untuk mencegah klien gagal menampilkan dengan benar setelah pengunduhan.
Dua penemuan kebetulan lainnya tentang konfigurasi lingkungan sisi server adalah:
1. Mesin pengembangan penulis awalnya dilengkapi dengan WPS2002 Kingsoft, tetapi selalu ada masalah dengan pembuatan objek Excel setelah menghapus instalasi WPS2002, kesalahannya hilang.
2. Penulis suka menggunakan FrontPage saat mengembangkan kode ASP. Ternyata jika FrontPage dibuka (sisi server), pembuatan objek tidak stabil, terkadang berhasil dan terkadang tidak berhasil. Setelah penyelidikan ekstensif, kami menemukan bahwa jika perangkat lunak seri Office dijalankan di sisi server, sulit untuk berhasil membuat objek Excel.
Hal lain yang harus diatur di sisi server adalah izin pengoperasian komponen COM. Ketik DCOMCNFG pada baris perintah untuk masuk ke antarmuka konfigurasi komponen COM. Pilih Microsoft Excel dan klik tombol Properti untuk ketiga opsi. Setelah menyimpan, restart server.
Tidak ada yang istimewa tentang konfigurasi lingkungan klien. Selama Office dan IE diinstal, versi universal apa pun tampaknya baik-baik saja.
2. Operasi dasar ASP di Excel
1. Buat objek Excel
setel objExcelApp = CreateObject(Excel.Application)
objExcelApp.DisplayAlerts = false tidak menampilkan peringatan
objExcelApp.Application.Visible = false tidak menampilkan antarmuka
2. Buat file Excel baru
objExcelApp.WorkBooks.add
atur objExcelBook = objExcelApp.ActiveWorkBook
setel objExcelSheets = objExcelBook.Lembar Kerja
atur objExcelSheet = objExcelBook.Sheet(1)
3. Membaca file Excel yang ada
strAddr = Server.MapPath(.)
objExcelApp.WorkBooks.Open(strAddr & /Templet/Table.xls)
atur objExcelBook = objExcelApp.ActiveWorkBook
setel objExcelSheets = objExcelBook.Lembar Kerja
atur objExcelSheet = objExcelBook.Sheet(1)
4. Simpan file Excel sebagai
objExcelBook.SaveAs strAddr & /Temp/Table.xls
5. Simpan file Excelnya
objExcelBook.Save (Penulis berhasil menyimpan saat pengujian, tetapi halaman melaporkan kesalahan.)
6. Keluar dari operasi Excel
objExcelApp.Quit harus keluar
setel objExcelApp = Tidak ada
3. ASP mengoperasikan Excel untuk menghasilkan tabel data
1. Masukkan data dalam suatu rentang
objExcelSheet.Range(B3:k3).Nilai = Array(67, 87, 5, 9, 7, 45, 45, 54, 54, 10)
2. Masukkan data ke dalam sel
objExcelSheet.Sel(3,1).Nilai=Internet Explorer
3. Ubah warna teks sel
objExcelSheet.Sel(3,1).Font.Warna=vbred
4. Gambar garis di sekitar sel
objExcelSheet.Sel(3.1).Perbatasan(1).Gaya Garis =1
objExcelSheet.Sel(3.1).Perbatasan(2).Gaya Garis =1
objExcelSheet.Sel(3.1).Perbatasan(3).Gaya Garis =1
objExcelSheet.Sel(3.1).Perbatasan(4).Gaya Garis =1
Gambar garis di tengah area
objExcelSheet.Range(A1:G7).Borders(7).LineStyle =1
objExcelSheet.Range(A1:G7).Borders(8).LineStyle =1
8. Mengatur warna latar belakang sel
objExcelSheet.Sel(3.1).Interior.colorindex=17
9. Gabungkan sel
objExcelSheet.Range(A1:G7).Gabung
10. Atur perataan kiri dan kanan
2 kiri 3 tengah 4 kanan
objExcelSheet.Range(A1).Penjajaran Horizontal = 2
11. Atur perataan atas dan bawah
2 terpusat
objExcelSheet.Range(A1)..VerticalAlignment = 2
4. ASP mengoperasikan Excel untuk menghasilkan Grafik
1. Buat bagan Bagan
objExcelApp.Charts.Tambahkan
2. Atur jenis Bagan
objExcelApp.ActiveChart.ChartType = 97
Catatan: Bagan garis dua dimensi, 4;
3. Tetapkan judul Bagan
objExcelApp.ActiveChart.HasTitle = Benar
objExcelApp.ActiveChart.ChartTitle.Text = Bagan pengujian
4. Mengatur grafik melalui data tabel
objExcelApp.ActiveChart.SetSourceData objExcelSheet.Range(A1:k5),1
5. Langsung mengatur data grafik (disarankan)
objExcelApp.ActiveChart.SeriesCollection.NewSeries
objExcelApp.ActiveChart.SeriesCollection(1).Nama = =333
objExcelApp.ActiveChart.SeriesCollection(1).Nilai = =
6. Bagan Ikatan
objExcelApp.ActiveChart.Lokasi 1
7. Menampilkan tabel data
objExcelApp.ActiveChart.HasDataTable = Benar
8. Tampilkan legenda
objExcelApp.ActiveChart.DataTable.ShowLegendKey = Benar
5. Solusi penelusuran, pengunduhan, dan penghapusan file Excel sisi server
Ada banyak solusi untuk penelusuran, termasuk Location.href=, Navigate, dan Response.Redirect. Disarankan untuk menggunakan metode klien karena memberi server lebih banyak waktu untuk menghasilkan file Excel.
Penerapan pengunduhan sedikit lebih merepotkan. Solusi yang lebih baik adalah mengunduh komponen dari server siap pakai di Internet atau menyesuaikan dan mengembangkan sendiri komponen tersebut. Metode lain adalah dengan mengoperasikan komponen Excel pada klien, dan klien mengoperasikan file Excel sisi server dan menyimpannya ke klien. Metode ini mengharuskan klien untuk membuka izin pengoperasian kontrol ActiveX yang tidak aman. Mengingat kesulitan dalam memberi tahu setiap pelanggan untuk menetapkan server sebagai situs tepercaya, disarankan untuk menggunakan metode pertama untuk menghindari masalah.
Rencana penghapusan terdiri dari tiga bagian:
J: File Excel yang dihasilkan oleh pengguna yang sama menggunakan nama file yang sama. Nama file dapat terdiri dari nomor ID pengguna atau nomor ID Sesi yang memastikan tidak ada duplikasi string. Dengan cara ini file baru akan secara otomatis menimpa file sebelumnya ketika dibuat.
B: Ketika peristiwa Session_onEnd diatur dalam file Global.asa untuk diaktifkan, hapus file sementara Excel pengguna ini.
C: Ketika acara Application_onStart diatur dalam file Global.asa untuk diaktifkan, hapus semua file di direktori sementara.
Catatan: Struktur direktori yang direkomendasikan/direktori kode Src/direktori templat Templet/direktori penyimpanan sementara Temp
6. Lampiran
Proses Excel yang mati saat terjadi error memang memusingkan. Menambahkan Pada Error Resume Next sebelum setiap file akan membantu memperbaiki situasi ini, karena akan tetap ada dalam mengeksekusi Aplikasi. Keluar terlepas dari apakah file menghasilkan kesalahan, memastikan tidak ada proses mati yang tersisa setelah setiap eksekusi program.
Dua poin tambahan:
1. Operasi Excel spesifik lainnya dapat diselesaikan dengan merekam makro.
2. Membuka SQL Enterprise Manager di sisi server juga akan menimbulkan masalah.
Copy kode kodenya sebagai berikut:
<%
OnErrorResumeNextstrAddr=Server.MapPath(.)setobjExcelApp=CreateObject(Excel.Application)
objExcelApp.DisplayAlerts=salah
objExcelApp.Application.Visible=salah
objExcelApp.WorkBooks.Open(strAddr&/Templet/Null.xls)
setobjExcelBook=objExcelApp.ActiveWorkBook
setobjExcelSheets=objExcelBook.Lembar Kerja
setobjExcelSheet=objExcelBook.Sheets(1)objExcelSheet.Range(B2:k2).Value=Array(Minggu1,Minggu2,Minggu3,Minggu4,Minggu5,Minggu6,Minggu7,
Minggu8, Minggu9, Minggu10)
objExcelSheet.Range(B3:k3).Value=Array(67,87,5,9,7,45,45,54,54,10)
objExcelSheet.Range(B4:k4).Value=Array(10,10,8,27,33,37,50,54,10,10)
objExcelSheet.Range(B5:k5).Value=Array(23,3,86,64,60,18,5,1,36,80)
objExcelSheet.Sel(3,1).Nilai=InternetExplorer
objExcelSheet.Sel(4,1).Nilai=Netscape
objExcelSheet.Cells(5,1).Value=OtherobjExcelSheet.Range(b2:k5).Pilih
objExcelApp.Charts.Tambahkan
objExcelApp.ActiveChart.ChartType=97
objExcelApp.ActiveChart.BarShape=3
objExcelApp.ActiveChart.HasTitle=Benar
objExcelApp.ActiveChart.ChartTitle.Teks=
Log pengunjung untuk setiap minggu ditampilkan di persentase browser
objExcelApp.ActiveChart.SetSourceDataobjExcelSheet.Range(A1:k5),1
objExcelApp.ActiveChart.Lokasi1
'objExcelApp.ActiveChart.HasDataTable=Benar
'objExcelApp.ActiveChart.DataTable.ShowLegendKey=TrueobjExcelBook.
SimpanAsstrAddr&/Temp/Excel.xlsobjExcelApp.Keluar
setobjExcelApp=Tidak ada
%>
<!DOCTYPEHTMLPUBLIC-//W3C//DTDHTML4.0Transisional//EN>
<HTML>
<KEPALA>
<TITLE>Dokumen Baru</TITLE>
<METANAME=GeneratorCONTENT=MicrosoftFrontPage5.0>
<METANAME=PenulisCONTENT=>
<METANAME=Kata KunciCONTENT=>
<METANAME=DeskripsiCONTENT=>
</KEPALA>
<TUBUH>
</BODI>
</HTML>