標題:
[發問]
如何單獨把excel單一sheet做輸出
[打印本頁]
作者:
atuan207
時間:
2011-4-30 15:32
標題:
如何單獨把excel單一sheet做輸出
本帖最後由 atuan207 於 2011-4-30 15:33 編輯
又有問題想請教各位板上的大大了
就像上次問的,我在sheet2、sheet3建立了一個資料庫,
把資料比對後送回sheet1
sheet1最後成為要的輸出的內容
所以現在我想要單獨把sheet1做輸出另存該怎麼做
目前我找到的方式如下:
Sub output()
Application.DisplayAlerts = False
Sheets("sheet1").UsedRange.Value = Sheets("sheet1").UsedRange.Value
ActiveWorkbook.SaveAs Filename:="C:\Users" & Replace(ActiveWorkbook.Name, "xlsm", "xlsx"), FileFormat:= _
xlOpenXMLWorkbook, CreateBackup:=False
Application.DisplayAlerts = ture
End Sub
但這依然會把sheet2、sheet3的資料一起另存
想請問一下大大該如何做比較好???
作者:
chin15
時間:
2011-4-30 20:13
你指定儲存活頁簿,當然儲存的就是整個活頁簿
指定儲存單獨工作表像這樣:
Sheets("Sheet1").Copy
ActiveWorkbook.SaveAs "D:\abc.xls"
後面可再延伸是否把儲存好的新活頁簿關閉
作者:
atuan207
時間:
2011-5-1 22:35
本帖最後由 atuan207 於 2011-5-1 22:40 編輯
感謝chin15大大的指導
確實之前範圍設定的太大了
目前是改成這樣
Sheets("Datamap").Copy
ActiveWorkbook.SaveAs Filename:="D:\aaa.xls", FileFormat:= _
xlOpenXMLWorkbook, CreateBackup:=False
ActiveWorkbook.Close
可以執行
感恩
作者:
atuan207
時間:
2011-5-20 12:09
想再請問一下,因為我的原始excel檔是2007的
可是另存檔副檔名我想用2003的.xls
(我知道在正常存檔時按另存新檔裡面有個97-2003活頁簿)
(而我只要單獨excel報表中的sheet1,所以我做了一個按鈕做單獨的另存)
另存的檔案在開啟時都會出現"格式不符,請確認檔案是否損毀..."的字樣
但是按了"是"點選項開啟又是正常的
這樣有什麼辦法可以解決呢????
作者:
GBKEE
時間:
2011-5-20 13:42
回復
4#
atuan207
要單獨excel報表中的sheet1,所以我做了一個按鈕做單獨的另存
可否看看
按鈕
這段程式碼!
作者:
atuan207
時間:
2011-5-20 13:55
回復
5#
GBKEE
好的,
我是做在button上
程式碼如下
Private Sub CoB另存_Click()
Sheets("Sheet1").Copy
ActiveWorkbook.SaveAs Filename:="D:\表單.xls", FileFormat:= _
xlOpenXMLWorkbook, CreateBackup:=False
ActiveWorkbook.Close
End Sub
複製代碼
作者:
GBKEE
時間:
2011-5-20 14:31
回復
6#
atuan207
我沒有 2007 猜想是, FileFormat:=xlOpenXMLWorkbook 是存為 2007檔案的參數, 與副檔名" xls" 是2003 起衝突.
不要用FileFormat參數應可行.
Private Sub CoB另存_Click()
Sheets(1).Copy
ActiveWorkbook.SaveAs Filename:="D:\表單.xls"
ActiveWorkbook.Close
End Sub
複製代碼
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)