Microsoft 製品に組み込まれている Visual Basic の実装。
了解致しました。有り難うございます。
このブラウザーはサポートされなくなりました。
Microsoft Edge にアップグレードすると、最新の機能、セキュリティ更新プログラム、およびテクニカル サポートを利用できます。
以下のプロシージャをステップで実行すると開いたブックの名前を変更して保存出来、変更したブックをそのまま編集出来るが
このブックを開くとプロシージャが自動実行する。その時、開いたブックの名前を変更して保存出来るが、変更前のブック名のブックが
アクティブで開いてしまう。(2つのブックが開いた状態になる)変更前のブック名のブックが開かない様にする方法が知りたい。
Dim 現在のファイルパス As String
Dim 現在のファイル名 As String
Dim 変更後のファイル名 As String
Dim 現在のファイル拡張子の文字 As String
'ファイル名を変更して保存する
Private Sub Workbook_Open()
現在のファイル名 = ActiveWorkbook.Name
現在のファイルパス = ActiveWorkbook.Path
現在のファイル拡張子の文字 = Mid(現在のファイル名, (InStr(現在のファイル名, ".")))
現在のファイル名 = Replace(現在のファイル名, 現在のファイル拡張子の文字, "")
変更後のファイル名 = InputBox("新規作成するファイル名を入力してください", "ファイル名変更", 現在のファイル名)
If Dir(現在のファイルパス & "" & 変更後のファイル名 & 現在のファイル拡張子の文字) = "" Then 'ファイルがない時
If 変更後のファイル名 <> "" Then
ChDir 現在のファイルパス
ActiveWorkbook.SaveAs Filename:=現在のファイルパス & "" & 変更後のファイル名 & 現在のファイル拡張子の文字
End If
End If
Microsoft 製品に組み込まれている Visual Basic の実装。
ロックされた質問。 この質問は、Microsoft サポート コミュニティから移行されました。 役に立つかどうかに投票することはできますが、コメントの追加、質問への返信やフォローはできません。
了解致しました。有り難うございます。
中嶋NQ さん、こんにちは。
マイクロソフト コミュニティへの投稿、ありがとうございます。
プロシージャを自動実行させた時に変更前のファイルが開かないようにしたいのですね。
せっかくこちらに投稿していただいたのですが、今回の質問は開発者向けの MSDN フォーラムに VBA 専用フォーラムがありますので、そちらでアドバイスを集めてみると良いと思います。
◇MSDN > Visual Basic for Application(VBA)
よろしければご活用ください。