Excelで作ったりWordで作ったりしてるけど
A4 1ページ完結(原則)の報告書なんだが、
ファイル整理含めてなかなか難しい。
今はファイル名に西暦年月日+"_"+日本語件名という形で保存してる。
で、文書にはヘッダー部分にファイル名を表示するように
{FILENAME ¥*MERGEFORMAT }を入れている。
こうすると、いったん文書を作っておいて(あるいはひな型を加工して)
ファイル名を付けて保存した上で、
再度開きなおして、フィールド更新をして、また上書き保存と2度手間となる。
報告書なんだから、日付やタイトルはあるので
これをそのままファイル名として保存すればよくね?というのが今回の趣旨。
ヘッダーにファイル名を入れるマクロはあったけど
Sub ヘッダーにファイル名を挿入するマクロ()
With ActiveDocument.Sections(1).Headers(wdHeaderFooterPrimary)
'ファイル名(フィールドで入力)
.Range.Fields.Add Range:=.Range, Type:=wdFieldFileName
'文字列の入力
.Range.InsertBefore Text:="ファイル名:"
'左揃え
.Range.ParagraphFormat.Alignment = wdAlignParagraphLeft
'下線
.Range.Underline = wdUnderlineSingle
End With
End Sub
これはもういい(あとで使えるかも)。
やりたいことに使えるマクロを探してみて、あった。
Sub 選択した文字列の名前のファイルを保存()
Dim txt As String
txt = Selection.Text
With Application.FileDialog(msoFileDialogSaveAs)
.InitialFileName = txt 'ファイル名の設定
If .Show = False Then
Exit Sub 'キャンセル
Else
.Execute '保存
End If
End With
End Sub
でも、もっと簡単に文書中の特定位置の文字列でやりたい。
しかも日付は作成日でいい。←システム日付をくっつければ?
もうちょい調べてみよう。
やれるかどうかはわからない。調べてる最中。