Error Excel

Error Excel

Postby D.Fernandez » Thu Apr 20, 2023 2:51 pm

Amigos si me pueden ayudar les agradezco.
Tengo un cliente que lista a excel y le sale este error aleatoriamente.

Error description: Error BASE/1005 No existe la variable de instancia SIZE
Called from => SIZE()



Por favor una luz...

Gracias.
Ruben Dario Fernandez

Code: Select all  Expand view  RUN
FUNCTION EXCELCUENTA(fechaini, fechafin, numedecli,logocolor)
LOCAL xTOTI:=0 ,xxnFila:=0,xxnCol:=0, ntotalentradas:=0, ntotalsalidas:=0
local xxCO1:=0,xxCO2:=0,xxCO3:=0,xxCO4:=0,xxfec:=date(),xxdp:=0,xxhp:=0,xxdd:=0,xxhd:=0,xxDETA:=SPACE(25)
LOCAL xxhcc:=0,  xxDateDeSaldoaRetornar:=Date(), xxnElNuevoSaldo:=0, xxcuenta1,;
        xxnombresubcta, xxlhaydatos:= .F.,cNombrecuenta0:= "",lamoneda:= ""
LOCAL xXPRPRE1,xXPRMOV1, xXDBESE33,xxFila:=0 , xxColumna:= 0, xxCelda:=0, xXCLIENTE, xxNomApe:= "",xNmf:=1, xncol:=0, cArchivologo

LOCAL xXoExcel,xXoBook, xXoSheet,xXxl:=0, xXoHoja , xcHastaborde, xcnCol:="",xCOLUMNA:=0,xstrfila:="", cCuentaSub:= Space(9)

xXcuenta1 := numedecli

XXPRPRE1:=TData():New(, "preliki")
IF XXPRPRE1:Use()
    XXPRPRE1:SetOrder(1)
    XXPRPRE1:GOTOP()
Else
    MsgInfo( "Error aperura base de datos Cuentas", "Informe")
    RETURN(.F.)
Endif    

XXPRMOV1:=TData():New(, "jjmov")
IF XXPRMOV1:Use()
    XXPRMOV1:SetOrder(1)
    XXPRMOV1:GOTOP()
Else
    XXPRPRE1:Close()
    MsgInfo( "Error aperura base de datos Cuentas", "Informe")
    RETURN(.F.)
Endif    
   
XXDBESE33 := TData():New(,"scta")
IF  XXDBESE33:Use()
    XXDBESE33:SetOrder("STA")
    XXDBESE33:GOTOP()
    IF XXDBESE33:SEEK(numedecli )
        cNombrecuenta0:= XXDBESE33:SUCLINO
        xxnombresubcta  := xXDBESE33:SUBNOM      
        cTipoMoneda:= xXDBESE33:Timon
        lamoneda:= cTipomoneda
    Else  
        MsgInfo( "No encuento la cuenta", "Error 593 de red")
        xXPRPRE1:Close()
        xXPRMOV1:Close()
        xXXDBESE33:Close()
        RETURN(.F.)
    Endif    
Else
    xXPRPRE1:Close()
    xXPRMOV1:Close()
    MsgInfo( "Error aperura base de datos Cuentas", "Informe")
    RETURN(.F.)
Endif        
XXDBESE33:Close()



If Empty(clientegral )  
    Return(.F.)
Endif

xXoExcel := ExcelObj()
If xXoExcel == nil
    MsgInfo("Excel no está instalado", "Informe")    
    RETURN(.F.)
Endif  
xXoExcel := TOleAuto():New("Excel.Application")
xXoExcel:WorkBooks:Add()
xXoExcel:Sheets("Hoja1") ; xXoHoja:=xxoExcel:ActiveSheet()
xXoHoja:Cells:Font:Name := "Arial"
xXoHoja:Cells:Font:Size:= 8                     //10
xXoHoja:PageSetup:Orientation := 1
xXoExcel:DisplayAlerts := .f.

oRange:= xxoHoja:Range("B2:E2")    
oRange:MergeCells:= .T.    
oRange:HorizontalAlignment:=xlCenter

oRange:= xxoHoja:Range("B3:E3")    
oRange:MergeCells:= .T.    
oRange:HorizontalAlignment:=xlCenter

oRange:= xxoHoja:Range("B4:E4")    
oRange:MergeCells:= .T.    
oRange:HorizontalAlignment:=xlCenter

oRange:= xxoHoja:Range("B5:E5")    
oRange:MergeCells:= .T.    
oRange:HorizontalAlignment:=xlCenter

oRange:= xxoHoja:Range("B6:E6")    
oRange:MergeCells:= .T.    
oRange:HorizontalAlignment:=xlCenter

If logocolor
   xxoHoja:Shapes:AddPicture("C:\AlfaInmo\logocolor.jpg",.t.,.t.,2,2,60,40)        
Else
   xxoHoja:Shapes:AddPicture("C:\AlfaInmo\logonegro.jpg",.t.,.t.,2,2,60,40)        
Endif
   
   
//xxoHoja:Shapes:AddPicture(cArchivologo,.t.,.t.,2,2,60,40)                 //5.5
xXoHoja:Cells(2,2):Font:Name := "Verdana"  
xxoHoja:Cells(2,2):Font:Size := 12  
xxoHoja:Cells(2,2):Font:Bold := .T.
xxoHoja:Cells(2,2):Value:= "INMOBILIARIA J&J"
xxoHoja:Cells(2,2):Font:Bold := .T.
xxoHoja:Cells(3,2):Value:= "Reporte de cuenta "+ xTrim(numedecli) + "  desde : "+  DtoC(fechaini) + "  hasta el : "+DtoC(fechafin)
xxoHoja:Cells(4,2):Value:= "Cliente : " + cNombrecuenta0


xXoHoja:Columns(1):ColumnWidth:= 10    
xXoHoja:Columns(2):ColumnWidth:= 24  
xXoHoja:Columns(3):ColumnWidth:= 10    
xXoHoja:Columns(4):ColumnWidth:= 10  
xXoHoja:Columns(5):ColumnWidth:= 10  
xXoHoja:Columns(6):ColumnWidth:= 10    

xxnElNuevoSaldo:= OTROSALDOANTERIOR(lamoneda, fechaini , fechafin , xxcuenta1 ) 

