Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

JackTequila

Abrir arquivo do excel via asp.

Recommended Posts

Ola amigos, sera que voces podem me ajudar.

 

Estou criando uma pagina em asp.

Eu quero criar um botao que chame uma outra pagina em asp que vai executar uma rotina.

Preciso que essa pagina que execute a rotina seja fechada automaticamente depois que eu clicar no botao para chama-la e abra um arquivo do excel.

Nao sei se fui muito claro.

Vamos novamente.

Clico em um botao em uma pagina, ele abre outra para executar uns comandos e abre um planilha do excel e fecha a pagina que executou os comandos.

É possivel isso?

 

Obrigado,

Compartilhar este post


Link para o post
Compartilhar em outros sites

no link do botão você só var dar um target=blank e na página seguinte vai conter um scripot parar abrir chamar o arquivo excel, mais você quer que ele abrar em uma página ASP ou só chame o xls?

Compartilhar este post


Link para o post
Compartilhar em outros sites

no link do botão você só var dar um target=blank e na página seguinte vai conter um scripot parar abrir chamar o arquivo excel, mais você quer que ele abrar em uma página ASP ou só chame o xls?

 

A minha primeira pagina asp tem um formulario aonde voce seleciona um periodo.

Com um botão para consultar.

Ela manda para outra pagina asp (que não precisa ser visualizada pelo usuario) aonde busca os dados em um banco de dados SQL e grava esse dados em celulas especifica em um arquivo excel existente.

Só que ele só grava no arquivo do excel e acaba deixando essa pagina asp aberta sem nada.

Eu queria que apos clicar no botao de consulta, ele abra a pagina asp, execute a rotina para gravar os dados no excel e depois disso ela abra o arquivo do excel atualizado e feche a pagina asp.

 

Segue a rotina da segunda pagina asp:

 

<%@ LANGUAGE="VBScript" %>
<% 
  Option Explicit
  Response.Buffer = TRUE
%>
<%
Session.LCID = 1036 
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<!--	#include file = "../settings.asp" -->
<!-- 	#include file = "../public.asp" -->

<% 
	Dim cnnDB, sid, uid
	Set cnnDB = CreateCon
	sid = GetSid
%>
 
<head>
<title>Controle Diário de Operação - Poços e Barragens - FDI-0031 - V.2</title>
<link rel="stylesheet" type="text/css" href="../default.css">

</head>

<body> 
 
<% 
Call CheckUser(cnnDB, sid) 
uid = Usr(cnnDB, sid, "uid")


Dim arquivo, arquivo1, vConsultaOk, periodoRel, dataRel, horaRel, vTPeriodo, vSQL1, VRs1, vPerAlt, objBook, objSheet, objApp, vPeriodo, id_sistema, codigo, sistema, municipio, data, horimetro, macro, anacloro, anafluor, horas, min, carbonato_entr, carbonato, carbonato_est, calhidra_entr, calhidra, calhidra_est, hipoclorito_entr, hipoclorito, hipoclorito_est, cloroliquido_entr, cloroliquido, cloroliquido_est, acidotri_entr, acidotri, acidotri_est, sulfgran, sulfliq, cloretofer, acidoflu_entr, acidoflu, acidoflu_est
Dim linha, linhaA, linhaB, linhaC, linhaD, linhaE, linhaF, linhaG, linhaH, linhaI, linhaJ, linhaK, linhaL, linhaM, linhaN, linhaO, linhaP, linhaQ, linhaR

vTPeriodo = Request.Form("periodo")
If Left(vTPeriodo,1) = 0 then
	vPeriodo = Right(vTPeriodo,6)
else
	vPeriodo = vTPeriodo
End If

vConsultaOk = True
codigo = 1
id_sistema = Request.Form("sistema")

vSQL1 = "Cons_Agua_Rel1 ('" & vPeriodo & "'," & codigo & "," & id_sistema & ")"
Set vRs1 = SQLQuery(cnnDB, vSQL1)

