FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Ayuda con Exportacion a Excel
Posts: 7
Joined: Wed Jun 03, 2015 08:30 PM
Ayuda con Exportacion a Excel
Posted: Thu Jun 04, 2015 03:28 PM

Buenas amigos tengo consulta y es la siguiente

Cuando doy salida a mi consulta MySql, directamente por sistema hacia excel, la misma la hace bien pero el formato de la Celda prevalece como "General", existe alguna manera de cambiar este tipo de formato de celda en la misma exportaci贸n, es decir "Texto,Numerico" ya trate formateando la celda y mandando el valor pero no funciona alguien tiene alguna idea

Posts: 1364
Joined: Wed Jun 21, 2006 12:39 AM
Re: Ayuda con Exportacion a Excel
Posted: Thu Jun 04, 2015 04:48 PM

Que usas para hacer la exportaci贸n ???

Saludos

Posts: 7
Joined: Wed Jun 03, 2015 08:30 PM
Re: Ayuda con Exportacion a Excel
Posted: Fri Jun 05, 2015 12:44 AM
ya te anexo el codigo donde hago la exportacion (para que puedas verlo), lo hago usando la funcion TOleAuto(), el problema esta en que no me deja convertir el formato de la columna

oExcel := TOleAuto():New( "Excel.Application" )
oExcel:WorkBooks:Add()
oHoja := oExcel:ActiveSheet()

oHoja:Name := "Arial"
oHoja:Size := 10

// TITLE
oHoja:Cells( 1, 1 ):Value := "Mayor Analitico Centro de Costo"
oHoja:Cells( 1, 1 ):Size := 12
oHoja:Cells( 1, 1 ):Bold := .T.

// SUBTITLE
oHoja:Cells( 2, 1 ):Value := "Datapro"
oHoja:Cells( 2, 1 ):Size := 12
oHoja:Cells( 2, 1 ):Bold := .F.

oTable:=OpenTable("SELECT * FROM DPCENCOS ")
aCencos:=ASQL("SELECT CEN_CODIGO,CEN_DESCRI FROM DPCENCOS")

IF !Empty(oFrm:cCenDes) .AND. !Empty(oFrm:cCenHas)
cWhere:="CEN_CODIGO"+GetWhere(">=",oFrm:cCenDes) + " AND " +;
"CEN_CODIGO"+GetWhere("<=",oFrm:cCenHas)

oTable:=OpenTable("SELECT * FROM DPCENCOS WHERE "+cWhere)
aCencos:=ASQL("SELECT CEN_CODIGO,CEN_DESCRI FROM DPCENCOS WHERE "+cWhere)
ENDIF

oFrm:SetTotal(oTable:RecCount())




WHILE !oTable:Eof()
oFrm:Set(oTable:RecNo())
IF Empty(cSql)
cSql:="SELECT CTA_CODIGO"
ENDIF

IF !Empty(csql)
cSql:=cSql+",IF(CEN_CODIGO"+GetWhere("=",oTable:CEN_CODIGO)+",SUM(MOC_MONTO),0) AS '"+oTable:CEN_DESCRI+"'"
ENDIF

oTable:DbSkip()
ENDDO


cWhere:="WHERE MOC_FECHA"+GetWhere(">=",oFrm:dDesde) + " AND " +;
" MOC_FECHA"+GetWhere("<=",oFrm:dHasta)

IF !Empty(oFrm:cCodigo) .AND. !Empty(oFrm:cCodHas)
cWhere:=cWhere + " AND MOC_CUENTA"+GetWhere(">=",oFrm:cCodigo) + " AND " +;
" AND MOC_CUENTA"+GetWhere("<=",oFrm:cCodHas)

ENDIF
cSql:=cSql+" FROM DPASIENTOS INNER JOIN DPCTA ON CTA_CODIGO=MOC_CUENTA " +;
"INNER JOIN DPCENCOS ON MOC_CENCOS=CEN_CODIGO " +cWhere+ "GROUP BY CTA_CODIGO"

oExport:=OpenTable(cSql,.T.)


oHoja:Cells( 3, 1 ):Value := "Cuenta"
oHoja:Cells( 3, 1 ):Size := 8
oHoja:Cells( 3, 1 ):Bold := .F.