oRange:= xxoHoja:Range("B5:E5")    
oRange:MergeCells:= .T.    
oRange:HorizontalAlignment:=xlCenter
xXoHoja:Cells( 5, 2 ):HorizontalAlignment:=xlEdgeLeft
xxoHoja:Cells(5,2):Value:= "Cuenta : " +xxcuenta1  +" "+XtRIM(xxnombresubcta)

If xTrim(cTipoMoneda)== "D"
    xxoHoja:Cells(6,2):Value:= HBA("Cuenta en dólares americanos")
Else
    xxoHoja:Cells(6,2):Value:= "Cuenta en pesos uruguayos"
Endif

xxoHoja:Range("A7:F7"):Font:Name:= "Calibri"      
xxoHoja:Range("A7:F7"):Font:Size := 8      
xxoHoja:Range("A7:F7"):Font:Bold := .T.  
xxoHoja:Range("A7:F7"):Borders():LineStyle := 1      
xxoHoja:Range("A7:F7"):Interior:Color := CLR_YELLOW
xXoHoja:Cells( 7, 1 ):HorizontalAlignment:= -4131
xXoHoja:Cells( 7, 3 ):HorizontalAlignment:=-4152
xXoHoja:Cells( 7, 4 ):HorizontalAlignment:=-4152
xXoHoja:Cells( 7, 5 ):HorizontalAlignment:=-4152
xXoHoja:Cells( 7, 6 ):HorizontalAlignment:=-4152

If xTrim(cTipoMoneda) == "D"
    xxoHoja:Cells(7,1):Value:= "Fecha"
    xxoHoja:Cells(7,2):Value:= "Detalles"
    xxoHoja:Cells(7,3):Value:= "Debe $"
    xxoHoja:Cells(7,4):Value:= "Haber $"
    xxoHoja:Cells(7,5):Value:= "Debe US$"
    xxoHoja:Cells(7,6):Value:= "Haber US$"
    xxoHoja:Cells(8,2):Value:= "Saldo anterior"

    IF xxnElNuevoSaldo < 0
        xxoHoja:Cells(8,5):NumberFormat := " ###,##0.00"    
        xxoHoja:Cells(8,5):Value:= Transform(xxnElNuevoSaldo,"9,999,999,999.99")
    Else
        xxoHoja:Cells(8,6):NumberFormat := " ###,##0.00"    
        xxoHoja:Cells(8,6):Value:= Transform(xxnElNuevoSaldo,"9,999,999,999.99")
    Endif
Else
    xxoHoja:Cells(8,1):Value:= "Fecha"
    xxoHoja:Cells(8,2):Value:= "Detalles"
    xxoHoja:Cells(8,3):Value:= "Debe US$"
    xxoHoja:Cells(8,4):Value:= "Haber US$"
    xxoHoja:Cells(8,5):Value:= "Debe $"
    xxoHoja:Cells(8,6):Value:= "Haber $"
    xxoHoja:Cells(8,2):Value:= "Saldo anterior"
    IF xxnElNuevoSaldo < 0
        xxoHoja:Cells(8,5):NumberFormat := " ###,##0.00"    
        xxoHoja:Cells(8,5):Value:= Transform(xxnElNuevoSaldo,"9,999,999,999.99")
    Else
        xxoHoja:Cells(8,6):NumberFormat := " ###,##0.00"    
        xxoHoja:Cells(8,6):Value:= Transform(xxnElNuevoSaldo,"9,999,999,999.99")
    Endif
Endif
SysRefresh()

xxnfila:= 8
xxPRMOV1:SetOrder("MCFE")  
xxPRMOV1:GOTOP()
IF xxPRMOV1:SEEK(alltrim(xxcuenta1 ))
        Do While !xxPRMOV1:EOF()              
            xxfec:=xxPRMOV1:MFEC
            If xxfec >= fechaini  .and. xxfec <= fechafin   .AND. Alltrim(xxPRMOV1:MPETA) == Alltrim(xxcuenta1)
                xxdeta :=xxPRMOV1:MDESC  
                xxdp:=xxPRMOV1:MPEDEB
                xxhp:=xxPRMOV1:MPEHAB
                xxdd:=xxPRMOV1:MDODEBE
                xxhd:=xxPRMOV1:MDOHABE
                If xTrim(cTipomoneda) == "D"
                    ntotalentradas += xxhd
                    ntotalsalidas  += xxdd
                Else
                    ntotalentradas += xxdp
                    ntotalsalidas  += xxhp
                Endif
                If xTrim(cTipoMoneda )== "D"
                    xxnElNuevoSaldo :=( xxnElNuevoSaldo) + (xxdd)   + (xxhd)  
                    xxCO3+=(xxDD)
                    xxCO4+=(xxHD)
                   
                Else
                    xxnElNuevoSaldo :=( xxnElNuevoSaldo) + (xxdp)   + (xxhp)  
                    xxCO3+=(xxDp)
                    xxCO4+=(xxHp)
                Endif
                lVi:=.t.
                If xTrim(cTipoMoneda)=="D"
                    xXnFila+=1
                    IF xxDP <> 0 .OR. xxHP <> 0 .OR. xxDD <> 0  .OR.  xxHD <> 0
                        lhaydatos := .t.
                        xXoHoja:Cells( xxnfila, 1 ):HorizontalAlignment:= -4131
                        xxoHoja:Cells(xxnFila,1):Value:= DTOC(xXFEC)
                        xxoHoja:Cells(xxnFila,2):Value:= XtRIM(HBA(xXDETA))
                        IF xXDD <> 0
                            xxoHoja:Cells(xxnfila,3):NumberFormat := " ###,##0.00"    
                            IIF(xxdp < 0, xxoHoja:Cells(xxnFila,3):Value:= xxdp,   )
                            xxoHoja:Cells(xxnfila,5):NumberFormat := " ###,##0.00"    
                            xxoHoja:Cells(xxnFila,5):Value:= xxdd
                        Endif
                        IF xXHD <> 0
                            xxoHoja:Cells(xxnfila,4):NumberFormat := " ###,##0.00"    
                            IIF(xxhp > 0, xxoHoja:Cells(xxnFila,4):Value:= xxhp,   )
                            xxoHoja:Cells(xxnfila,6):NumberFormat := " ###,##0.00"    
                            xxoHoja:Cells(xxnFila,6):Value:= xxhd  
                        Endif
                    Endif
                Else
                    xXnFila+=1
                    IF xXDP <> 0 .OR. xXHP <> 0 .OR. xXDD <> 0  .OR.  xXHD <> 0
                        lhaydatos := .t.
                        xXoHoja:Cells( xxnfila, 1 ):HorizontalAlignment:= -4131
                        xxoHoja:Cells(xxnFila,1):Value:= DTOC(xXFEC)
                        xxoHoja:Cells(xxnFila,2):Value:= XtRIM(HBA(xXDETA))
                        IF xxDp <> 0
                            xxoHoja:Cells(xxnfila,3):NumberFormat := " ###,##0.00"    
                            IIF(xxhp < 0, xxoHoja:Cells(xxnFila,3):Value:= xxhp,   )    
                            xxoHoja:Cells(xxnfila,5):NumberFormat := " ###,##0.00"    
                            xxoHoja:Cells(xxnFila,5):Value:=xxdp
                        Endif
                        IF xxHp <> 0
                            xxoHoja:Cells(xxnfila,4):NumberFormat := " ###,##0.00"    
                            IIF(xxhd > 0, xxoHoja:Cells(xxnFila,4):Value:= xxhd,   )    
                            xxoHoja:Cells(xxnfila,6):NumberFormat := " ###,##0.00"    
                            xxoHoja:Cells(xxnFila,6):Value:= xxhp
                        Endif
                    Endif
                Endif
                SysRefresh()
                xxPRMOV1:SKIP(1)
            Else
               xxPRMOV1:SKIP(1)
            Endif
        EndDo  
