1. OWC 이용하기
OWC란?
OWC는 Microsoft의 Office Web Component인 Office Web Compent의 약어로, 웹에서 그래픽을 그리기 위한 유연하고 기본적인 메커니즘을 제공합니다. 인트라넷 환경에서 특정 브라우저와 일부 강력한 소프트웨어(예: IE5 및 Office 2000)가 클라이언트 컴퓨터에 존재한다고 가정할 수 있는 경우 Office 웹 구성 요소를 사용하여 대화형 그래픽 개발 환경을 제공할 수 있습니다. 이 모드에서는 클라이언트 워크스테이션이 전체 작업의 많은 부분을 공유합니다.
<%옵션 명시적
클래스ExcelGen
비공개 obj스프레드시트
개인 iColOffset
개인 iRowOffset
하위클래스_초기화()
objSpreadsheet = Server.CreateObject("OWC.Spreadsheet") 설정
iRowOffset = 2
iColOffset=2
End Sub
Sub Class_Terminate()
Set objSpreadsheet = Nothing '정리
End Sub
공용 속성 Let ColumnOffset(iColOff)
iColOff > 0이면
iColOffset = iColOff
또 다른
iColOffset=2
종료 조건
끝 속성
공용 속성 Let RowOffset(iRowOff)
iRowOff > 0이면
iRowOffset = iRowOff
또 다른
iRowOffset = 2
종료 조건
끝 속성 하위 생성Worksheet(objRS)
'레코드세트의 내용을 기반으로 Excel 워크시트를 채웁니다.
'제목을 표시하는 것부터 시작하세요.
objRS.EOF인 경우 Sub를 종료합니다.
희미한 objField, iCol, iRow
iCol = iColOffset
iRow = iRowOffset
objRS.Fields의 각 objField에 대해
objSpreadsheet.Cells(iRow, iCol).Value = objField.Name
objSpreadsheet.Columns(iCol).AutoFitColumns
'엑셀 표의 글꼴을 설정합니다.
objSpreadsheet.Cells(iRow, iCol).Font.Bold = True
objSpreadsheet.Cells(iRow, iCol).Font.Italic = False
objSpreadsheet.Cells(iRow, iCol).Font.Size = 10
objSpreadsheet.Cells(iRow, iCol).Halignment = 2 '가운데
아이콜 = 아이콜 + 1
다음 'objField
'모든 데이터를 표시합니다.
objRS.EOF가 아닌 동안 수행
iRow = iRow + 1
iCol = iColOffset
objRS.Fields의 각 objField에 대해
IsNull(objField.Value)인 경우
objSpreadsheet.Cells(iRow, iCol).Value = ""
또 다른
objSpreadsheet.Cells(iRow, iCol).Value = objField.Value
objSpreadsheet.Columns(iCol).AutoFitColumns
objSpreadsheet.Cells(iRow, iCol).Font.Bold = False
objSpreadsheet.Cells(iRow, iCol).Font.Italic = False
objSpreadsheet.Cells(iRow, iCol).Font.Size = 10
종료 조건
아이콜 = 아이콜 + 1
다음 'objField
objRS.MoveNext
고리
End Sub Function SaveWorksheet(strFileName)
'지정된 파일 이름으로 워크시트를 저장합니다.
오류 발생 시 다음 재개
objSpreadsheet.ActiveSheet.Export(strFileName, 0)를 호출합니다.
SaveWorksheet = (Err.Number = 0)
기능 종료
클래스 종료
Dim objRS
objRS = Server.CreateObject("ADODB.Recordset") 설정
objRS.Open "SELECT * FROM xxxx", "공급자=SQLOLEDB.1;보안
정보 유지=True;사용자 ID=xxxx;암호=xxxx;초기 카탈로그=xxxx;데이터 소스=xxxx;"
희미한 저장 이름
SaveName = Request.Cookies("저장 이름")("이름")
희미한 객체Excel
DimExcel경로
ExcelPath = "Excel" & SaveName & ".xls"
objExcel = New ExcelGen 설정
objExcel.RowOffset = 1
objExcel.ColumnOffset = 1
objExcel.GenerateWorksheet(objRS)
objExcel.SaveWorksheet(Server.MapPath(ExcelPath))인 경우
'Response.Write "<html><body bgcolor='gainsboro' text='#000000'>엑셀 파일로 저장됩니다.
<a href='" & server.URLEncode(ExcelPath) & "'>Download</a> "
또 다른
Response.Write "저장 중 오류가 발생했습니다!"
종료 조건
objExcel = 아무것도 설정하지 않음
objRS.닫기
objRS = 없음 설정
%>
2. Excel 응용 프로그램 구성 요소를 사용하여 클라이언트에서 Excel 또는 Word로 내보냅니다.
참고: 두 함수의 "data"는 웹 페이지에서 내보낼 테이블의 ID입니다.
<input type="hidden" name="out_word " onclick="vbscript :buildDoc" value="단어로 내보내기" class="notPrint">
<input type="hidden" name="out_excel" onclick="AutomateExcel();" value="Excel로 내보내기" class="notPrint">
Excel 코드로 내보내기
<SCRIPT LANGUAGE="javascript">
<!--
함수 AutomateExcel()
{
// Excel을 시작하고 Application 개체를 가져옵니다.
var oXL = new ActiveXObject("Excel.Application");
// 새 통합 문서를 가져옵니다.
var oWB = oXL.Workbooks.Add();
var oSheet = oWB.ActiveSheet;
var 테이블 = document.all.data;
var hang = table.rows.length;
var lie = table.rows(0).cells.length;
// 셀 단위로 테이블 헤더를 추가합니다.
(i=0;i<hang;i++)에 대해
{
(j=0;j<거짓말;j++)
{
oSheet.Cells(i+1,j+1).value = table.rows(i).cells(j).innerText;
}
}
oXL.Visible = true;
oXL.UserControl = true;
}
//-->
</SCRIPT>
Word 코드로 내보내기
<script 언어="vbscript">
하위 빌드문서
세트 테이블 = document.all.data
행 = 테이블.행.길이
열 = table.rows(1).cells.length
설정 objWordDoc = CreateObject("Word.Document")
objWordDoc.Application.Documents.Add theTemplate, False
objWordDoc.Application.Visible=True
Dim theArray(20,10000)
i=0에서 행-1까지
j=0에서 열-1까지
theArray(j+1,i+1) = table.rows(i).cells(j).innerTEXT
다음
다음
objWordDoc.Application.ActiveDocument.Paragraphs.Add.Range.InsertBefore("종합 쿼리 결과 집합") //테이블 제목 표시
objWordDoc.Application.ActiveDocument.Paragraphs.Add.Range.InsertBefore("")
rngPara = objWordDoc.Application.ActiveDocument.Paragraphs(1).Range 설정
rngPara와 함께
.Bold = True //제목을 굵게 표시
.ParagraphFormat.Alignment = 1 //제목을 중앙에 배치
.Font.Name = "official script" //제목 글꼴 설정
.Font.Size = 18 //제목 글꼴 크기 설정
끝
rngCurrent = objWordDoc.Application.ActiveDocument.Paragraphs(3).Range 설정
i = 1인 경우
tabCurrent = ObjWordDoc.Application.ActiveDocument.Tables.Add(rngCurrent,row,column)을
objWordDoc.Application.ActiveDocument.Tables(1).Rows(1).Cells(i).Range.InsertAfter theArray
열로 설정합니다.(나,1)
objWordDoc.Application.ActiveDocument.Tables(1).Rows(1).Cells(i).Range.ParagraphFormat.alignment=1
다음
i =1에서 열까지
j = 2에서 행까지
objWordDoc.Application.ActiveDocument.Tables(1).Rows(j).Cells(i).Range.InsertAfter theArray(i,j)
objWordDoc.Application.ActiveDocument.Tables(1).Rows(j).Cells(i).Range.ParagraphFormat.alignment=1
다음
다음
엔드 서브
</SCRIPT>
3. IE에서 직접 연 후 EXCEL 파일로 저장합니다.
<table> 형식을 사용하여 읽은 데이터를 웹 페이지에 표시함과 동시에 다음 문장을 추가하여 EXCEL을 표시합니다. 클라이언트의 테이블.
<%response.ContentType ="application/vnd.ms-excel"%>
참고: 표시된 페이지에서는 <table>만 출력됩니다. 다른 테이블 이외의 정보는 출력하지 않는 것이 좋습니다.
4. 반각 쉼표로 구분된 csv를 내보내십시오.
fso 메소드를 사용하여 텍스트 파일을 생성하고 확장자를 가진 csv 파일을 생성하십시오. 이 파일에서 한 줄은 데이터 테이블의 한 줄입니다. 반너비 쉼표로 구분된 데이터 테이블 필드를 생성합니다. (fso를 사용하여 텍스트 파일을 생성하는 방법은 여기서 소개하지 않습니다.)
CSV 파일 소개(쉼표로 구분된 파일)
이 옵션을 선택하면 시스템이 다운로드할 CSV 파일을 생성합니다. CSV는 가장 일반적인 파일 형식으로 가져올 수 있습니다. 다양한 PC 형태와 데이터베이스를 아주 쉽게.
출력 형식으로 표를 선택하더라도 결과를 CSV 파일로 다운로드할 수 있습니다. 테이블 출력 화면 하단에 "CSV 파일" 옵션이 있으며, 이를 클릭하여 파일을 다운로드합니다.
스프레드시트 소프트웨어를 텍스트(TXT)/쉼표로 구분된 파일(CSV)과 연결하도록 브라우저를 구성하면 파일을 다운로드할 때 파일이 자동으로 열립니다. 다운로드 후, EXCEL이 로컬로 설치되어 있는 경우, 이 파일을 클릭하면 EXCEL 소프트웨어로 자동으로 열립니다.