dim fs
set fs=Server.CreateObject("Scripting.FileSystemObject")
fs.CopyFile "D:\Inetpub\wwwroot\Controle\producao\Relatorios\FDI-0031_V.2_Controle_diário_de_poços_e_barragens.xls","D:\Inetpub\wwwroot\Controle\producao\Relatorios\Arquivos_gerados\" & (uid) & "_FDI-0031_V.2_Controle_diário_de_poços_e_barragens1.xls"
set fs=nothing

arquivo = "D:\Inetpub\wwwroot\Controle\producao\Relatorios\Arquivos_gerados\" & (uid) & "_FDI-0031_V.2_Controle_diário_de_poços_e_barragens1.xls"

Set objApp = Server.CreateObject("Excel.Application")

Set objBook = objApp.Workbooks.Open(arquivo)
Set objSheet = objBook.Sheets.Item(1)

objApp.Visible = True
objApp.DisplayAlerts = True
objApp.UserControl = True

	If vRs1.EOF and vRs1.BOF Then
		Response.write("Não há dados para gerar o relatório")
		vRs1.Close
		vConsultaOk = False
	End If


	If vConsultaOk = true then
		vRs1.MoveFirst
		
		objSheet.Range("B10").Value=""	
		objSheet.Range("D10").Value=""	
		objSheet.Range("H11").Value=""	
		objSheet.Range("K11").Value=""	
		objSheet.Range("Q11").Value=""	 
		objSheet.Range("N11").Value=""
		objSheet.Range("A13:R43").Value=""
			
		
		sistema = vRs1("sistema")
		municipio = vRs1("municipio")
		objSheet.Range("D10").Value=sistema & " - " & municipio
		
		data = vRs1("data")
		periodoRel = ((DatePart("m",data)) & "/" & (DatePart("yyyy",data)))
		objSheet.Range("B10").Value=periodoRel	
		
		objSheet.Range("J24").Value=cstr("12/05/2008")	

	linha = 12

	DO UNTIL vRs1.EOF 
		data = vRs1("data")
		dataRel = Right("0" & DatePart("d", Data),2) & "/" & Right("0" & DatePart("m", Data),2) & "/" & DatePart("yyyy", Data)
		horaRel = ((DatePart("h",data)) & ":" & (DatePart("n",data)))
		
		
		horimetro = vRs1("horimetro")
		macro = vRs1("macro")
		anacloro = vRs1("anacloro")
		anafluor = vRs1("anafluor")
		sulfgran = vRs1("sulfgranNew")
		sulfliq = vRs1("sulfliqNew")
		cloretofer = vRs1("cloretoferNew")
		carbonato_entr = vRs1("carbonato_entrNew")
		carbonato = vRs1("carbonatoNew")
		carbonato_est = vRs1("carbonato_estNew")
		calhidra_entr = vRs1("calhidra_entrNew")
		calhidra = vRs1("calhidraNew")
		calhidra_est = vRs1("calhidra_estNew")
		hipoclorito_entr = vRs1("hipoclorito_entrNew")
		hipoclorito = vRs1("hipocloritoNew")
		hipoclorito_est = vRs1("hipoclorito_estNew")
		cloroliquido_entr = vRs1("cloroliquido_entrNew")
		cloroliquido = vRs1("cloroliquidoNew")
		cloroliquido_est = vRs1("cloroliquido_estNew")
		acidoflu_entr = vRs1("acidoflu_entrNew")
		acidoflu = vRs1("acidofluNew")
		acidoflu_est = vRs1("acidoflu_estNew")
		acidotri_entr = vRs1("acidotri_entrNew")
		acidotri = vRs1("acidotriNew") 
		acidotri_est = vRs1("acidotri_estNew")
		
		linha = linha + 1   
		linhaA = "A" & linha
		linhaB = "B" & linha
		linhaC = "C" & linha
		linhaD = "D" & linha
		linhaE = "E" & linha
		linhaF = "F" & linha
		linhaG = "G" & linha
		linhaH = "H" & linha
		linhaI = "I" & linha
		linhaJ = "J" & linha
		linhaK = "K" & linha
		linhaL = "L" & linha
		linhaM = "M" & linha
		linhaN = "N" & linha
		linhaO = "O" & linha
		linhaP = "P" & linha
		linhaQ = "Q" & linha
		linhaR = "R" & linha

		objSheet.Range(linhaA).Value=dataRel
		objSheet.Range(linhaB).Value=horaRel
		objSheet.Range(linhaC).Value=horimetro
		objSheet.Range(linhaD).Value=macro
		objSheet.Range(linhaE).Value=anacloro
		objSheet.Range(linhaF).Value=anafluor
		
	
		If CDbl(carbonato) > 0 Then 
			objSheet.Range("H11").Value="Carbonato de Sódio"
			objSheet.Range(linhaG).Value=carbonato_entr
			objSheet.Range(linhaH).Value=carbonato
		Elseif CDbl(calhidra) > 0 Then
			objSheet.Range("H11").Value="Cal Hidratada"
			objSheet.Range(linhaG).Value=calhidra_entr
			objSheet.Range(linhaH).Value=calhidra
		End If
		
		If CDbl(hipoclorito) > 0 Then
			objSheet.Range("K11").Value="Hipoclorito de Sódio"
			objSheet.Range(linhaJ).Value=hipoclorito_entr
			objSheet.Range(linhaK).Value=hipoclorito
		Elseif CDbl(cloroliquido) > 0 Then
			objSheet.Range("K11").Value="Cloro Liquido"
			objSheet.Range(linhaJ).Value=cloroliquido_entr
			objSheet.Range(linhaK).Value=cloroliquido
		Elseif CDbl(acidotri) > 0 Then
			objSheet.Range("K11").Value="Acido Tricloroisocianúrico"
			objSheet.Range(linhaJ).Value=acidotri_entr
			objSheet.Range(linhaK).Value=acidotri
		End If

		If CDbl(sulfgran) > 0 Then
			objSheet.Range("Q11").Value="Sulfato Granulado"
			objSheet.Range(linhaQ).Value=sulfgran
		Elseif CDbl(sulfliq) > 0 Then
			objSheet.Range("Q11").Value="Sulfato Líquido"
			objSheet.Range(linhaQ).Value=sulfliq
		Elseif CDbl(cloretofer) > 0 Then
			objSheet.Range("Q11").Value="Cloreto Férrico"
			objSheet.Range(linhaQ).Value=cloretofer
		End If 

		If CDbl(acidoflu) > 0 Then
			objSheet.Range("N11").Value="Ácido Fluorsilísico"
			objSheet.Range(linhaM).Value=acidoflu_entr
			objSheet.Range(linhaN).Value=acidoflu
		End If

		vRs1.MoveNext
	Loop
	End If