Endif
//xxnfila+=2
xxPRPRE1:SetOrder("PLCFE" )        
xxPRPRE1:GOTOP()
IF xXPRPRE1:SEEK(alltrim(xXcuenta1 ))
    Do while  !xXPRPRE1:Eof()  
        xXfec:=xXPRPRE1:pfecha
        xXpepeta:= xXPRPRE1:peta         //sub
        if (xXfec >= fechaini  .and. xXfec <= fechafin )    .AND. xXPRPRE1:PETA == xXcuenta1  
            xXdeta :=xxPRPRE1:pdeta  
            xXdp:=xXPRPRE1:pedebe
            xXhp:=xXPRPRE1:pehaber
            xXdd:=xXPRPRE1:doldeb
            xXhd:=xXPRPRE1:dolhab
            If xTrim(cTipomoneda) == "D"
                ntotalentradas += xxhd
                ntotalsalidas  += xxdd
            Else
                ntotalentradas += xxdp
                ntotalsalidas  += xxhp
            Endif
            If xTrim(cTipoMoneda) == "D"
                xXnElNuevoSaldo :=( xXnElNuevoSaldo) + (xXdd)   + (xXhd)  
                xXCO3+=(xXDD)
                xXCO4+=(xXHD)
            Else
                xXnElNuevoSaldo := (xXnElNuevoSaldo) + (xXdp)   + (xXhp)
                xXCO3+=(xXDp)
                xXCO4+=(xXHp)
            Endif
            lVi :=.t.
            IF xXDD <> 0  .OR. xXDP <> 0 .OR. xXHP <> 0 .OR. xXHD <> 0
                xxnFila+=1
                lhaydatos := .T.
                xXoHoja:Cells( xxnfila, 1 ):HorizontalAlignment:= -4131
                xxoHoja:Cells(xxnFila,1):Value:= DTOC(xXFEC)
                xxoHoja:Cells(xxnFila,2):Value:=hba( XtRIM(xXDETA))

                If xTrim(cTipoMoneda) == "D"
                    IF xXDD <> 0
                        xxoHoja:Cells(xxnfila,3):NumberFormat := " ###,##0.00"    
                        IIF(xxdp < 0, xxoHoja:Cells(xxnFila,3):Value:= xxdp,   )    
                        xxoHoja:Cells(xxnfila,5):NumberFormat := " ###,##0.00"    
                        xxoHoja:Cells(xxnFila,5):Value:= xxdd
                    Endif
                    IF xXHD <> 0
                        xxoHoja:Cells(xxnfila,4):NumberFormat := " ###,##0.00"    
                        IIF(xxhp > 0, xxoHoja:Cells(xxnFila,4):Value:= xxhp,   )    
                        xxoHoja:Cells(xxnfila,6):NumberFormat := " ###,##0.00"    
                        xxoHoja:Cells(xxnFila,6):Value:= xxhd
                    Endif
                Else
                    IF xXDP <> 0 .OR. xXHP <> 0 .OR. xXDD <> 0  .OR.  xXHD <> 0
                        lhaydatos := .t.
                        IF xxDp <> 0
                            xxoHoja:Cells(xxnfila,3):NumberFormat := " ###,##0.00"    
                            IIF(xxdd > 0, xxoHoja:Cells(xxnFila,4):Value:= xxdd,   )    
                            xxoHoja:Cells(xxnfila,5):NumberFormat := " ###,##0.00"    
                            xxoHoja:Cells(xxnFila,5):Value:= xxdp
                        Endif
                        IF xxHp <> 0
                            xxoHoja:Cells(xxnfila,4):NumberFormat := " ###,##0.00"    
                            IIF(xxhd > 0, xxoHoja:Cells(xxnFila,4):Value:= xxhd,   )    
                            xxoHoja:Cells(xxnfila,6):NumberFormat := " ###,##0.00"    
                            xxoHoja:Cells(xxnFila,6):Value:= xxhp
                        Endif
                    Endif
                Endif

            Endif
            xxPRPRE1:SKIP(1)
        Else
            xxPRPRE1:SKIP(1)
        Endif
    EndDo
    xxnfila+=3  
Endif

MsgInfo()

If xxnElNuevoSaldo < 0
    oRange:= xxoHoja:Range("A"+xTrim(Str(xxnfila-1))+":D"+xTrim(Str(xxnfila-1)))    
    oRange:MergeCells:= .T.
    xxoHoja:Range( "A"+xTrim(Str(xxnfila-1)) + ":F"+xTrim(Str(xxnfila-1 ))):Borders():LineStyle := 1
    xXoHoja:Cells( xxnFila-1, 2 ):Font:Bold   := .T.
    xXoHoja:Cells( xxnFila-1, 2 ):Font:Italic   := .T.
    xXoHoja:Cells( xxnFila-1,5 ):Font:Bold   := .T.
    xXoHoja:Cells( xxnFila-1, 5 ):Font:Italic   := .T.
    xxoHoja:Cells(xxnFila-1,1):Value:= "Saldo ....."
    xxoHoja:Cells(xxnFila-1,5):Value:= xxnElNuevoSaldo
