Sub Auto_Open()
Dim OpenFileName As String
Dim wb As Object
rc = MsgBox("体温表を開いている場合は起動できません。" & vbCrLf & "体温表は全て閉じていますか?", vbYesNo + vbQuestion, "バグ差し替え")
If rc = vbYes Then
MsgBox "バグのある体温表を選択して下さい。", vbInformation, "バグ差し替え"
ChDrive "E"
ChDir "E:\コスモス2006リンクフォルダ\体温表"
OpenFileName = Application.GetOpenFilename("Microsoft Excelブック,*.xlsm?") 'ここでバグファイルを選択させる.ア行~ワ行というフォルダがある。
On Error Resume Next 'エラーがあっても続行する
Application.ScreenUpdating = False
Application.DisplayAlerts = False
'ーーーーーーーーーここのマクロをつくってほしいーーーーーーーーー
'①選択したファイルを“E:\コスモス2006リンクフォルダ\体温表\2016\※バグあり分”に移動させる。ただし2016は現在の年とする。
'②“E:\コスモス2006リンクフォルダ\体温表\2016\※原本\新体温表色あり”をコピーし、選択したファイルが置いてあったフォルダ内に貼り付け、選択したファイル名と同一に名前にリネームする。
'③選択して移動させたファイルの名前に、右記を追記&リネームする。“バグありn”※nは複数ある場合に数字2~を追記。
'ーーーーーーーーーーーーーーー以上ーーーーーーーーーーーーーーー
'④双方を開いて、各シートのテキストをコピー/ペースト、終了とする。
'⑤シートは説明書とする
Application.ScreenUpdating = True
Application.DisplayAlerts = True
If Err.Number <> 0 Then 'エラーがあったら実行する
MsgBox "体温表の選択に失敗しました。"
Exit Sub 'マクロの実行を終了する
End If
Else
MsgBox "処理を中断します。", vbCritical
End If
End Sub
何卒よろしくお願いします。
No.3ベストアンサー
- 回答日時:
No.1(kmeeさん)の回答にGoodをポッチったママチャリです。
と言っても放置するのは忍びないので、タダでできる範囲まで仕様を落として回答させて頂きます。
仕様を落とした点は、次の通りです。
要求仕様)重複する場合、連番を付加する。
実装仕様)重複の有無に関わらず、日時を付加してユニークにする。
それから、“バグありYYYYMMDD-HHMMSS”は、ファイル名の前に付けました。
(この方がファイルマネージャで見たときに便利?)
どうしても後ろにつけたい場合は、そのための命令もコメントとして記述しました。
必要に応じて、コメントを外してください。
'ーーーーーーーーーここのマクロをつくってほしいーーーーーーーーー
Dim MyPath As String, MyFile As Variant
MyPath = "E:\コスモス2006リンクフォルダ\体温表\" & Year(Now) & "\"
MyFile = Split(OpenFileName, "\", -1)
MyFile = MyFile(UBound(MyFile))
'↓ファイル名の前に日付を付ける場合は、こちらで↓
MyFile = "バグあり_" & Format(Now(), "yyyymmdd-hhmmss") & "_" & MyFile
'↓ファイル名の後ろに日付を付ける場合は、こちらで↓
'MyFile = Replace(MyFile, ".xlsm", "_バグあり(" & Format(Now(), "yyyymmdd-hhmmss") & ").xlsm")
Name OpenFileName As MyPath & "※バグあり分\" & MyFile
FileCopy MyPath & "※原本\新体温表色あり.xlsm", OpenFileName
'ーーーーーーーーーーーーーーー以上ーーーーーーーーーーーーーーー
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/06 17:46
- Visual Basic(VBA) エクセルのマクロについて教えてください。 7 2023/07/04 09:18
- Visual Basic(VBA) 複数のcsvファイルをExcelに一括変換したい 2 2023/03/03 12:44
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/07/03 09:11
- Excel(エクセル) フォルダ内のワードファイルをPDFに一括変換するVBA 3 2023/06/09 16:51
- Visual Basic(VBA) マクロVBA 1シートをまとめる 閉じ方 初心者 SOS! 1 2022/06/17 14:54
- Visual Basic(VBA) VBA 参照先で選んだファイルをコピーし、出力先に別名で保存したい 8 2022/05/13 20:37
- Visual Basic(VBA) 集めたシートのシート名を変更したい。 下記のコードでサブフォルダにあるファイルのSheet3を集めて 6 2022/08/23 10:38
- Visual Basic(VBA) VBAでoutlook365が起動しません。 4 2022/08/25 13:31
- Excel(エクセル) 2つのVBAを一緒にしたら機能しなくなりました(エクセル) 7 2022/06/02 12:41
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
コマンドプロンプトの「%1」と...
-
コマンドプロンプトで変数が数...
-
コマンドプロンプトでファイル...
-
【DOSバッチ開発】末尾のタブの...
-
VBScriptで特別な意味を持つ記...
-
ExcelVBAのDirでスペース含むフ...
-
[DOS] コピー先に同じファイル...
-
エクセルVBAを使用してJPGファ...
-
DOSのバッチ作成について‐FORの...
-
バッチファイルで、iniファイル...
-
VBA GetAttrについて教えてくだ...
-
AIX kshスクリプトのtar+compre...
-
コマンドでファイルコピーする...
-
ファイル名に ” を使うと エク...
-
バッチ処理で16進数でファイル...
-
【vbs】ファイル名の検索と該当...
-
.batでファイル名から抽出して...
-
access,vbaでフォルダ内のファ...
-
ftp処理でmove(移動)を行いたい
-
コマンドプロンプトのエラーに...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
コマンドプロンプトの「%1」と...
-
コマンドプロンプトでファイル...
-
バッチファイルで、iniファイル...
-
バッチコマンドでファイル名の...
-
コマンドプロンプトで変数が数...
-
[DOS] コピー先に同じファイル...
-
フォルダ内の更新日時が一番新...
-
ftp処理でmove(移動)を行いたい
-
ExcelVBAのDirでスペース含むフ...
-
.batでファイル名から抽出して...
-
DOSのバッチ作成について‐FORの...
-
access,vbaでフォルダ内のファ...
-
Windowsコマンドプロンプトで、...
-
【DOSバッチ開発】末尾のタブの...
-
word VBA ファイル名 保存
-
【vbs】ファイル名の検索と該当...
-
コマンドプロンプトまたはpower...
-
ファイル名を該当フォルダ内か...
-
バッチ処理で16進数でファイル...
-
スタートアップのファイルをバ...
おすすめ情報