nLine:=1

FOR I=1 TO LEN(aCencos)

nLine++
cDescri:=STRTRAN(aCencos[I,2]," ","")
oHoja:Cells( 3, nLine ):Value :=cDescri
oHoja:Cells( 3, nLine ):Size := 8
oHoja:Cells( 3, nLine ):Bold := .F.

NEXT I

nLine:=3
WHILE !oExport:Eof()
nLine++

AEVAL(oExport:aFields,{|a,n| oHoja:Cells( nLine, n ):Value := oExport:FieldGet(n),;
oHoja:Cells( nLine, n ):Size := 10,;
oHoja:Cells( nLine, n ):Bold := .F.})

oExport:DbSkip
ENDDO



oHoja := oExcel:ActiveSheet()
oExcel:Visible := .T.
oExcel:End()
Posts: 492
Joined: Wed Nov 16, 2005 12:03 PM
Re: Ayuda con Exportacion a Excel
Posted: Fri Jun 05, 2015 04:15 AM

Hugo
Saludos, bienvenido al foro de fivetech, hugo es un programador de AdaptaPro. Agradecido de cualquier apoyo que puedas recibir por parte de los integrantes de este foro.

Posts: 3358
Joined: Fri Oct 07, 2005 08:20 PM
Re: Ayuda con Exportacion a Excel
Posted: Fri Jun 05, 2015 02:31 PM
Hugo:

Prueba dando formato a cada celda.
Code (fw): Select all Collapse
    oSheet:Cells(nRow, nCol):Set("NumberFormat","#,###.00")


Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
Posts: 7
Joined: Wed Jun 03, 2015 08:30 PM
Re: Ayuda con Exportacion a Excel
Posted: Fri Jun 05, 2015 03:50 PM

Sr Armando

Ya probe eso, formateando la celda y montando el formato, el cual no funciono me cambia el formato de celda a "personalizado", estuve leyendo en las opciones de excel Ctrl+Mayuscula+f12 luego ctrl+mayus+f2 me muestra las funciones de excel para cambiar el tipo de formato, pero aun no doy con la solucion

Posts: 3358
Joined: Fri Oct 07, 2005 08:20 PM
Re: Ayuda con Exportacion a Excel
Posted: Fri Jun 05, 2015 03:56 PM
Hugo:

A mi me funciona bien con el ejemplo que te mostr茅

Veo que usas

Code (fw): Select all Collapse
oHoja:Cells( 3, nLine ):Value :=cDescri


Y me parece que debe ser
Code (fw): Select all Collapse
oHoja:Cells( nline, 3 ):Value :=cDescri   // Primero es la l铆nea y luego la columna


Ser谩 por ah铆?

Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
Posts: 1710
Joined: Tue Oct 28, 2008 06:26 PM
Re: Ayuda con Exportacion a Excel
Posted: Fri Jun 05, 2015 04:27 PM
Intenta as铆:

Code (fw): Select all Collapse
  oSheet:Range( "A1:A20" ):NumberFormat:="###,##0.00"


Saludos,

Adhemar
Saludos,



Adhemar C.
Posts: 7
Joined: Wed Jun 03, 2015 08:30 PM
Re: Ayuda con Exportacion a Excel
Posted: Fri Jun 05, 2015 05:35 PM

Amigos

Indico el Numero de la columna para que el solo haga el incremento por la linea (dejo fijo la columna 3, y hace el incremento por linea), ya intente con el numberformat pero eso sirve solamente para convertir la columna a formato numerico (no para convertirla a formato texto)

Posts: 3358
Joined: Fri Oct 07, 2005 08:20 PM
Re: Ayuda con Exportacion a Excel
Posted: Fri Jun 05, 2015 05:50 PM
Hugo:

Para formato texto prueba con

Code (fw): Select all Collapse
oSheet:Cells(nRow, nCol):Set("NumberFormat","@")


Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
Posts: 7
Joined: Wed Jun 03, 2015 08:30 PM
Re: Ayuda con Exportacion a Excel
Posted: Fri Jun 05, 2015 06:05 PM

Armando

No habia pensado en eso puede funcionar.. dejeme probar y le aviso