Else
    oRange:= xxoHoja:Range("A"+xTrim(Str(xxnfila-1))+":D"+xTrim(Str(xxnfila-1)))    
    oRange:MergeCells:= .T.
    xxoHoja:Range( "A"+xTrim(Str(xxnfila-1)) + ":F"+xTrim(Str(xxnfila-1 ))):Borders():LineStyle := 1
    xXoHoja:Cells( xxnFila-1, 2 ):Font:Bold   := .T.
    xXoHoja:Cells( xxnFila-1, 2 ):Font:Italic   := .T.
    xXoHoja:Cells( xxnFila-1, 6 ):Font:Bold   := .T.
    xXoHoja:Cells( xxnFila-1, 6 ):Font:Italic   := .T.
    xxoHoja:Cells(xxnFila-1,1):Value:= "Saldo ....."
    xxoHoja:Cells(xxnFila-1,6):Value:= xxnElNuevoSaldo
Endif
xxnfila +=2
xxoHoja:Cells(xxnFila,6):Value:= ntotalentradas
xxnfila +=1
xxoHoja:Cells(xxnFila,6):Value:= ntotalsalidas

MsgInfo(ntotalentradas )
MsgInfo(ntotalsalidas)




XxoHoja := XxoExcel:ActiveSheet()
XxoExcel:Visible := .T.
Hb_GCall(.T.)
           
XxPRPRE1:Close()
XxPRMOV1:Close()
SysRefresh()
   

RETURN(.F.)
Dario Fernandez
FWH 24.09, Harbour, MVS2022 Community, BCC, MySql & MariaDB, Dbf/Cdx VSCode.
Maldonado - Uruguay
D.Fernandez
 
Posts: 466
Joined: Wed Jul 31, 2013 1:14 pm
Location: Maldonado - Uruguay

Re: Error Excel

Postby Jimmy » Thu Apr 20, 2023 4:13 pm

hi,

it is not Method Size() itself

you need to "check" if ActiveX Object was create() :!:
Code: Select all  Expand view  RUN
xXoExcel := TOleAuto():New("Excel.Application")
If xXoExcel == nil
    MsgInfo("Excel not create", "Informe")    
    RETURN(.F.)
Endif
greeting,
Jimmy
User avatar
Jimmy
 
Posts: 1732
Joined: Thu Sep 05, 2019 5:32 am
Location: Hamburg, Germany

Re: Error Excel

Postby D.Fernandez » Thu Apr 20, 2023 5:27 pm

Thank you, I will update my software and test in the client machine.

Regrds

Ruben Dario Fernandez
Dario Fernandez
FWH 24.09, Harbour, MVS2022 Community, BCC, MySql & MariaDB, Dbf/Cdx VSCode.
Maldonado - Uruguay
D.Fernandez
 
Posts: 466
Joined: Wed Jul 31, 2013 1:14 pm
Location: Maldonado - Uruguay

Re: Error Excel

Postby karinha » Thu Apr 20, 2023 5:30 pm

João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
User avatar
karinha
 
Posts: 7828
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: Error Excel

Postby paquitohm » Fri Apr 21, 2023 11:27 am

paquitohm
 
Posts: 266
Joined: Fri Jan 14, 2022 8:37 am

Re: Error Excel

Postby D.Fernandez » Fri Apr 21, 2023 2:52 pm

Gracias karinha, tengo hecha un listado con FileXLS
que funciona bien.
Lo que pasa que el cliente se acostumbró al otro excel, *.xlsx que queda mejor.

Seguire buscanbo a ver que encuentro.

Muchas gracias.
Dario Fernandez
FWH 24.09, Harbour, MVS2022 Community, BCC, MySql & MariaDB, Dbf/Cdx VSCode.
Maldonado - Uruguay
D.Fernandez
 
Posts: 466
Joined: Wed Jul 31, 2013 1:14 pm
Location: Maldonado - Uruguay

Re: Error Excel

Postby karinha » Fri Apr 21, 2023 2:55 pm

D.Fernandez wrote:Gracias karinha, tengo hecha un listado con FileXLS
que funciona bien.
Lo que pasa que el cliente se acostumbró al otro excel, *.xlsx que queda mejor.

Seguire buscanbo a ver que encuentro.

Muchas gracias.


Ruben, puede muestrar un ejemplo porfa? És mejor para probar.

Mira:

https://app.box.net/s/lck9effuyn?page=3

https://forums.fivetechsupport.com/viewtopic.php?t=6849


gracias.

Saludos.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
User avatar
karinha
 
Posts: 7828
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: Error Excel

Postby D.Fernandez » Fri Apr 21, 2023 3:06 pm

Gracias paquitohm, lo tengo funcionando con FilesXLS,
pero el cliente se acostumbró al *.xlsx que queda mejor y ahora quiere ese tipo de planilla.

Seguiré viendo.

Muchas Gracias.

Ruben Fernandez
Dario Fernandez
FWH 24.09, Harbour, MVS2022 Community, BCC, MySql & MariaDB, Dbf/Cdx VSCode.
Maldonado - Uruguay
D.Fernandez
 
Posts: 466
Joined: Wed Jul 31, 2013 1:14 pm
Location: Maldonado - Uruguay

Re: Error Excel

Postby D.Fernandez » Fri Apr 21, 2023 3:10 pm

Hola Jimmy, recien vengo de la casa del cliente, con estos cambios tambien me salio el mismo error.

Seguire viendo.
Esto me tiene loco ya.

Muchas gracias.

Ruben Fernandez
Dario Fernandez
FWH 24.09, Harbour, MVS2022 Community, BCC, MySql & MariaDB, Dbf/Cdx VSCode.
Maldonado - Uruguay
D.Fernandez
 
Posts: 466
Joined: Wed Jul 31, 2013 1:14 pm
Location: Maldonado - Uruguay

Re: Error Excel

Postby karinha » Fri Apr 21, 2023 3:52 pm

Ruben, mira como lo haria:

Code: Select all  Expand view  RUN

// C:\FWH..\SAMPLES\RUBENS2.PRG

