
私が自宅のPCで作成したExcelファイルを職場で他の人も使用します。自宅のパソコンでは問題なく動作していますが職場のPCではファイルの保存先がonedriveの個々にドキュメントフォルダに保存されてしまいます。以下の内容ですとエラーになってしまうと思われます。
どのように変更すれば良いのでしょうか。
Sub ●●()
' ●● Macro
' Workbooks("Book1.xlsx").Close savechanges:=False
Dim FilePath As String
FilePath = "C:\Users\non\OneDrive\ドキュメント"
Workbooks.Open FilePath & "\Book1.xlsx"
Workbooks("Book1.xlsx").Sheets(1).Range("A1:L60").Copy _
Workbooks("Book2.xlsm").Worksheets("sheet1").Range("A1")
Workbooks("Book1.xlsx").Close savechanges:=False
宜しくお願いします。
No.1ベストアンサー
- 回答日時:
こんばんは
どのように設定したいのか、ご質問文からは読み取れませんので、起こっている事象の説明のみになります。
>職場のPCではファイルの保存先がonedriveの個々にドキュメントフォルダ
>に保存されてしまいます。
ご提示のマクロでは「保存」の処理はしていません。
開くように指定したOneDriveのファイルを、そのまま閉じる処理かしていないので、
「保存されてしまいます。」というようなことはないはずです。
開くファイルのディレクトリとしては、
>FilePath = "C:\Users\non\OneDrive\ドキュメント"
として、個人のOneDriveを指定しています。
ただし、上記の「non」部分は個人のユーザー名なので、(会社のPC管理にもよりますが)通常は個人によって異なっているはずです。
他の人のPCには「non」というユーザが登録されているとは限りませんし、仮に存在したとしても、通常は別ユーザなので、アクセスできないようになっているはずと想像します。
また、質問者様の個人ユースのPCと職場のPCでも同じとは限りません。
もしも、開くファイルを共通で利用するという意味であるなら、各人がアクセス可能なファイルサーバ等にファイルを置いて、指定ディレクトリを固定でそちらのパスにしておけば宜しいのではないでしょうか?
早々の回答ありがとうございます。
当方ど素人のため説明が足らずすみません。
開くファイル自体は共通で使用はしないのですが開いたファイルの一部をコピーして貼り付けるファイルは共有します。
職場の労務管理ソフトから出力されたExcelファイルが自動的に各個人のワンドライブ内のドキュメントに保存されます。それをその場所のまま開いてコピペしたいのです。
伝わりますでしょうか。
No.3
- 回答日時:
横から失礼します
CreateObject("WScript.Shell").SpecialFoldersは
ログインユーザーの特殊フォルダーのフルパスが取得できるので
ドキュメントフォルダであれば
Dim wsh As Object
Set wsh = CreateObject("WScript.Shell")
FilePath = wsh.SpecialFolders("MyDocuments")
Set wsh = Nothing
で ローカルにOneDrive - Personalなどを設定していればOneDriveを含め取得できると思います
No.2
- 回答日時:
No1です。
>Excelファイルが自動的に各個人のワンドライブ内のドキュメントに保存されます。
>それをその場所のまま開いてコピペしたいのです。
開くファイルのパス指定が、個人ごとに異なるので、それを指定したいということと解釈しました。
例えば、以下で各ユーザごとのデスクトップへのパスを取得できますので、そのパスの「Desktop」部分を「OneDrive\ドキュメント」に置き換えて使用するようになされば良いでしょう。
最後の7文字を削除して、追加しても良いですね。
(置換えなら、Replaceメソッド等で)
https://yaromai.jp/desktop-folderpath/
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) シート名をフォルダ名に変更 1 2021/12/01 15:59
- Excel(エクセル) エクセルのマクロについて教えてください。 2 2023/02/20 14:46
- Visual Basic(VBA) VBAのユーザーフォームのテキストボックスに入力制限をしたい 6 2022/11/15 08:28
- Visual Basic(VBA) サブフォルダ含むすべてのフォルダの Excel 検索 4 2021/12/13 09:33
- Visual Basic(VBA) Excel VBAでフォルダ内の全テキストファイルの任意データを取得について 7 2021/12/18 16:00
- Visual Basic(VBA) 【ご教示ください】VBAの記述方法がわかりません。 2 2022/08/12 21:28
- Visual Basic(VBA) 3個のfileのセルデータを1個のfileのセルに貼り付けるVBAコードですが。 1 2023/02/20 09:21
- Visual Basic(VBA) シート名でファイル検索する 2 2021/11/30 17:05
- Visual Basic(VBA) 空のシートに関数を入れたい 2 2021/12/03 15:08
- Visual Basic(VBA) VBAの参照先のファイル名をセルに書いて代入したい 2 2022/04/04 13:42
このQ&Aを見た人はこんなQ&Aも見ています
-
VBA 新規ファイルを元ファイルと同じ場所に保存する方法
Excel(エクセル)
-
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
マクロの「SaveAs」でエラーが出るのを解消したいです(再)
Visual Basic(VBA)
-
-
4
特定のPCだけ動作しないVBAマクロがあります。その理由は?
Visual Basic(VBA)
-
5
worksheetFunctionクラスのVlookupプロパティを取得できません エラーへの対応
Visual Basic(VBA)
-
6
【VBA】マクロの入ったファイルと同じフォルダに,出力したファイルを保存するコードについて
Visual Basic(VBA)
-
7
【VBA】PDF出力に任意のファイル名前を付ける方法
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
DVDstylerへの書き込み失敗につ...
-
EXCEL、上書き保存したは...
-
Excelで勝手に保存画面に飛びま...
-
ZIPファイル内のファイルを...
-
拡張子tmpファイルを開く方法
-
拡張子のないファイルの作成
-
PUBファイルをパブリッシャー以...
-
txt ファイル (テキストフ...
-
エクセルのファイル名が「開く...
-
開いているファイルをリネーム...
-
文書内の表が破損しています、...
-
wordの「docx」ファイルを「tex...
-
Wordの保存形式でwebページの意...
-
mdfファイルの変換について
-
複数あるテキストボックス中の...
-
3DSで作った動画をAndroidのス...
-
Windows Movie Maker でクリッ...
-
【Access】テーブルをエクスポ...
-
xls対応の携帯にxlsxファイルを...
-
天鳳のIDを忘れてしまった時の...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelで勝手に保存画面に飛びま...
-
ZIPファイル内のファイルを...
-
txt ファイル (テキストフ...
-
EXCEL、上書き保存したは...
-
拡張子のないファイルの作成
-
PUBファイルをパブリッシャー以...
-
拡張子tmpファイルを開く方法
-
開いているファイルをリネーム...
-
複数あるテキストボックス中の...
-
Lファイルという画像をマイピク...
-
【Access】テーブルをエクスポ...
-
auのスマフォでPDFを見るには・...
-
Wordの保存形式でwebページの意...
-
何故かエクセル終了時に「変更...
-
エクセルのファイル名が「開く...
-
共有フォルダの件
-
VBAファイルの保存先について
-
エクセルでファイルを早く開く...
-
文書内の表が破損しています、...
-
Image-Jの使い方を教えて下さい
おすすめ情報