none
Classic ASP vs Excel - não atualiza RRS feed

  • Pergunta

  • Bom dia a todos,

    Preciso utilizar uma planilha do excel para fazer uns cálculos para mim, faço isso via classic asp.

    A idéia é enviar 2 valores para duas célulasno excel e pegar o resultado da fórmula que está em uma terceira célula.

    Eu consigo enviar os 2 valore, e pegar o resultado do excel, mas se faço novo update para o excel, mandando 2 novos valores, estes são atualizados, mas o select me retorna o valor antigo da célula de resultado.

    Se eu abro o arquivo excel (.xls) vejo as alterações corretas, inclusive com a célula do resultado atualizada, mas no select retorna o valor desatualçizado.

    Só consigo pegar o valor atualizado da célula de resultados se eu abrir o arquivo.xls e salvá-lo, aí sim ele me retorna no select o resultado atualizado pela fórmula do excel.

    Como posso resolver isso? segue abaixo o código que uso.

    arquivo = Server.MapPath("../excel/aluminio_agrolab.xls")
    Set my_conn_excel = Server.CreateObject("ADODB.Connection")
      my_conn_excel.Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("../excel/aluminio_agrolab.xls") & ";Extended Properties=""Excel 8.0;IMEX=0;HDR=Yes;"";")

    tabela = "Plan1$"

    sql = "update [" & tabela & "] set leitura_1=10,leitura_2=1 WHERE resultado <> null"
    my_conn_excel.execute(sql)

    sql = "select * from [" & tabela & "]"
    set rsx = my_conn_excel.execute(sql)
    if not rsx.bof and not rsx.eof then
     xxx = rsx("resultado")
    end if
    rsx.close

    quinta-feira, 7 de abril de 2011 13:16

Todas as Respostas