私が作業しているファイルを保存する小さなスクリプトを作成しようとしていますが、その際にバージョン番号を増やしてください。私は普通のSub
から呼び出すとうまくいくスクリプトを持っていますが、BeforeSave
イベントに入れたら、アプリケーション全体がクラッシュします。バージョンExcelファイルを保存する
私はこれをThisWorkbook
バージョンのワークブックのオブジェクトに配置しました。 [保存開始したユーザーの前に(あなたの現在の設定で無限ループを入力するつもりだ
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim fso
Dim nme As String, rootDir As String
Dim ver As Integer
Set fso = CreateObject("Scripting.FileSystemObject")
With ThisWorkbook
nme = fso.GetBaseName(.Name)
rootDir = fso.getfolder(.Path)
On Error Resume Next
ver = CInt(Trim(Right(nme, Len(nme) - InStr(1, nme, " v", vbTextCompare) - 1))) + 1
On Error GoTo 0
nme = "GNOC into CPT DE" ' Trim(Left(nme, InStr(1, nme, " v", vbTextCompare)))
.SaveAs Filename:=rootDir & "\" & nme & " v" & Format(ver, "000"), FileFormat:=xlOpenXMLWorkbookMacroEnabled
End With
End Sub
がありますか?あなたはなぜサブファイルに 'wb.saveas filename:= blah blah'を実行できませんか? – findwindow