FUNCTION EXCELCUENTA( fechaini, fechafin, numedecli, logocolor )

   LOCAL xTOTI := 0, xxnFila := 0, xxnCol := 0, ntotalentradas := 0, ntotalsalidas := 0
   LOCAL xxCO1 := 0, xxCO2 := 0, xxCO3 := 0, xxCO4 := 0, xxfec := Date(), xxdp := 0, xxhp := 0, xxdd := 0, xxhd := 0, xxDETA := Space( 25 )
   LOCAL xxhcc := 0,  xxDateDeSaldoaRetornar := Date(), xxnElNuevoSaldo := 0, xxcuenta1, ;
      xxnombresubcta, xxlhaydatos := .F., cNombrecuenta0 := "", lamoneda := ""
   LOCAL xXPRPRE1, xXPRMOV1, xXDBESE33, xxFila := 0, xxColumna := 0, xxCelda := 0, xXCLIENTE, xxNomApe := "", xNmf := 1, xncol := 0, cArchivologo
   LOCAL oExcel, xXoBook, xXoSheet, xXxl := 0, xXoHoja, xcHastaborde, xcnCol := "", xCOLUMNA := 0, xstrfila := "", cCuentaSub := Space( 9 )

   hb_gcAll( .F. )  // limpia basura. caso tenga.m aqui si Ruben.

   xXcuenta1 := numedecli

   XXPRPRE1 := TData():New(, "preliki" )

   IF XXPRPRE1:Use()
      XXPRPRE1:SetOrder( 1 )
      XXPRPRE1:GOTOP()
   ELSE
      MsgInfo( "Error aperura base de datos Cuentas", "Informe" )
      RETURN( .F. )
   ENDIF

   XXPRMOV1 := TData():New(, "jjmov" )

   IF XXPRMOV1:Use()
      XXPRMOV1:SetOrder( 1 )
      XXPRMOV1:GOTOP()
   ELSE
      XXPRPRE1:Close()
      MsgInfo( "Error aperura base de datos Cuentas", "Informe" )
      RETURN( .F. )
   ENDIF

   XXDBESE33 := TData():New(, "scta" )

   IF XXDBESE33:Use()
      XXDBESE33:SetOrder( "STA" )
      XXDBESE33:GOTOP()

      IF XXDBESE33:SEEK( numedecli )
         cNombrecuenta0 := XXDBESE33:SUCLINO
         xxnombresubcta  := xXDBESE33:SUBNOM
         cTipoMoneda := xXDBESE33:Timon
         lamoneda := cTipomoneda
      ELSE
         MsgInfo( "No encuento la cuenta", "Error 593 de red" )
         xXPRPRE1:Close()
         xXPRMOV1:Close()
         xXXDBESE33:Close()
         RETURN( .F. )
      ENDIF

   ELSE

      xXPRPRE1:Close()
      xXPRMOV1:Close()
      MsgInfo( "Error aperura base de datos Cuentas", "Informe" )
      RETURN( .F. )
   ENDIF

   XXDBESE33:Close()

   IF Empty( clientegral )
      Return( .F. )
   ENDIF

   oExcel := ExcelObj()

   IF oExcel == nil
      MsgInfo( "Excel no está instalado", "Informe" )
      RETURN( .F. )
   ENDIF

   TRY

      oExcel := TOleAuto():New( "Excel.Application" )

   CATCH

      TRY

         oExcel = CreateObject( "Excel.Application" )

      CATCH

         /*
         MsgInfo( "Excel is not installed on this PC. " + ;
                  "You need Excel to continue", "Ooooopppsss" )
         */


         MsgInfo( "Excel no está instalado", "Informe" )

         RETURN( .F. )

      END

   END

   oExcel:WorkBooks:Add()

   oExcel:DisplayAlerts := .F.
   oExcel:Visible       := .T.

   // oWorksheet := oExcel:Get( "ActiveSheet" )
   oExcel:Sheets( "Hoja1" ) ; xXoHoja := oExcel:ActiveSheet()

   xXoHoja:Cells:Font:Name := "Arial"
   xXoHoja:Cells:Font:Size := 8                     // 10
   xXoHoja:PageSetup:Orientation := 1

   oRange := xxoHoja:Range( "B2:E2" )
   oRange:MergeCells := .T.
   oRange:HorizontalAlignment := xlCenter

   oRange := xxoHoja:Range( "B3:E3" )
   oRange:MergeCells := .T.
   oRange:HorizontalAlignment := xlCenter

   oRange := xxoHoja:Range( "B4:E4" )
   oRange:MergeCells := .T.
   oRange:HorizontalAlignment := xlCenter

   oRange := xxoHoja:Range( "B5:E5" )
   oRange:MergeCells := .T.
   oRange:HorizontalAlignment := xlCenter

   oRange := xxoHoja:Range( "B6:E6" )
   oRange:MergeCells := .T.
   oRange:HorizontalAlignment := xlCenter

   IF logocolor
      xxoHoja:Shapes:AddPicture( "C:\AlfaInmo\logocolor.jpg", .T., .T., 2, 2, 60, 40 )
   ELSE
      xxoHoja:Shapes:AddPicture( "C:\AlfaInmo\logonegro.jpg", .T., .T., 2, 2, 60, 40 )
   ENDIF

   // xxoHoja:Shapes:AddPicture(cArchivologo,.t.,.t.,2,2,60,40)                 //5.5
   xXoHoja:Cells( 2, 2 ):Font:Name := "Verdana"
   xxoHoja:Cells( 2, 2 ):Font:Size := 12
   xxoHoja:Cells( 2, 2 ):Font:Bold := .T.
   xxoHoja:Cells( 2, 2 ):Value := "INMOBILIARIA J&J"
   xxoHoja:Cells( 2, 2 ):Font:Bold := .T.
   xxoHoja:Cells( 3, 2 ):Value := "Reporte de cuenta " + xTrim( numedecli ) + "  desde : " +  DToC( fechaini ) + "  hasta el : " + DToC( fechafin )
   xxoHoja:Cells( 4, 2 ):Value := "Cliente : " + cNombrecuenta0


   xXoHoja:Columns( 1 ):ColumnWidth := 10
   xXoHoja:Columns( 2 ):ColumnWidth := 24
   xXoHoja:Columns( 3 ):ColumnWidth := 10
   xXoHoja:Columns( 4 ):ColumnWidth := 10
   xXoHoja:Columns( 5 ):ColumnWidth := 10
   xXoHoja:Columns( 6 ):ColumnWidth := 10

   // Que hace?
   xxnElNuevoSaldo := OTROSALDOANTERIOR( lamoneda, fechaini, fechafin, xxcuenta1 )

   oRange := xxoHoja:Range( "B5:E5" )
   oRange:MergeCells := .T.
   oRange:HorizontalAlignment := xlCenter
   xXoHoja:Cells( 5, 2 ):HorizontalAlignment := xlEdgeLeft
   xxoHoja:Cells( 5, 2 ):Value := "Cuenta : " + xxcuenta1  + " " + XtRIM( xxnombresubcta )

   IF xTrim( cTipoMoneda ) == "D"
      xxoHoja:Cells( 6, 2 ):Value := HBA( "Cuenta en dólares americanos" )
   ELSE
      xxoHoja:Cells( 6, 2 ):Value := "Cuenta en pesos uruguayos"
   ENDIF

   xxoHoja:Range( "A7:F7" ):Font:Name := "Calibri"
   xxoHoja:Range( "A7:F7" ):Font:Size := 8
   xxoHoja:Range( "A7:F7" ):Font:Bold := .T.
   xxoHoja:Range( "A7:F7" ):Borders():LineStyle := 1
   xxoHoja:Range( "A7:F7" ):Interior:COLOR := CLR_YELLOW
   xXoHoja:Cells( 7, 1 ):HorizontalAlignment := -4131
   xXoHoja:Cells( 7, 3 ):HorizontalAlignment := -4152
   xXoHoja:Cells( 7, 4 ):HorizontalAlignment := -4152
   xXoHoja:Cells( 7, 5 ):HorizontalAlignment := -4152
   xXoHoja:Cells( 7, 6 ):HorizontalAlignment := -4152

   IF xTrim( cTipoMoneda ) == "D"
      xxoHoja:Cells( 7, 1 ):Value := "Fecha"
      xxoHoja:Cells( 7, 2 ):Value := "Detalles"
      xxoHoja:Cells( 7, 3 ):Value := "Debe $"
      xxoHoja:Cells( 7, 4 ):Value := "Haber $"
      xxoHoja:Cells( 7, 5 ):Value := "Debe US$"
      xxoHoja:Cells( 7, 6 ):Value := "Haber US$"
      xxoHoja:Cells( 8, 2 ):Value := "Saldo anterior"

      IF xxnElNuevoSaldo < 0
         xxoHoja:Cells( 8, 5 ):NumberFormat := " ###,##0.00"
         xxoHoja:Cells( 8, 5 ):Value := Transform( xxnElNuevoSaldo, "9,999,999,999.99" )
      ELSE
         xxoHoja:Cells( 8, 6 ):NumberFormat := " ###,##0.00"
         xxoHoja:Cells( 8, 6 ):Value := Transform( xxnElNuevoSaldo, "9,999,999,999.99" )
      ENDIF

   ELSE

      xxoHoja:Cells( 8, 1 ):Value := "Fecha"
      xxoHoja:Cells( 8, 2 ):Value := "Detalles"
      xxoHoja:Cells( 8, 3 ):Value := "Debe US$"
      xxoHoja:Cells( 8, 4 ):Value := "Haber US$"
      xxoHoja:Cells( 8, 5 ):Value := "Debe $"
      xxoHoja:Cells( 8, 6 ):Value := "Haber $"
      xxoHoja:Cells( 8, 2 ):Value := "Saldo anterior"

      IF xxnElNuevoSaldo < 0
         xxoHoja:Cells( 8, 5 ):NumberFormat := " ###,##0.00"
         xxoHoja:Cells( 8, 5 ):Value := Transform( xxnElNuevoSaldo, "9,999,999,999.99" )
      ELSE
         xxoHoja:Cells( 8, 6 ):NumberFormat := " ###,##0.00"
         xxoHoja:Cells( 8, 6 ):Value := Transform( xxnElNuevoSaldo, "9,999,999,999.99" )
      ENDIF

   ENDIF

   // SysRefresh() // no use aqui

   xxnfila := 8

   xxPRMOV1:SetOrder( "MCFE" )
   xxPRMOV1:GOTOP()

   IF xxPRMOV1:SEEK( AllTrim( xxcuenta1 ) )

      WHILE( .NOT. xxPRMOV1:EOF() )

         SYSREFRESH() // AQUI si.

         xxfec := xxPRMOV1:MFEC

         IF xxfec >= fechaini  .AND. xxfec <= fechafin   .AND. AllTrim( xxPRMOV1:MPETA ) == AllTrim( xxcuenta1 )

            xxdeta := xxPRMOV1:MDESC
            xxdp := xxPRMOV1:MPEDEB
            xxhp := xxPRMOV1:MPEHAB
            xxdd := xxPRMOV1:MDODEBE
            xxhd := xxPRMOV1:MDOHABE

            IF xTrim( cTipomoneda ) == "D"
               ntotalentradas += xxhd
               ntotalsalidas  += xxdd
            ELSE
               ntotalentradas += xxdp
               ntotalsalidas  += xxhp
            ENDIF

            IF xTrim( cTipoMoneda ) == "D"
               xxnElNuevoSaldo := ( xxnElNuevoSaldo ) + ( xxdd )   + ( xxhd )
               xxCO3 += ( xxDD )
               xxCO4 += ( xxHD )

            ELSE
               xxnElNuevoSaldo := ( xxnElNuevoSaldo ) + ( xxdp )   + ( xxhp )
               xxCO3 += ( xxDp )
               xxCO4 += ( xxHp )
            ENDIF

            lVi := .T.

            IF xTrim( cTipoMoneda ) == "D"

               xXnFila += 1

               IF xxDP <> 0 .OR. xxHP <> 0 .OR. xxDD <> 0  .OR.  xxHD <> 0

                  lhaydatos := .T.
                  xXoHoja:Cells( xxnfila, 1 ):HorizontalAlignment := -4131
                  xxoHoja:Cells( xxnFila, 1 ):Value := DToC( xXFEC )
                  xxoHoja:Cells( xxnFila, 2 ):Value := XtRIM( HBA( xXDETA ) )

                  IF xXDD <> 0
                     xxoHoja:Cells( xxnfila, 3 ):NumberFormat := " ###,##0.00"
                     iif( xxdp < 0, xxoHoja:Cells( xxnFila, 3 ):Value := xxdp,   )
                     xxoHoja:Cells( xxnfila, 5 ):NumberFormat := " ###,##0.00"
                     xxoHoja:Cells( xxnFila, 5 ):Value := xxdd
                  ENDIF

                  IF xXHD <> 0
                     xxoHoja:Cells( xxnfila, 4 ):NumberFormat := " ###,##0.00"
                     iif( xxhp > 0, xxoHoja:Cells( xxnFila, 4 ):Value := xxhp,   )
                     xxoHoja:Cells( xxnfila, 6 ):NumberFormat := " ###,##0.00"
                     xxoHoja:Cells( xxnFila, 6 ):Value := xxhd
                  ENDIF

               ENDIF

            ELSE

               xXnFila += 1

               IF xXDP <> 0 .OR. xXHP <> 0 .OR. xXDD <> 0  .OR.  xXHD <> 0

                  lhaydatos := .T.

                  xXoHoja:Cells( xxnfila, 1 ):HorizontalAlignment := -4131
                  xxoHoja:Cells( xxnFila, 1 ):Value := DToC( xXFEC )
                  xxoHoja:Cells( xxnFila, 2 ):Value := XtRIM( HBA( xXDETA ) )

                  IF xxDp <> 0

                     xxoHoja:Cells( xxnfila, 3 ):NumberFormat := " ###,##0.00"
                     iif( xxhp < 0, xxoHoja:Cells( xxnFila, 3 ):Value := xxhp,   )
                     xxoHoja:Cells( xxnfila, 5 ):NumberFormat := " ###,##0.00"
                     xxoHoja:Cells( xxnFila, 5 ):Value := xxdp

                  ENDIF

                  IF xxHp <> 0

                     xxoHoja:Cells( xxnfila, 4 ):NumberFormat := " ###,##0.00"
                     iif( xxhd > 0, xxoHoja:Cells( xxnFila, 4 ):Value := xxhd,   )
                     xxoHoja:Cells( xxnfila, 6 ):NumberFormat := " ###,##0.00"
                     xxoHoja:Cells( xxnFila, 6 ):Value := xxhp

                  ENDIF

               ENDIF

            ENDIF

            // SysRefresh() // no use aqui

            // xxPRMOV1:SKIP( 1 )

            SKIP

         ELSE

            // xxPRMOV1:SKIP( 1 )

            SKIP

         ENDIF

      ENDDO

   ENDIF

   // xxnfila+=2

   xxPRPRE1:SetOrder( "PLCFE" ) // SET ORDER TO... 01,02,03,04, etc.

   GO TOP

   //xxPRPRE1:GOTOP()

   IF xXPRPRE1:SEEK( AllTrim( xXcuenta1 ) )

      WHILE( .NOT. xXPRPRE1:EOF() )

         SYSREFRESH() // AQUI si.

         xXfec := xXPRPRE1:pfecha
         xXpepeta := xXPRPRE1:peta         // sub

         IF ( xXfec >= fechaini  .AND. xXfec <= fechafin )    .AND. xXPRPRE1:PETA == xXcuenta1

            xXdeta := xxPRPRE1:pdeta
            xXdp := xXPRPRE1:pedebe
            xXhp := xXPRPRE1:pehaber
            xXdd := xXPRPRE1:doldeb
            xXhd := xXPRPRE1:dolhab

            IF xTrim( cTipomoneda ) == "D"
               ntotalentradas += xxhd
               ntotalsalidas  += xxdd
            ELSE
               ntotalentradas += xxdp
               ntotalsalidas  += xxhp
            ENDIF

            IF xTrim( cTipoMoneda ) == "D"
               xXnElNuevoSaldo := ( xXnElNuevoSaldo ) + ( xXdd )   + ( xXhd )
               xXCO3 += ( xXDD )
               xXCO4 += ( xXHD )
            ELSE
               xXnElNuevoSaldo := ( xXnElNuevoSaldo ) + ( xXdp )   + ( xXhp )
               xXCO3 += ( xXDp )
               xXCO4 += ( xXHp )
            ENDIF

            lVi := .T.

            IF xXDD <> 0  .OR. xXDP <> 0 .OR. xXHP <> 0 .OR. xXHD <> 0

               xxnFila += 1
               lhaydatos := .T.

               xXoHoja:Cells( xxnfila, 1 ):HorizontalAlignment := -4131
               xxoHoja:Cells( xxnFila, 1 ):Value := DToC( xXFEC )
               xxoHoja:Cells( xxnFila, 2 ):Value := hba( XtRIM( xXDETA ) )

               IF xTrim( cTipoMoneda ) == "D"

                  IF xXDD <> 0
                     xxoHoja:Cells( xxnfila, 3 ):NumberFormat := " ###,##0.00"
                     iif( xxdp < 0, xxoHoja:Cells( xxnFila, 3 ):Value := xxdp,   )
                     xxoHoja:Cells( xxnfila, 5 ):NumberFormat := " ###,##0.00"
                     xxoHoja:Cells( xxnFila, 5 ):Value := xxdd
                  ENDIF

                  IF xXHD <> 0
                     xxoHoja:Cells( xxnfila, 4 ):NumberFormat := " ###,##0.00"
                     iif( xxhp > 0, xxoHoja:Cells( xxnFila, 4 ):Value := xxhp,   )
                     xxoHoja:Cells( xxnfila, 6 ):NumberFormat := " ###,##0.00"
                     xxoHoja:Cells( xxnFila, 6 ):Value := xxhd
                  ENDIF

               ELSE

                  IF xXDP <> 0 .OR. xXHP <> 0 .OR. xXDD <> 0  .OR.  xXHD <> 0

                     lhaydatos := .T.

                     IF xxDp <> 0
                        xxoHoja:Cells( xxnfila, 3 ):NumberFormat := " ###,##0.00"
                        iif( xxdd > 0, xxoHoja:Cells( xxnFila, 4 ):Value := xxdd,   )
                        xxoHoja:Cells( xxnfila, 5 ):NumberFormat := " ###,##0.00"
                        xxoHoja:Cells( xxnFila, 5 ):Value := xxdp
                     ENDIF

                     IF xxHp <> 0

                        xxoHoja:Cells( xxnfila, 4 ):NumberFormat := " ###,##0.00"
                        iif( xxhd > 0, xxoHoja:Cells( xxnFila, 4 ):Value := xxhd,   )
                        xxoHoja:Cells( xxnfila, 6 ):NumberFormat := " ###,##0.00"
                        xxoHoja:Cells( xxnFila, 6 ):Value := xxhp

                     ENDIF

                  ENDIF

               ENDIF

            ENDIF

            // xxPRPRE1:SKIP( 1 )

            SKIP

         ELSE

            // xxPRPRE1:SKIP( 1 )

            SKIP

         ENDIF

      ENDDO

      xxnfila += 3

   ENDIF

   // MsgInfo()  // ??? Para?

   IF xxnElNuevoSaldo < 0

      oRange := xxoHoja:Range( "A" + xTrim( Str( xxnfila - 1 ) ) + ":D" + xTrim( Str( xxnfila - 1 ) ) )
      oRange:MergeCells := .T.
      xxoHoja:Range( "A" + xTrim( Str( xxnfila - 1 ) ) + ":F" + xTrim( Str( xxnfila - 1 ) ) ):Borders():LineStyle := 1
      xXoHoja:Cells( xxnFila - 1, 2 ):Font:Bold   := .T.
      xXoHoja:Cells( xxnFila - 1, 2 ):Font:Italic   := .T.
      xXoHoja:Cells( xxnFila - 1, 5 ):Font:Bold   := .T.
      xXoHoja:Cells( xxnFila - 1, 5 ):Font:Italic   := .T.
      xxoHoja:Cells( xxnFila - 1, 1 ):Value := "Saldo ....."
      xxoHoja:Cells( xxnFila - 1, 5 ):Value := xxnElNuevoSaldo

   ELSE

      oRange := xxoHoja:Range( "A" + xTrim( Str( xxnfila - 1 ) ) + ":D" + xTrim( Str( xxnfila - 1 ) ) )
      oRange:MergeCells := .T.

      xxoHoja:Range( "A" + xTrim( Str( xxnfila - 1 ) ) + ":F" + xTrim( Str( xxnfila - 1 ) ) ):Borders():LineStyle := 1
      xXoHoja:Cells( xxnFila - 1, 2 ):Font:Bold   := .T.
      xXoHoja:Cells( xxnFila - 1, 2 ):Font:Italic   := .T.
      xXoHoja:Cells( xxnFila - 1, 6 ):Font:Bold   := .T.
      xXoHoja:Cells( xxnFila - 1, 6 ):Font:Italic   := .T.
      xxoHoja:Cells( xxnFila - 1, 1 ):Value := "Saldo ....."
      xxoHoja:Cells( xxnFila - 1, 6 ):Value := xxnElNuevoSaldo

   ENDIF

   xxnfila += 2

   xxoHoja:Cells( xxnFila, 6 ):Value := ntotalentradas

   xxnfila += 1
   xxoHoja:Cells( xxnFila, 6 ):Value := ntotalsalidas

   //MsgInfo( ntotalentradas )
   //MsgInfo( ntotalsalidas )

   XxoHoja := oExcel:ActiveSheet()

   oExcel:Visible := .T.

   // hb_gcAll( .T. )  // no use aqui

   XxPRPRE1:Close()  // Porque?
   XxPRMOV1:Close()  // Porque?

   // SysRefresh() NO USE AQUI