%>

<%
cnnDB.Close
%>

<%

objBook.Close True
objApp.Quit
Set objSheet = Nothing
Set objBook = Nothing
Set objApp = Nothing
%>

</body>
</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom Dia !

 

Há muito tempo atrás, eu estava testando as funcionalidades do asp e topei com isto, funciona, mas precisa adaptar ao seus propósitos.

 

CODE
<HTML>

<HEAD>

<TITLE>Reading from Excel</TITLE>

</HEAD>

<BODY>

 

<%

' create and open the connection to the database

Set conn = Server.CreateObject("ADODB.Connection")

conn.Open "DRIVER=Microsoft Excel Driver (*.xls);" _

& "DBQ=" & Server.MapPath("varia.xls")

' create and open the recordset

Set RS = conn.Execute("Select * From [plan1$]")

%>

<TABLE Border=0 cellpadding="1" width="100%">

<TR>

<% For col = 0 To RS.Fields.Count-1 %>

<TH><% = RS.Fields(col).name %></TH>

<% Next %>

</TR>

<% Do While Not RS.eof %>

<TR>

<% For col = 0 To RS.Fields.Count-1 %>

<TD><% = RS.Fields(col).value %></TD>

<% Next %>

</TR>

<% RS.MoveNext %>

<% Loop %>

</TABLE>

<%

rs.close

conn.close

set rs = nothing

set conn = nothing

%>

 

Abraços,

Vinicius Ianni

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.