목차 1. 환경 구성 2. Excel에서의 ASP 기본 작업 3. ASP는 Excel을 작동하여 데이터 테이블 생성 4. ASP는 Excel을 작동하여 차트 다이어그램 생성 5. 서버 측 Excel 파일 탐색, 다운로드 및 삭제 솔루션 6. 부록
텍스트 1 환경 구성 서버 터미널 환경 구성에 대한 참조 자료로 볼 때 모든 Microsoft 시리즈 구성은 괜찮습니다.
1. Win9x+PWS+오피스
2. Win2000 Professional+PWS+오피스
3. Win2000 서버+IIS+오피스
현재 저자가 성공적으로 테스트한 환경은 후자의 두 환경이다. Office 버전에 대한 특별한 요구 사항은 없습니다. 클라이언트 구성의 불확실성과 낮은 호환성을 고려하면 다운로드 후 클라이언트가 올바르게 표시되지 않는 것을 방지하기 위해 서버측 Office 버전이 너무 높지 않은 것이 좋습니다.
서버 측 환경 구성에 대한 두 가지 우연한 발견은 다음과 같습니다.
1. 작성자의 개발머신에는 원래 Kingsoft의 WPS2002가 탑재되어 있었는데, 항상 엑셀 개체 생성에 문제가 있었는데 WPS2002를 제거한 후 오류가 사라졌습니다.
2. 저자는 ASP 코드를 개발할 때 FrontPage를 사용하는 것을 좋아합니다. FrontPage가 열려 있으면(서버측) 개체 생성이 불안정하고 때로는 성공하기도 하고 실패하기도 합니다. 광범위한 조사 끝에 Office 시리즈 소프트웨어가 서버 측에서 실행되는 경우 Excel 개체를 성공적으로 생성하기 어렵다는 사실을 발견했습니다.
서버 측에서 설정해야 하는 또 다른 사항은 COM 구성 요소의 작업 권한입니다. 명령줄에 "DCOMCNFG"를 입력하여 COM 구성 요소 구성 인터페이스로 들어갑니다. Microsoft Excel을 선택하고 속성 버튼을 클릭합니다. 편집하는 동안 모든 권한에 대해 사용자 정의를 선택합니다. 저장 후 서버를 다시 시작하세요.
클라이언트의 환경 구성에는 특별한 것은 없지만, Office와 IE만 설치되어 있다면 어떤 Universal 버전이라도 괜찮을 것 같습니다.
2. Excel에서 ASP의 기본 작업
1. 엑셀 객체 생성
set objExcelApp = CreateObject("Excel.Application")
objExcelApp.DisplayAlerts = false는 경고를 표시하지 않습니다.
objExcelApp.Application.Visible = false는 인터페이스를 표시하지 않습니다.
2. 새로운 엑셀 파일을 생성하세요
objExcelApp.WorkBooks.add
objExcelBook = objExcelApp.ActiveWorkBook 설정
objExcelSheets = objExcelBook.Worksheets 설정
set objExcelSheet = objExcelBook.Sheets(1)
3. 기존 엑셀 파일 읽기
strAddr = Server.MapPath(".")
objExcelApp.WorkBooks.Open(strAddr & "TempletTable.xls")
objExcelBook = objExcelApp.ActiveWorkBook 설정
objExcelSheets = objExcelBook.Worksheets 설정
set objExcelSheet = objExcelBook.Sheets(1)
4. 엑셀 파일을 다른 이름으로 저장
objExcelBook.SaveAs strAddr & "TempTable.xls"
5. 엑셀 파일을 저장하세요
objExcelBook.Save(작성자가 테스트 시 성공적으로 저장했지만 페이지에서 오류가 보고되었습니다.)
6. 엑셀 작업 종료
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="인터넷 익스플로러"
3. 범위를 선택하세요
4. 셀 왼쪽에 굵은 선을 그립니다.
5. 셀 오른쪽에 굵은 선을 그립니다.
6. 셀 상단에 굵은 선을 그립니다.
7. 셀 아래에 굵은 선을 그립니다.
8. 셀의 배경색을 설정하세요
9. 셀 병합
10. 행 삽입
11. 열 삽입
4. ASP는 Excel을 작동하여 차트 차트를 생성합니다.
1. 차트 차트 만들기
objExcelApp.Charts.Add
2. 차트 유형 설정
objExcelApp.ActiveChart.ChartType = 97
참고: 2차원 선 차트, 4; 2차원 원형 차트, 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 파일을 생성하는 데 더 많은 시간을 주기 때문입니다.
다운로드 구현은 좀 더 번거롭습니다. 인터넷에 있는 기성 서버에서 구성 요소를 다운로드하거나 구성 요소를 직접 사용자 정의하고 개발하는 것이 더 나은 솔루션입니다. 또 다른 방법은 클라이언트에서 엑셀 컴포넌트를 조작하는 방법인데, 클라이언트는 서버측 엑셀 파일을 조작하여 클라이언트에 저장한다. 이 방법을 사용하려면 클라이언트가 안전하지 않은 ActiveX 컨트롤의 작업 권한을 열어야 합니다. 각 고객에게 서버를 신뢰할 수 있는 사이트로 설정하라고 알리는 문제를 고려하면 문제를 피하기 위해 첫 번째 방법을 사용하는 것이 좋습니다.
삭제 계획은 세 부분으로 구성됩니다.
A: 동일한 사용자가 생성한 Excel 파일은 동일한 파일 이름을 사용합니다. 파일 이름은 문자열이 중복되지 않도록 사용자 ID 번호 또는 세션 ID 번호로 구성될 수 있습니다. 이렇게 하면 새 파일이 생성될 때 이전 파일을 자동으로 덮어씁니다.
B: Global.asa 파일에 Session_onEnd 이벤트가 실행되도록 설정되면 이 사용자의 Excel 임시 파일을 삭제하세요.
C: Global.asa 파일에 Application_onStart 이벤트가 실행되도록 설정되면 임시 디렉터리의 모든 파일을 삭제하세요.
참고: 디렉토리 구조Src 코드 디렉토리템플릿 템플릿 디렉토리Temp 임시 저장 디렉토리를 권장합니다.
6. 부록에 오류가 발생했을 때 엑셀의 프로세스가 죽는 것은 매우 번거로운 일입니다. 각 파일 앞에 "On Error Resume Next"를 추가하면 파일이 오류를 생성하는지 여부에 관계없이 "Application.Quit"을 실행하도록 요구하여 각 프로그램이 막다른 골목에서 벗어나지 않고 실행되도록 하기 때문에 이러한 상황을 개선하는 데 도움이 됩니다. .