// RETURN( .F. )  // NO ES UN VALID()

RETURN NIL

// FIN / END
 


Regards, saludos.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
User avatar
karinha
 
Posts: 7828
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: Error Excel

Postby Jimmy » Fri Apr 21, 2023 4:34 pm

hi,
D.Fernandez wrote:recien vengo de la casa del cliente, con estos cambios tambien me salio el mismo error.

when Excel Object is valid i wonder that it fail when access Method

---

what OS and which Office / Excel Version :?:
does it crash when call Excel 1st Time or "later" when call Excel again :?:

general you can put all into a BEGIN SEQUENCE / END to recover when get Error
greeting,
Jimmy
User avatar
Jimmy
 
Posts: 1732
Joined: Thu Sep 05, 2019 5:32 am
Location: Hamburg, Germany

Re: Error Excel

Postby D.Fernandez » Fri Apr 21, 2023 5:19 pm

Hi Jimmy, I tell you later, don't know.

It's very strange.

With my Winn 11 and Office 365, nothing happend.

Thank you very much

Best regards

Ruben Fernandez
Dario Fernandez
FWH 24.09, Harbour, MVS2022 Community, BCC, MySql & MariaDB, Dbf/Cdx VSCode.
Maldonado - Uruguay
D.Fernandez
 
