Red de conocimiento informático - Material del sitio web - Cómo mostrar un informe de Excel en formato VB

Cómo mostrar un informe de Excel en formato VB

Opción Explícita

XLApp pública como nueva aplicación Excel.

XLBook pública como Excel.Workbook

Hoja xl pública como Excel.Workbook

Pública xlSheet como Excel.Workbook

Pública xlSheet como Excel.Report/p>

Función pública SaveAsExcel(rsErr como ADODB.Recordset, sFileName como cadena, _

sSheet como cadena, sOpen como cadena, campo ByVal como cadena)

Atenuar fd como campo

Atenuar CellCnt como entero

Atenuar i como entero

Atenuar fieldArr() como cadena

Atenuar como entero

fieldArr = Split(campo, "|")

En caso de error Ir a Err_Handler

Screen.MousePointer = vbHourglass

Establecer xlApp = Nueva aplicación de Excel

Establecer xlBook = xlApp.Workbooks.Add

Establecer xlSheet = xlBook.Worksheets.Add

'Obtener nombres de campos

CellCnt = 1

xlSheet.name = sSheet

Para cada fd In rsErr.Fields 'Agregar título de vista de lista

xlSheet.Cells(1, CellCnt).value = fieldArr(CellCnt - 1)

xlSheet..ColorIndex = 33

xlSheet.Cells(1, CellCnt).Font.Bold = True

xlSheet.Cells(1, CellCnt).BorderAround xlContinuous

CellCnt = CellCnt 1

Siguiente

rsErr.MoveFirst

i = 2

t = 1

Hacer mientras no rsErr.EOF()

CellCnt = 1

Para cada fd en rsErr.Fields

Si fd.name = "Company_Id" o fd.name = "Drugs_Id" Entonces

xlSheet.Cells(i, CellCnt).value = t

De lo contrario

xlSheet.Cells(i, CellCnt).value = 1

p>

Para cada fd en rsErr.MoveNext

i = i 1

t = t 1

Bucle

' Autocompletar

CellCnt = 1

Para cada fd en rsErr.Fields

xlSheet.Fields