Board logo

標題: [發問] 關閉檔案的語法 [打印本頁]

作者: PJChen    時間: 2012-4-4 12:07     標題: 關閉檔案的語法

大大們,請指教存檔的語法如下:
1) 以下檔案需要存為PO_Report.xlsx後關閉,不知有沒有其它的寫法?
ActiveWorkbook.SaveAs "P:\Interim\PO_Report.xlsx"
    Workbooks("P:\Interim\PO_Report.xlsx").Close True

如果檔案執行完指令後不需要存檔即要它強制關閉又是怎麼寫法?
作者: GBKEE    時間: 2012-4-4 12:46

回復 1# PJChen
Workbooks("P:\Interim\PO_Report.xlsx").Close False  
VBA的說明 :
套用至 Workbook 物件時用 Close 方法。
關閉物件。
expression.Close(SaveChanges, Filename, RouteWorkbook)
expression     必選。該運算或會傳回上述其中一個物件。
SaveChanges     選擇性的 Variant。如果活頁簿未發生變更,則忽略這個引數。如果活頁簿有變更、並且出現在其他開啟的視窗中,則忽略這個引數。如果活頁簿有變更,但沒有顯示在其他任何開啟的視窗中,則此引數將指定是否應儲存變更,如下表所示。
值 作業
True 將改變儲存到活頁簿。如果該活頁簿尚未命名,則使用 FileName 所指定的名稱。如果省略 FileName,則要求使用者輸入檔案名稱。
False 不將改變儲存到此檔案。
省略 顯示對話方塊,要求使用者決定是否儲存所作的變更。
FileName     選擇性的 Variant。以此檔案名稱儲存所作的變更。
RouteWorkbook     選擇性的 Variant。如果指定活頁簿不需要傳輸給下一個收件者 (沒有傳輸名單或已經傳輸),則忽略該引數。否則,Microsoft Excel 將按照下列表格所示處理傳輸工作簿。
作者: PJChen    時間: 2012-4-4 15:12

回復 2# GBKEE


感謝!強制關閉檔案一試ok.
請問先存成PO_Report.xlsx再關閉檔案,這二行有沒有合併的寫法?
ActiveWorkbook.SaveAs ":\Interim\PO_Report.xlsx"
Workbooks(":\Interim\PO_Report.xlsx").Close True
作者: GBKEE    時間: 2012-4-4 15:46

回復 3# PJChen
  1. Option Explicit
  2. Sub Ex()
  3.    With ActiveWorkbook   '作用中的活頁簿
  4.     .SaveAs "P:\Interim\PO_Report.xlsx"
  5.     .Close True
  6.    End With
  7. End Sub
  8. Sub Ex1()
  9.   With Workbooks("指定.xlsx")  '指定的活頁簿
  10.     .SaveAs "P:\Interim\PO_Report.xlsx"
  11.     .Close True
  12.   End With
  13. End Sub
複製代碼

作者: PJChen    時間: 2012-4-4 17:34

回復 4# GBKEE

謝謝您的指導
作者: c_c_lai    時間: 2012-4-5 12:32

請教一下:
        .SaveAs "P:\Interim\PO_Report.xlsx"
        .Close True
為何不加 =  字元呢? 如
        .SaveAs = "P:\Interim\PO_Report.xlsx"
        .Close = True
作者: GBKEE    時間: 2012-4-5 12:57

回復 6# c_c_lai
SaveAs ,Close  都是VBA的方法, 屬性才須用 = 來賦予屬性的值 , 請多多看看語法 及說明的範例.會進步的




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