Posts: 466
Joined: Wed Jul 31, 2013 1:14 pm
Location: Maldonado - Uruguay

Re: Error Excel

Postby rubenfernandez01 » Sat Apr 22, 2023 3:48 pm

Hi Jimmy, I believe that the problem in win XP, because in win 11 run ok.

Enviado desde mi 21081111RG mediante Tapatalk
rubenfernandez01
 
Posts: 46
Joined: Sun Sep 20, 2015 1:41 am

Re: Error Excel

Postby Jimmy » Sun Apr 23, 2023 7:30 am

hi,
rubenfernandez01 wrote:believe that the problem in win XP, because in win 11 run ok.

i wonder that People still use Windows XP ...

you can try to "check" if Property / Method exist in older Excel Version

Code: Select all  Expand view  RUN
FUNCTION __objHasData( oObject, cSymbol )

   IF ! HB_ISOBJECT( oObject ) .OR. ! HB_ISSTRING( cSymbol )
      __errRT_BASE( EG_ARG, 3101, , ProcName( 0 ) )
   ENDIF

RETURN ;
   __objHasMsg( oObject, cSymbol ) .AND. ;
   __objHasMsg( oObject, "_" + cSymbol )

Code: Select all  Expand view  RUN
FUNCTION __objHasMethod( oObject, cSymbol )

   IF ! HB_ISOBJECT( oObject ) .OR. ! HB_ISSTRING( cSymbol )
      __errRT_BASE( EG_ARG, 3101, , ProcName( 0 ) )
   ENDIF

RETURN ;
   __objHasMsg( oObject, cSymbol ) .AND. ;
   ! __objHasMsg( oObject, "_" + cSymbol )
greeting,
Jimmy
User avatar
Jimmy
 
Posts: 1732
Joined: Thu Sep 05, 2019 5:32 am
Location: Hamburg, Germany

Re: Error Excel

Postby rubenfernandez01 » Sun Apr 23, 2023 2:12 pm

Jimmy, thanks, I will try.

Regards,
Ruben Dario Fernandez

Enviado desde mi 21081111RG mediante Tapatalk
rubenfernandez01
 
Posts: 46
Joined: Sun Sep 20, 2015 1:41 am

Next

Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: wilsongamboa and 24 guests

cron