作者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
1F:推 ice0514:这样如果中途程式有结束的话...感觉用fileexist可能比较周 11/20 16:25
2F:→ ice0514:全一点吧..? 11/20 16:25