Posts: 2064
Joined: Fri Jan 06, 2006 09:28 PM
Re: Ayuda con Exportacion a Excel
Posted: Fri Jun 05, 2015 08:20 PM
Aca algunos detalles que uso y me funcionan perfectamente, entre ellos el de formato de celda...saludos... :-)

Code (fw): Select all Collapse
oExcel := TOleAuto():New( "Excel.Application" )
oExcel:WorkBooks:Add()

// ESPECIFICAS EN QUE HOJA QUIERES QUE SE INICIE Y TRABAJE, SE SELECCIONA Y LUEGO ACTIVA
oExcel:Sheets("Hoja2"):Select(); oHoja := oExcel:ActiveSheet()

oHoja := oExcel:ActiveSheet() // SINO ESPECIFICAS QUE HOJA, TOMARA POR DEFECTO AL HOJA1

oHoja:PageSetup:Orientation := 2 // 1=xlPortrai(vertical), 2=xlLandscape(horizontal)
oHoja:Cells:Font:Name := "Arial" // ESPECIFICA TIPO DE LETRA PARA TODA LA HOJA
oHoja:Cells:Font:Size := 12 // ESPECIFICA TAMANO DE LETRA PARA TODA LA HOJA
oHoja:Cells(1, nFor):Font:Size := 16 // DETERMINA TAMA脩O DE LETRA A USAR EN UNA CELDA
oHoja:Cells(1, 1):Font:Bold := .t. // PONE EN NEGRITAS VALOR DE UNA CELDA
oHoja:Cells(1, 1):Font:ColorIndex := 5 // COLOR PREESTABLECIDO DE EXCEL DEL CONTENIDO DE LA CELDA
oHoja:Cells(3, 2):Font:Color := RGB(255,0,0) // COLOR DEL CONTENIDO DE LA CELDA
oHoja:Cells(1, 4):Interior:ColorIndex := 16 // COLOR PREESTABLECIDO DE EXCEL DE LA CELDA
oHoja:Cells(3, 2):Interior:Color := RGB(200,160,35) // COLOR DE LA CELDA
oHoja:Cells(3, 1):NumberFormat := "$ ###,##0.00" 聽// FORMATEAR CELDA NUMERICA
oHoja:Cells(7, 1):FormulaLocal:="=SUMA(A1:A5)" // APLICAR FORMULA A UNA CELDA

oHoja:Shapes:AddPicture( "C:\CARPETA1\CARPETA2\BITMAPS\firma.jpg", .t., .t., 30, 30, 40, 60 ) // AGREGA IMAGEN A EXCEL

Hoja1.Shapes.AddPicture "ruta:\Img.jpg", msoFalse, msoCTrue, Hoja1.Range("A1").Left, Hoja1.Range("A1").Top, Hoja1.Range("A1").Width, Hoja1.Range("A1").Height
// esto lo que hace es colocar la imagen en la celda especifica, y la imagen toma el alto y ancho de la celda.
Dios no est谩 muerto...



Gracias a mi Dios ante todo!
Posts: 7
Joined: Wed Jun 03, 2015 08:30 PM
Re: Ayuda con Exportacion a Excel
Posted: Fri Jun 05, 2015 09:25 PM

joseluisysturiz

Gracias, pruebo y aviso

Gracias por la colaboraci贸n

Posts: 2064
Joined: Fri Jan 06, 2006 09:28 PM
Re: Ayuda con Exportacion a Excel
Posted: Sat Jun 06, 2015 02:20 AM
hugodatapro wrote:joseluisysturiz

Gracias, pruebo y aviso

Gracias por la colaboraci贸n

Cualquier duda o algo nuevo que sepas, avisa para agregarlo a mi repertorio, esto casi todo lo he bajado y probado desde las macros de visual bicho y han funcionado de la misma manera con xh y fwh...saludos... :-)
Dios no est谩 muerto...



Gracias a mi Dios ante todo!
Posts: 7
Joined: Wed Jun 03, 2015 08:30 PM
Re: Ayuda con Exportacion a Excel
Posted: Tue Jun 16, 2015 03:04 PM

Gracias a todos por su colaboracion

Disculpandome por la demora en responder la funcion que me funciono perfectamente fue esta

oSheet:Cells(nRow, nCol):Set("NumberFormat","@")

Gracias por el aporte

Saludos

Continue the discussion