馬鹿丸出しのソースコードwww
三つの値を参照しながら、タイトル+連番でテキトーにファイル名生成する。その際、マクロシート”以外”のステータスを受け継いで他のシートごとコピー・タイトル+連番保存するマクロを作ってみた。数字ルール規定作るまで気力ないからそこらは託す。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
Sub ファイル名に連番をつけて自動保存() Dim name As String Dim i As Long Dim j As Long name = Range("B1").Value If Range("B1").Value = "" Then MsgBox "B1セルが空白です。" Exit Sub End If i = Range("B2").Value If Range("B2").Value = "" Then MsgBox "B2セルが空白です。" Exit Sub End If j = Range("B3").Value If Range("B3").Value = "" Then MsgBox "B3セルが空白です。" Exit Sub End If ChDir ThisWorkbook.Path For i = i To j If Dir(name & i & ".xlsm") <> "" Then MsgBox name & i & ".xlsm" & "という同じ名前のファイルが同じディレクトリ" & ThisWorkbook.Path & "に存在するのでマクロを中断します。" Exit Sub End If ThisWorkbook.SaveCopyAs Filename:=name & i & ".xlsm" Workbooks.Open Filename:=name & i & ".xlsm" Workbooks(name & i & ".xlsm").Activate Worksheets("Sheet2").Activate Application.DisplayAlerts = False ActiveSheet.Delete ActiveWorkbook.Save Next End Sub |
シートコピーやっていくと、面倒なことにシートの調整とか必要になってくるから、生成シートを開いたままにしておくことにしたよ。たぶんこのマクロだと各ファイルのシートに調整が入るからな。アクティブにしたコピー分のマクロシートは削除し、他のシートはそれごとファイル上書きで保存するまでは達成。でもそのおかげで馬鹿丸出しのソースコードになった。
モルサァ…
<糸冬>