
【やりたい事2つ】
以下のマクロは、原本ファイルを開き、別名で保存するものです
保存をする際に、既に同じ名前があれば
●●●メッセージ(同じ名前のファイルがあります) を表示させたいです●●●
また
その後
上書き
上書きしない
を選択しますが
上書きしないを選択すると
wb.SaveAs fileName がデバックとなります
●●●これをデバックとならずに、上書きせずに、終了となるようにしたいです●●●
【条件】
A7セルには あいうえお と入力しています
既にあるファイルは あいうえお.xlsx です
●●●最後に、以下のコードで必要のないコードや、省略可できる所があったら教えて下さい●●●
【コード。動きます】
Sub 原本ファイルより名前を変更()
Dim wb As Workbook
fileName = "C:\Users\2020\OneDrive\マクロ\" & Worksheets("転記元").Range("A7") & ".xlsx"
Workbooks.Open "C:\Users\2020\OneDrive\マクロ\原本ファイル\原本ファイル.xlsx"
Set wb = Workbooks("原本ファイル.xlsx")
wb.SaveAs fileName
wb.Close saveChanges:=False
End Sub
No.3ベストアンサー
- 回答日時:
No2です。
単純にファイルをコピーするだけなので、以下の方法でも可能です。
Sub 原本ファイルより名前を変更2()
Dim FSO As Object
Dim Filename As String
Dim BaseFile As String
Filename = "C:\Users\2020\OneDrive\マクロ\" & Worksheets("転記元").Range("A7") & ".xlsx"
If Dir(Filename) <> "" Then
resp = MsgBox("この場所に'" & Filename & "'という名前のファイルが既にあります。置き換えますか?", vbYesNo)
If resp = vbNo Then Exit Sub
End If
Set FSO = CreateObject("Scripting.FileSystemObject")
BaseFile = "C:\Users\2020\OneDrive\マクロ\原本ファイル\原本ファイル.xlsx"
FSO.copyfile BaseFile, Filename
End Sub
No.2
- 回答日時:
以下のようにしてください。
Sub 原本ファイルより名前を変更()
Dim wb As Workbook
Filename = "C:\Users\2020\OneDrive\マクロ\" & Worksheets("転記元").Range("A7") & ".xlsx"
If Dir(Filename) <> "" Then
resp = MsgBox("この場所に'" & Filename & "'という名前のファイルが既にあります。置き換えますか?", vbYesNo)
If resp = vbNo Then Exit Sub
End If
Workbooks.Open "C:\Users\2020\OneDrive\マクロ\原本ファイル\原本ファイル.xlsx"
Set wb = Workbooks("原本ファイル.xlsx")
Application.DisplayAlerts = False
wb.SaveAs Filename
wb.Close saveChanges:=False
Application.DisplayAlerts = True
End Sub
No.1
- 回答日時:
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
VBAでPDFを作成する際、同じ名前のデータがすでにある時の対処法を教えてください。
Microsoft ASP
-
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
マクロボタンを押すと、ファイル名を“日付(年月日)_文字.xlsx”にして指定ファイルに保存したいの
Excel(エクセル)
-
-
4
【マクロ】同じファイル名がある場合メッセージを出すor指定の文字でしか名前を付けられないようにする
Excel(エクセル)
-
5
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
6
エクセルVBAでセルに入力したパスでブックを開く
Excel(エクセル)
-
7
【VBA】マクロの入ったファイルと同じフォルダに,出力したファイルを保存するコードについて
Visual Basic(VBA)
-
8
EXCEL VBA 指定したファイルが存在しない場合メッセージボックスを表示させる
Access(アクセス)
-
9
実行時エラー 438になった時の対処法を教えて下さい。
Visual Basic(VBA)
-
10
エクセルのラベルの値(文字列)を垂直方向で中央揃えにするには?
Excel(エクセル)
-
11
エクセルVBAで、MsgBox やInputBox は、画面の中央以外に表示させたい。
Excel(エクセル)
-
12
【マクロ】エラーが発生⇒実行時エラー58既に同名のファイルが存在
Excel(エクセル)
-
13
マクロ VBA ファイル名を連番でつけたいのですが
Access(アクセス)
-
14
VBAでシートコピー後、シート名が重複している時の処理
Access(アクセス)
-
15
VBAを使って、上書き保存の再確認メッセージを出したい。
Visual Basic(VBA)
-
16
EXCELで同一名のファイルがある場合の「置き換えますか?」メッセージを出さないようにする。
Excel(エクセル)
-
17
メッセージボックスのOKボタンをVBAでクリックさせたい
Visual Basic(VBA)
-
18
EXCEL VBA セルに既に入力されている文字に文字を追加する
Excel(エクセル)
-
19
マクロの「SaveAs」でエラーが出るのを解消したいです(再)
Visual Basic(VBA)
-
20
特定のPCだけ動作しないVBAマクロがあります。その理由は?
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【マクロ】変数に入れるコード...
-
フォルダ内のexcelファイルを順...
-
【マクロ】EXCELで読込したCSV...
-
ACCESSのマクロを自動で実行さ...
-
ACCESS VBAでファイルを開くダ...
-
accessフォルダを移動したらフ...
-
VBAで開いているファイルの...
-
Excelのマクロでファイルを開く...
-
Accessのaccdbファイルを起動で...
-
【VBA】フォルダ内のファイル全...
-
EXCELマクロを無効にして開く方法
-
ISOファイルとMDSファイル
-
差し込み印刷の元データファイ...
-
ccdファイルはどのようにして使...
-
イーファンビューでwebpファイ...
-
OfficeオープンXMLドキュメント
-
fgets関数のEOFの扱い方について
-
Excel 2003 のエラーメッセージ
-
Wordの文章をExcelに内容ごとに...
-
USBメモリー上の MP4 ファイル...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【マクロ】変数に入れるコード...
-
【マクロ】EXCELで読込したCSV...
-
EXCEL VBA 指定したファイルが...
-
【マクロ】名前を保存する際に...
-
フォルダ内のexcelファイルを順...
-
エクセルマクロで不特定なファ...
-
【Excel VBA】ファイル名が一...
-
ファイルを開かずにマクロを実行
-
エクセル 複数ファイルの一括...
-
accessフォルダを移動したらフ...
-
ファイルの保存場所を変えたら...
-
データ参照先が別ファイルの場...
-
VBAでワークブックの名前を変数...
-
EXCELマクロを無効にして開く方法
-
フォルダ内のブック全部にパス...
-
エクセル(マクロ)のファイル...
-
エクセルファイルを開く時、関...
-
秀丸:あらかじめ設定した複数...
-
Excelのマクロでファイルを開く...
-
EXCEL VBAで作成した ファイル...
おすすめ情報