顯示具有 Excel 標籤的文章。 顯示所有文章
顯示具有 Excel 標籤的文章。 顯示所有文章

2014年6月26日 星期四

Excel: 取消自動建立超連結的功能

在使用 Excel 時,如果我們輸入一個網址或是E-mail信箱,系統預設會把他自動變成超連結,這功能看起來好用,但是有時挺麻煩的,尤其是輸入E-mail時,一但自動變成超連結,只要點到,就會直接叫用寄信的軟體,十分不便。

如何取消自動建立超連結

Excel2003

要取消這個功能,只要在功能表上點選「工具」->「自動校正選項」,再選取「輸入時自動套用格式」的那一頁,把「依照您的輸入取代□Internet與網路路徑超連結」的勾勾取消即可。

Excel2007

取消超連必須針對個別的 Excel 檔案,無法套用在所有的 Excel 檔,所以請先開啟要取消自動超連結的檔案。

按下左上角的「Office 按鈕」,然後選擇「Excel 選項」。

在 Excel 選項視窗中,先點選左方的「校訂」,再按下右側的「自動校正選項」。


點選「輸入時自動套用格式」的頁籤,再取消勾選「網際網路與網路路徑超連結」,然後按下確定的按鈕。

如此一來,這個 Excel 檔案就不會自動建立超連結了。



那已經變成超連結的部分要如何刪除?

如果只有少數幾個超連結

請直接在連結上點滑鼠右鍵,再選「移除超連結」即可。

如果有很多的超連結

那一個一個點就太麻煩了,這個時候就要用到巨集的功能了,方法如下:


1、按 Alt+F8 叫出巨集的視窗。

2、在「巨集名稱」內隨便打一個名字,假設是「test01」,然後按右邊的「建立」按鈕,然後他會出現程式碼輸入視窗。

3、在「Sub test01()」和「End Sub」中間的區域,直接輸入「Cells.Hyperlinks.Delete」

4、如果是 Excel2007,輸入完成後,請直接點選巨集輸入畫面上方的綠色三角形或按下 F5,直接執行巨集,然後關閉巨集輸入畫面,此時所有連結就會移除。

5、如果是 Excel2003,請按 ctrl + s 存檔後離開程式碼輸入視窗。

6、再度按下 Alt + F8 叫出巨集的視窗,點選「test01」,然後再按右邊的「執行」按鈕,就可以去除掉文件中所有的超連結了。



2011年1月18日 星期二

PHP讀取EXCEL檔案

在程式裏新增資料時,我們通常是提供表單來讓使用者填寫,但是有時是大量或是多筆的資料要建立,所以我們通常會提供一個匯入的功能,讓使 用者能將他們所建立的資料檔匯入。使用者最常使用的是 excel 檔,但是php內建只有提供 csv 檔的解析,所以我們就得跟使用者解釋如何把 excel 存成 csv ,這個有時挺有難度的。
經過了重重的打擊,我決來好好找一個工具,看能不能直接解析 excel 檔。
透過 google 我找到了 phpExcelReader 這個專案
下載後,在使用上有一些問題
Q1、直接執行後,會有以下的錯誤:
Warning: require_once(Spreadsheet/Excel/Reader/OLERead.php) [function.require-once]: failed to open stream: No such file or directory in /home/xxxxx/public_html/test/phpExcelReader/Excel/reader.php on line 31
Fatal error: require_once() [function.require]: Failed opening required ‘Spreadsheet/Excel/Reader/OLERead.php’ (include_path=’.:/usr/lib/php:/usr/local/lib/php’) in /home/xxxxx/public_html/test/phpExcelReader/Excel/reader.php on line 31
解決的方式如下:
編輯 Excel/reader.php 這個檔,把 31行的 require_once ‘Spreadsheet/Excel/Reader/OLERead.php’; 改成 require_once ‘Excel/oleread.inc’;
Q2、接著出現以下錯誤訊息:
Fatal error: Out of memory (allocated 46137344) (tried to allocate 45613057 bytes) in /home/kirin/public_html/test/phpExcelReader/Excel/oleread.inc on line 172
解決的方法:
這是因為他附的excel範例檔怪怪的,你上傳自己的excel檔,然後在 example.php 裏,找到$data->read(’jxlrwtest.xls’); 這一行,把 jxlrwtest.xls 改成你上傳的檔案,就可以正常顯示了。
Q3、然後,我發現中文沒辦法正常顯示
解決方法:
在 example.php 裏的第12行 $data->setOutputEncoding(’CP1251′);,把CP1251 改成 UTF-8 就可以正常秀出中文了
然後,似乎就一切正常了。
這裏是我修改後的檔案,我打包成 tar ball,有需要的人請享用
phpexcelreader
●參考資料
1、http://sourceforge.net/projects/phpexcelreader
2、http://www.xml.lt/Blog/2007/12/14/Reading+Excel+files+with+PHP
3、http://blog.roodo.com/jaceju/archives/4654041.html
4、http://vrypan.net/log/2004/11/10/parsing-xls-files-with-php/

Excel: 引用其他資料表的資料

●引用其他資料表的資料
用法:’資料表名稱’!$欄名$列名
例:引用「明細表」的第 E 欄 第 10 列–>’明細表’!$E$10