返回列表 上一主題 發帖

有關另存新檔問題..

有關另存新檔問題..

請問各位版大如範例..
我要另存新檔而檔名會自動用儲存格B1與B3儲存格內容作為檔名
指定路徑為D槽 001.rar (6.48 KB)
不知VBA要如何寫請各位版大指導謝謝...

回復 10# GBKEE


    感謝  GBKEE 版大指教, Object相關一直都是小弟我比較弱的塊,還希望  版大能不吝指正並提點,因為說實在的相關教材實在有限。

TOP

回復 13# gca78000


    要點選LISTBOX1的日期後再按按鈕
學海無涯_不恥下問

TOP

回復 12# gca78000


    MyDate = ListBox1.Text

TOP

回復 11# Hsieh


    謝謝大大指導附件我還無法下載
但依程式碼卻會出錯

TOP

本帖最後由 Hsieh 於 2010-6-7 18:13 編輯

我的看法樓主似乎是想讓工作表另存成XLS檔案
新增一自訂表單,表單中設置一個清單方塊及一個按鈕
表單模組程式
  1. Private Sub CommandButton1_Click()
  2. Dim MyDate As String
  3. MyDate = ListBox1.Text
  4. ActiveSheet.Copy
  5. ActiveWorkbook.SaveAs "D:\" & ActiveSheet.[B2] & MyDate & ".xls"
  6. End Sub

  7. Private Sub UserForm_Initialize()
  8. With ActiveSheet
  9. For Each a In .Range(.[B3], .[B65536].End(xlUp))
  10.    ListBox1.AddItem a.Text
  11. Next
  12. End With
  13. End Sub
複製代碼
一般模組程式碼
  1. Sub OpenForm() '快速鍵Ctrl+m
  2. UserForm1.Show
  3. End Sub
複製代碼
如附件 001.rar (12.96 KB)
學海無涯_不恥下問

TOP

本帖最後由 GBKEE 於 2010-6-7 16:30 編輯

回復 7# victorl
直接將檔案複製即可 不必開開關關
  1. Sub Ex()
  2. Dim D
  3. Set D = CreateObject("Scripting.FileSystemObject")
  4. ActiveWorkbook.Save
  5. D.CopyFile ActiveWorkbook.FullName, "D:\" & Range("B1") & Range("B3") & ".xls"
  6. End Sub
複製代碼

TOP

回復 8# gca78000


    再請問大大一下.
如另存新檔後要把內的 vba程式碼也消除要如何寫
請指導謝謝...

TOP

回復 7# victorl


    謝謝大大指導已經可以..小弟受益匪淺.
再請問一下如儲存格B3到B33要自動秀出日期表單讓我可以挑選要如何寫..
請指導謝謝

TOP

請問你是想要另存新檔再開啟原檔案嗎?
請參考
    Orig = ThisWorkbook.Path & "\" & ThisWorkbook.Name '取得原檔案路徑及名稱
    ActiveWorkbook.SaveAs Filename:="D:\" & Range("B1").Value & Range("B3").Value & ".xls" ' 依要求B1&B3內容另存新檔
    newfile = ActiveWorkbook.Name
    Workbooks.Open Filename:=Orig ' 開啟原檔案
    Workbooks(newfile).Close ' 關閉另存之檔案
註. 另存新檔之前的變更不會存在於原檔案喔

TOP

        靜思自在 : 謊言像一朵盛開的鮮花,外表美麗,生命短暫。
返回列表 上一主題