作者icene (kkk)
看板Visual_Basic
標題Re: [VBA ] 如何按鍵自動另存新檔且自動更改檔名
時間Wed Nov 14 21:23:11 2007
像這樣呢
Private Sub CommandButton1_Click()
Dim fs, f, f1, fc, s
Set fs = CreateObject("Scripting.FileSystemObject")
Set f = fs.GetFolder(ActiveWorkbook.Path)
Set fc = f.Files
date_string = Application.Text(Now(), "emmdd")
num = 1
For Each f1 In fc
If f1.Name Like "*" & date_string & "*" Then
num = num + 1
End If
Next
MsgBox date_string & "_" & num
End Sub
※ 引述《cyrenaic (公寓春光)》之銘言:
: 想請教一個問題
: 如果想要讓檔案按一建自動存檔,且如有相同檔名時,會自動編號~
: 這樣子的應該如何編寫
: 以下是初步寫出來東西
: Sub FirstSave()
: Dim Filepath As String
: COName = Sheets("報價單").Range("C5") '公司名稱
: '以下為目前的日期
: Y = Year(Date)
: M = Month(Date)
: D = Day(Date)
: For i = 1 To 9
: If M = i Then
: M = "0" & i
: End If
: Next
: For i = 1 To 9
: If D = i Then
: D = "0" & i
: End If
: Next
: recordday = Y - 1911 & M & D '從西元轉換成民國
: savename = COName & recordday '儲存的檔名
: Filepath = "D:\" & COName & "\" & savename '儲存的路徑
: ActiveWorkbook.SaveAs Filename:=Filepath
: End Sub
: 如果今天已經有儲存了一筆 "公司名稱961114" 的檔案
: 那如何把今天第二次存檔的資料自動轉換成 "公司名稱961114-2"
: 請大大們賜教
: 謝謝~
: ※ 編輯: cyrenaic 來自: 218.172.111.6 (11/14 09:21)
: 推 Marty:用FileExists來判斷是否已經有這個檔案... 11/14 10:40
: 推 Marty:還有你的日期轉換建議用Format()..可以簡化不少程式碼.. 11/14 10:48
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.217.222.228
推 ice0514:這樣如果中途程式有結束的話...感覺用fileexist可能比較周 11/20 16:25
→ ice0514:全一點吧..? 11/20 16:25