看板 Visual_Basic 關於我們 聯絡資訊
像這樣呢 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