¿Cómo llamar a la API de Excel? Usando VC 6.0...
Puede buscar "Uso de MFC para operar archivos EXCEL" en la Biblioteca Baidu para encontrar información.
_Application app// la aplicación es un objeto _Application.
Libro de ejercicios;
LPDISPATCH lpDisp//Variables de uso frecuente.
If (!app.CreateDispatch("Excel.App"))
{
AfxMessageBox("No se puede crear Dispatch() para Excel); p>
{
p>
Regresar;
}
//Establecer visible(FALSO);
lpDisp. = app. get workbooks(); //Obtener el puntero IDispatch
ASSERT(LP disp);
Libros adjuntos (LP disp); Puntero IDispatch. p>
COleVariant
covTrue((short)True),
covFalse((short)false),
cov opcional(( long)DISP _E_PARAMNOTFOUND, VT_ERROR);
//Para abrir un libro de trabajo existente, debe proporcionar todos los
// parámetros de 13 funciones miembro abiertas //El siguiente código abre un libro de trabajo y lo agrega al
//objeto Colección
//Necesita modificar su propia ruta y. p>//Workbook.
//
CString strFile = nombre de archivo
lpDisp = Libros / es el libro de trabajo
covOptional. , covOptional, covOptional, covOptional, covOptional,
covOptional, covOptional, covOptional, covOptional, covOptional,
covOptional, cov opcional); // Devuelve el puntero IDispatch del libro de trabajo. /p>
ASSERT(LP disp);
Book. adjuntar despacho(LP disp);
//Obtener la colección de hojas y agregar el puntero IDispatch a su
// objeto de hojas.
lpDisp = libro.
ASSERT(LP disp) ;
Envío de hoja adjunta(LP disp);
Papel largo = papel. GetCount();
archivo de salida char[256];
for(long no = 1; no lt= nSheets no)
{
lpDisp = hoja de trabajo. GetItem(cole variante((short)(no)));
ASSERT(LP disp);
Hojas.
adjuntar despacho(LP disp);
lpDisp = hoja. GetUsedRange();
ASSERT(LP disp);
Rango. adjuntar despacho(LP disp);
/*
Rango r = rango. obtener columnas();
int cc = r. obtener recuento();
r = rango. GetRows();
int RR = r . obtener recuento();
*/
Variable ret = rango. GetValue();
if (ret.vt == VT_EMPTY)
Continuar;
strcpy(archivo de salida, nombre de archivo);
char *p = strchr(outfile,'.');
If (p)
* p = 0;
CString str = outfile
str = " _ ";
str = hoja. GetName();
if (string.find("descripción")==-1 amp;
str.Find("descripción")==-1) p >
{
str_command[ 0 ]. add(str);
int sign =-1;
ftalkg- gt; write((const char *) amp; sign, 4);
int n = str_command[ 0 ]. GetSize();
ftalk-gt;write((const char *) & n, 4);
strcat(outfile, (LPCSTR) hoja de trabajo. GetName()) ;
strcat(archivo de salida, ".cxx");
//STD:: de la secuencia ar(archivo de salida);
STD:: de la secuencia ar ;
//ar lt(LPCSTR) tabla. GetName() lt; ltSTD::endl;
//Crear SAFEARRAY a partir de la variable ret.
COleSafeArray sa(ret);
SaveAsTalk(ar, sa);
}
}