こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

Vba質問の続きお願いします

ドキュメントに移動するからドキュメントはCドライブ直下ではないから動かないのですね、ではどこに移動すれば構文を変えず済むのでしょうか、Cドライブそのものに移動してもだめでした。usbからusbは問題なしの理由も教えて下さい。
また、バックスラッシュを入れると¥マークになりますどのようにすれば良いか教えてくださるようお願い致します。
初心者で申し訳ありません。

投稿日時 - 2019-02-23 08:17:56

QNo.9590643

困ってます

質問者が選んだベストアンサー

そのマクロが実行されるときに
もしカレントフォルダがC:¥以外になっていたとしても
"C:¥新規トレーニング.xlsm"
(※↑の¥は正しくは半角に読み替えてください。)
とすれば動作します。

なお、
ハードディスクのCドライブと
USBドライブのFドライブは
ドライブという意味では対等ですが
Cドライブに限って、
Cドライブの直下に直接ファイルを配置する場合
特別なセキュリティの制限を受けますので
通常は、
予めフォルダーを作成し、ファイルを配置する使い方をします。

投稿日時 - 2019-02-23 11:28:25

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(3)

ANo.3

そもそもコードを変更せずに済ませようとしていることが間違っています。
例えば私が試した環境の中にはデフォルトのカレントフォルダがC:¥Windows¥system32になっている環境もありました。
C:¥Windows¥system32は管理者権限でExcelを実行していない限りファイルを作成できません。
つまり相対指定の(Cドライブ)場合、実行のたびにどこにファイルがある前提なのか変わるということです。

>ドキュメントに移動するからドキュメントはCドライブ直下ではないから動かないのですね
移動の記述がないので移動しません。
移動の記述をしたならドライブ違いは問題になりません。

>usbは問題なしの理由も教えて下さい。
C以外のドライブのフォルダは、そのアプリから開かない限り、ルートフォルダがデフォルトで、通常はシステムドライブ(C:)以外はルートフォルダへ誰もが書き込める権限設定にドライブのフォーマット時に設定されているからです。

>Workbooks Open Filename:="F:新規トレーニング.xlsm
この部分を
Set WshShell = CreateObject("WScript.Shell")
strDocuments = WshShell.SpecialFolders("MyDocuments")
filename = "新規トレーニング.xlsm"
filepath = strDocuments & "\" filename
if dirs(filepath) = "" then
msgbox filename & "がDocumentsフォルダにありません"
exit sub
end if
Workbooks.open filename:=filepath
と変えて、新規トレーニング.xlsmをドキュメントフォルダにコピーしておいてください。

投稿日時 - 2019-02-23 13:01:09

ANo.1

https://okwave.jp/qa/q9589908.html
https://okwave.jp/qa/q9590390.html
の続きですね。
前の質問はほったらかしで変身もしないのはどういうことですか。
前の質問の返信に書けばいいことでしょう。質問をやり直す必要はありません。
それに、同じ内容で新しく質問するなら、前の質問は締め切るべきでしょう。

\ は¥になりますが、そのままコピペすればいいです。だだし、¥と入力する時は半角にして下さい。
ここは、半角の¥が\ になってしまうのです。
慣れている人なら、\ は半角¥の事だと分かります。
当たり前だと思っていたので、つい記述しませんでした。

ちなにみ、カレントフォルダは常に変化します。
エクセル起動直後は
C:\Users\ユーザー名\Documents
ファイルフォルダを指定しての読み込みや、保存をすれば、その場所に変化します。
フォルダを指定せずに読み込んだり、上書き保存をしても変化しません。
一定ではないので、フォルダの指定は必ず行って下さい。
指定方法は
https://okwave.jp/qa/q9589908.html
の私の回答です。

イミディエイトで
? curdir
と入力しEnter でカレントフォルダが出てきます。

投稿日時 - 2019-02-23 09:18:28

お礼

節操無く大変申し訳ありません、恥ずかしいかぎりです
ご指摘を含めて大変有難うございます。

投稿日時 - 2019-02-23 12:58:38

あなたにオススメの質問