Board logo

標題: [發問] 按自動調整欄寬,都會調整到"255欄寬",為什麼呢? [打印本頁]

作者: mhl9mhl9    時間: 2017-5-15 17:38     標題: 按自動調整欄寬,都會調整到"255欄寬",為什麼呢?

我一個工作簿有許多sheet,唯獨有一張sheet,雙擊欄編號右邊框線,或者選擇自動調整欄寬,甚至執行VB>[a:a].entirecolumn.autofit都把欄寬調整到255,不知什麼原因.
因為每欄某些列會有"*",我為了隔開2部分資料用"*",我懷疑"*"自動調整欄寬會變成255,所以把全部"*"改為"^^^",結果還是一樣,再把"^^^"改為"123"還是不能自動調整欄寬.
作者: mhl9mhl9    時間: 2017-5-16 02:38

我自己找到問題原因,暫且解決了做文件的困境,與大家交流一下:
現在問題是我執行巨集要usedrange的欄寬都autofit,這很平常,也常常會這樣做的.問題是巨集執行完欄寬并不改變,甚至欄寬會變成255?我懷疑是window的顯示問題,所以我先把zoom調到100,再執行原來的巨集,OK了!我現在做法是執行autofit語句前留下user原來的zoom值,vb把zoom調到100,再執行autofit語句,執行完再用VB把zoom調到user原來的值:
a=activewindow.zoom
activewindow.zoom=100
activesheet.usedrange.entircolumn.autofit
activewindow.zoom=a
我的理解與做法大家是不是認同呢?請多多指教
作者: mhl9mhl9    時間: 2017-5-16 02:53

回復 1# mhl9mhl9
順便提一提我最近碰到也屬於office的問題:
我做個較大型的文件,有一頁main sheet,資料量大,而且有諸多event,如果我停留在main sheet關閉文件,再開啟此文件,workbook_activate就不能自動執行!所以我在VB里設計關閉文件停留在某個簡單一些的sheet上,重新開啟文件,workbook_open和workbook_activate都正常自動執行了.
不知大家有沒有碰到過類似問題.




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)