[[20110506223245]] 『ネットワーク先への保存』(えいきち) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『ネットワーク先への保存』(えいきち)
初めて投稿させていただきます。

コントロールツールボックスで保存用のボタンを作成し、
下記のマクロを組んだつもりなのですが、
保存先がマイドキュメントになってしまいます。

 Private Sub 保存_Click()
 ChDir "O:\AAA\BBB\CCC\DDD"
 ActiveWorkbook.SaveAs Filename:=Range("A1") & "-" & Range("B1").Value
 End Sub

上記のマクロでは DDD の場所には保存できないのでしょうか?

OSはWindowsXP
Excel2003を使っています。

詳しい方、ご教授お願いいたします。


 Chdirのヘルプはごらんになりましたか?

ChDir ステートメントを使用すると、フォルダを変更できます。ただし、ドライブは変更されません。 たとえば、現在のドライブが C のとき、次に示すステートメントは、D ドライブのフォルダを変更しますが、現在のドライブは C のまま変更されません。

ChDir "D:\TMP"

 あわせてChDrive ステートメントも調べてみてください。
あるいは、ファイル名にディレクトリを含めても良いかもしれません。
以下、SaveAsメソッドのヘルプ。

Filename 省略可能です。バリアント型 (Variant) の値を使用します。保存するファイルの名前を表す文字列を指定します。絶対パスを含めることもできます。絶対パスを含めない場合は、ファイルはカレント フォルダに保存されます。

 ActiveWorkbook.SaveAs Filename:="O:\AAA\BBB\CCC\DDD\" & Range("A1") & "-" & Range("B1").Value
 
(みやほりん)(-_∂)b

通常は

 ActiveWorkbook.SaveAs Filename:="O:\AAA\BBB\CCC\DDD\" & Range("A1") & "-" & Range("B1").Value

 これが一般的でしょう。

 どうしても、アップした形で行うなら、最初に ChDrive "O" を追加してみてください。

 ぶらっと立ち寄り 

 既に投稿があるようにカレントフォルダの変更をしなくてもネットワークドライブに
 ブックの保存は可能ですね!!
 よって、以下はあくまでも参考ということで・・・、
 WSHを使うと・・・、

 Private Sub 保存_Click()
 CreateObject("WScript.Shell").CurrentDirectory = "O:\AAA\BBB\CCC\DDD"
 ActiveWorkbook.SaveAs Filename:=Range("A1") & "-" & Range("B1").Value
 End Sub

 こんな記述もできます。

 ichinose


皆さまありがとうございます。
Chdirでディレクトリでアクティブ位置を移動して、
ActiveWorkbook.SaveAsで保存 と勝手に理解していました。。。

UNIXのcdとは全然違うのですね。。。
お恥ずかしい限りです。

みやほりんさま、
ありがとうございます。
Chdirのヘルプとは何処で見れますか? ココのサイトでしょうか?
初歩の初歩で申し訳ありません。。。

ぶらっと立ち寄りさま、
ありがとうございます。
保存先もSaveAsに組めば1行で済んでしまうのですね。

ichinoseさま、
ありがとうございます。
WScript.Shell ・・・
勉強させていただきます。

にわか知識での質問に親切にお答えいただいて、本当にありがとうございました。
また週明けに職場にてテストしてみますので、結果報告させていただきます。

(えいきち)


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.