vba 今日の日付を自動的にブック名に | |
---|---|
[195756] vba 今日の日付を自動的にブック名に- ■親トピック/記事引用/メール受信=OFF■ □投稿者/ chabin -(2023/06/04(21:02)) □U R L/ いつもお世話になります。 例えば A1 =TEXT(C1,"MMDD") C1 =TODAY() 今日のA1の値が、0604 翌日のA1の値は、0605 となります。 ご教授いただきたいのは、まず「0604」がファイル名になり 日付が変わり「0605」になれば自動的にファイル名も変わるコードを ご指導頂けませんか。 |
[195757] Re[1]: vba 今日の日付を自動的にブック名に- ■記事引用/メール受信=OFF■ □投稿者/ MK -(2023/06/05(07:51)) □U R L/ SaveAsメソッド を使うと、保存前のブックは閉じて保存後の ブックが開いた状態になります。 なので、保存前のフルパスのブックをKillステートメント で削除してやればいいです。 この記事にはVBAのコードが含まれています。 緑の太文字→注釈 茶色の太文字→条件分岐 赤の太文字→ループ 青の太文字→その他 |
[195758] Re[2]: vba 今日の日付を自動的にブック名に- ■記事引用/メール受信=OFF■ □投稿者/ MK -(2023/06/05(08:07)) □U R L/ ThisWorkbook.FullName で自ブックのフルパスを取得出来ます。 ThisWorkbook.Path で自ブックが格納されているフォルダのパス を取得出来ます。 Date で本日の日付けを取得出来ます。 Format関数で日付の体裁を整えます。 これはワークシート関数のTEXTと使い方 は同じです。 Format(Date,"mmdd") というようなかんじです。 フォルダパス & ブックのベース名 & "." & 拡張子 で保存するブックのパスを生成します。 保存したら Kill 削除するブックのフルパス でファイルを削除します。 この記事にはVBAのコードが含まれています。 緑の太文字→注釈 茶色の太文字→条件分岐 赤の太文字→ループ 青の太文字→その他 |
[195759] Re[3]: vba 今日の日付を自動的にブック名に- ■記事引用/メール受信=OFF■ □投稿者/ chabin -(2023/06/05(11:35)) □U R L/ 中々うまくできません 具体的にご指導いただけないでしょうか ++++++++++++++++++++ OS ⇒OTHER Version⇒OTHER ++++++++++++++++++++ |
[195760] Re[4]: vba 今日の日付を自動的にブック名に- ■記事引用/メール受信=OFF■ □投稿者/ MK -(2023/06/05(14:17)) □U R L/ 一例です。 Sub test() Dim wb As Workbook Dim newwb As Workbook Dim wbpath As String Dim newwbmei As String Dim newwbpath As String Dim fol As String '変数wbへブックを格納 Set wb = ThisWorkbook 'ブックのフルパス取得 wbpath = wb.FullName 'ブックが格納されているフォルダのパスを取得/FSOを使う方法もあり fol = Left(wbpath, InStrRev(wbpath, "\")) '今日の日付のブック名生成 newwbmei = Format(Now, "mmdd") & ".xlsm" '今日の日付のブックのフルパス生成 newwbpath = fol & newwbmei '今日の日付のブックが既に存在したら/FSOを使う方法もあり If Dir(newwbpath) <> "" Then MsgBox newwbpath & vbCrLf & "は既に存在します" '存在しなかったら Else 今日の日付のブックとしてブックを保存 wb.SaveAs newwbpath '以前の日付のブックを削除/FSOを使う方法もあり Kill wbpath End If '変数の解放 Set wb = Nothing End Sub この記事にはVBAのコードが含まれています。 緑の太文字→注釈 茶色の太文字→条件分岐 赤の太文字→ループ 青の太文字→その他 |
[195761] Re[5]: vba 今日の日付を自動的にブック名に- ■記事引用/メール受信=OFF■ □投稿者/ MK -(2023/06/05(14:23)) □U R L/ なお、自ブックのではなく他のブックのブック名変更はまたコードが違ってきます。 コードはもっと簡単になります。 |
[195762] Re[6]: vba 今日の日付を自動的にブック名に- ■ / 記事引用/メール受信=OFF■ □投稿者/ chabin -(2023/06/05(14:45)) □U R L/ ありがとうございました。 うまくできました。 ただ下記に、「'」 なかっつたです。 すこし苦労しましした。 今日の日付のブックとしてブックを保存 wb.SaveAs newwbpath この記事にはVBAのコードが含まれています。 緑の太文字→注釈 茶色の太文字→条件分岐 赤の太文字→ループ 青の太文字→その他 ++++++++++++++++++++ OS ⇒OTHER Version⇒OTHER ++++++++++++++++++++ |
[195763] Re[7]: vba 今日の日付を自動的にブック名に- ■記事引用/メール受信=OFF■ □投稿者/ MK -(2023/06/05(15:47)) □U R L/ Save SaveAs SaveCopyAs の簡単な説明です。 A.Save ↓ 'ブックAを上書き保存 A.SaveAs B ↓ ’ブックAをブックBとして保存 →ブックAは最終保存時点での内容そのままで閉じられる→ブックAは閉じられているので削除することができる ブックBは現時点での内容で保存される(ブックBは開いたまま) A.SaveCopyAs B ↓ 'ブックAの現時点の内容でブックBが保存される →ブックBは開かれない ブックAは現時点の内容で開いたまま→なのでブックAはこの時点では削除することができない FileSystemObjectを使えば、閉じている他のファイル(ブック含む)の名前を変更、というkとが 出来ます。 興味があったら勉強してみてください。 この記事にはVBAのコードが含まれています。 緑の太文字→注釈 茶色の太文字→条件分岐 赤の太文字→ループ 青の太文字→その他 |
[195764] Re[8]: vba 今日の日付を自動的にブック名に- ■記事引用/メール受信=OFF■ □投稿者/ chabin -(2023/06/06(05:50)) □U R L/ 本当にありがとうございます。 頑張っていますが中々うまくゆきません。 ++++++++++++++++++++ OS ⇒OTHER Version⇒OTHER ++++++++++++++++++++ |
[195765] Re[9]: vba 今日の日付を自動的にブック名に- ■記事引用/メール受信=OFF■ □投稿者/ MK -(2023/06/06(08:34)) □U R L/ >頑張っていますが中々うまくゆきません。 まだ完成してないということでしょうか? どこで躓いてますか? |
[195766] Re[10]: vba 今日の日付を自動的にブック名に- ■記事引用/メール受信=OFF■ □投稿者/ chabin -(2023/06/08(08:13)) □U R L/ ごめんなさい 誤解をを与えたようです 「 頑張っていますが中々うまくゆきません。」 意味は私自身のことで頑張っても中々レベルアップしないということです ご指導のコードはすごく重宝しており感謝やしています ++++++++++++++++++++ OS ⇒OTHER Version⇒OTHER ++++++++++++++++++++ |
このトピックに書きこむ |
---|