![]() ![]() ![]() ![]() |
|||||
|
|||||
樓主 sam ![]()
![]() |
set objExcelApp = CreateObject("Excel.Application") objExcelApp.DisplayAlerts = false objExcelApp.Application.Visible = false strAddr = Server.MapPath(".") objExcelApp.WorkBooks.Open(strAddr & "\" & "test.xls") set objExcelBook = objExcelApp.ActiveWorkBook set objExcelSheet = objExcelBook.Sheets(1) ...... '存檔 objExcelBook.SaveAs strAddr & "\" & "report.xls" '退出Excel操作 objExcelApp.Quit set objExcelApp = Nothing response.write "<script>window.open(""report.xls"");window.close();</script>" 1、用我的電腦可以自動下載report.xls,沒有問題,可是部份人員卻無法產生Excel檔,而且沒有錯誤訊息,程式有在執行卻沒有結果 2、可否轉成xlsx的檔案格式 以上,請各位大大幫幫忙,謝謝!
本篇文章發表於2015-04-27 10:01
|
1樓
作者回應
sam ![]() |
沒有人遇過這種狀況嗎?唉 ~
本篇文章回覆於2015-04-27 15:19
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
2樓 |
1.存檔路徑 --> strAddr = Server.MapPath(".") 是否在每台電腦環境的路經皆相同?
2.可否轉成xlsx的檔案格式 --> objExcelBook.SaveAs strAddr & "\" & "report.xlsX"
本篇文章回覆於2015-04-27 16:38
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
3樓
作者回應
sam ![]() |
1、謝謝你的回應,我的程式是將Excel另存在伺服器上,再從使用端透過Web將檔案開啟,所以與使用端的路徑無關,我在猜測是否是使用端對這個動作需開放什麼權限或是變更設定,因為只有幾台電腦是這樣子的,但是我不知道如何處理
2、你轉xlsx的方法會造成檔案損毀無法讀取,我之前試過了
本篇文章回覆於2015-04-27 16:57
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
4樓
作者回應
sam ![]() |
還是沒人會處理嗎?
本篇文章回覆於2015-04-28 08:08
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
5樓 |
從程式碼來看,開啟的檔案和儲存的檔案名稱都是固定的
請問有確認過,在無法順利開啟時,主機上檔案是否有更新嗎? 如果有,可能是作業系統設定問題導致檔案無法順利開啟 如果沒有,那有可能是同時有複數人對檔案進行操作,導致檔案鎖住無法順利動作 另外問題中有提到樓主的電腦可以執行,但部分人員會有問題 這邊樓主的電腦是網站主機嗎? 如果是才有可能是權限問題,而且應該不是部分人員會有問題,而是其他人員全都會有問題才對 如果不是,基本上就沒有權限的問題
本篇文章回覆於2015-04-28 09:40
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
6樓
作者回應
sam ![]() |
謝謝你的回應,
1、無法順利開啟時,主機上檔案有更新 2、我的電腦不是網站主機 3、我在大陸工作,目前測試5台電腦(包括我的電腦),3台沒有問題,另二台則無法出現檔案
本篇文章回覆於2015-04-28 10:12
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
7樓 |
建議:
1. 先註解掉On Error Resume Next以便觀察有無發生錯誤 或是加上if Err.Number <> 0判斷 2. 部份人員無法執行的情況是哪種?例如:Window.Open有沒有跳出來? 若沒跳出來,也許檢查是不是瀏覽器或防毒軟體擋掉了 有跳出來的話,有沒有出現下載儲存視窗? 若出現下載視窗代表Client端未安裝可開啟Excel的軟體
本篇文章回覆於2015-04-28 10:44
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
8樓
作者回應
sam ![]() |
謝謝你的回應,是Window.open沒有跳出來
程式跑完了,就畫面閃了一下,然後就沒有然後呢,這是屬於那一種呢?
本篇文章回覆於2015-04-28 11:12
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
9樓 |
為什麼window.open後,緊接著又下window.close()?
也許是這樣造成開啟後馬上又關掉 建議先拿掉window.close()試試看
本篇文章回覆於2015-04-28 11:29
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
10樓 |
對於有問題的電腦,請測試直接用瀏覽器開啟report.xls
如果可以開啟或下載,表示問題在網頁原始碼部分 如果是沒反應的空白畫面,表示問題在該電腦無法用瀏覽器開啟或下載xls檔,請檢查是何種瀏覽器,版本為何?試著將瀏覽器設定調回預設值(通常在設定中會有此功能的按鈕)試試
本篇文章回覆於2015-04-28 13:47
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
11樓
作者回應
sam ![]() |
謝謝各位的回應,我都會試一下的
本篇文章回覆於2015-04-28 13:55
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
12樓
作者回應
sam ![]() |
試了各位大大的建議:
1、我拿掉了window.close(),結果一樣 2、註解掉On Error Resume Next但沒有錯誤訊息 3、可以直接用瀏覽器開啟report.xls
本篇文章回覆於2015-04-28 17:09
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
13樓 |
是用IE瀏覽器嗎?
檢查看看工具中的「快顯封鎖程式」 將該功能關閉試試看,或是將網址加入允許網站列表
本篇文章回覆於2015-04-28 18:53
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
14樓
作者回應
sam ![]() |
1、是用IE瀏覽器
2、「快顯封鎖程式」原來就是關閉狀態 3、原來就已經加入信任的網站 謝謝回應!但還是不行
本篇文章回覆於2015-04-29 08:36
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
15樓 |
IE版本是?
在空白畫面中按右鍵->檢視原始碼 看看script有沒有出現,如果沒有 把script從asp抽出來直接寫在HTML中試試看
本篇文章回覆於2015-04-29 09:22
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
回覆 |
如要回應,請先登入. |