Ver Mensaje Individual
  #2 (permalink)  
Antiguo 08/07/2008, 14:40
Avatar de Shiryu_Libra
Shiryu_Libra
Colaborador
 
Fecha de Ingreso: febrero-2007
Ubicación: Cantando "Screenager" en "Kirafa Kaput"
Mensajes: 3.614
Antigüedad: 18 años, 2 meses
Puntos: 88
Respuesta: coom vaciar datos de una tabla a un archivo predefinido en excel

si entendi bien, lo unico que deseas es tomar el excel y cambiar los valores de determinadas celdas y de esta manera el grafico cambie.... correcto?

pues bien, access y excel se pueden tomar como si fueran bases de datos, entonces podrias realizar una conexion a este archivo de excel, con una cadena de conexion similar a esto:
Cita:
strcxn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source="&server.MapPath("TUExcel.xls")&";Extended Properties=Excel 12.0 Xml;"
una ves realizado esto, y este bien definida la direccion al archivo, lo trataremos como una base utilizando el metodo ADO para buscar datos y cambiarlos, por ejemplo:
Código PHP:
'consulta a una hoja
strclta =     "select * from [Hoja1$] order by id_usuario"
'
creamos la variable conexion
Set objConn 
Server.CreateObject("ADODB.Connection")
'abrimos este archivo
objConn.Open strcxn
'
establecemos los atributos del recordset
Set objRS 
Server.CreateObject("ADODB.Recordset")
With objRS
    
.ActiveConnection objConn
    
.CursorType 3                    'Static cursor.
    .LockType = 3                      '
Pessimistic Lock.
    .
Source strclta
    
.Open
end With 
ahora bien, ya una ves establecido lo anterior podremos manipular los datos de excel
leemos
Código PHP:
    response.write "<TABLE><TR><td>&nbsp;</td>"
    
For 0 To RS.Fields.Count 1
        response
.write "<TD>" RS.Fields.Item(X).Name "</TD>"
    
Next
    
    response
.write "</TR>"
    
RS.MoveFirst

    
While Not RS.EOF
        response
.write "<TR><td>"&rs.AbsolutePosition&"</td>"
        
For 0 To RS.Fields.Count 1
            response
.write "<TD>" RS.Fields.Item(X).Value
            response
.write "</td><TD>" RS.Fields.Item(X).type
        Next
        RS
.MoveNext
        response
.write "</TR>"
    
Wend
    response
.write "</TABLE>" 
nota que el primer "FOR" es para establecer los encabezados

y de ahi en adelante podrias utilizar una sentencia UPDATE de SQL, para cambiar/sustituir los campos/celdas que requieras

__________________
"Eres parte del problema, parte de la solucion o parte del paisaje"
Un Saludo desde Desierto de Altar, Sonora, MX.
Shiryu_libra