2017-10-18 894 views
0

データベースに接続されたブックがあり、ワークブックを更新するとワークブック内のデータが更新されます。その後、マクロは2つの異なる場所に新しい(生の)データを保存するために実行され、マクロはその生データの分析を行い、後で4つの他の場所に同じブックを保存します。 生データの最初の保存をしようとすると、最初の場所に保存できますが、2番目の場所に移動するとエラーが表示されます。実行時エラー '1004':メソッド 'SaveAs 'オブジェクト' _Workbook 'の'は失敗しました。両方の場所が有効な場所です。ここでメソッド '_Workbook'オブジェクトの 'SaveAs'が失敗しました。VBA

は、最初にファイルを保存し、マクロ内の1つのサブです:

Sub saveraw() 

Dim rdate As String 
Dim rawfilename As String, rawfilename1 As String 
Dim mywb As Workbook 

Set mywb = ActiveWorkbook 

rdate = Format(Now(), "mm-dd-yy") 

rawfilename = "\\sw\mes\PS\SC\SCM_Supply_Execution\Spares\This Weeks Number Database\This Weeks Numbers(raw) " & rdate & ".xlsm" 
rawfilename1 = "\\sw\mes\PS\SC\SCM_Shared\Spares Reports\This Weeks Numbers(raw) " & rdate & ".xlsm" 

mywb.Save 

Worksheets("Sheet2").Range("A2") = Null 

Application.DisplayAlerts = False 

mywb.SaveAs Filename:=rawfilename 
mywb.SaveAs Filename:=rawfilename1 

Application.DisplayAlerts = True 

End Sub 

私もmywb.SaveAsの両方の代わりに

ActiveWorkbook.SaveAs 

の方法を使用してみましたが、しかしそれはどちらもうまくいかなかった。

+0

そのファイル名でその場所に手動で保存しようとするとどうなりますか? –

+1

ええ、問題は特権でした..私が変更を加えて保存しようとするとうまくいかないでしょう。私はそれを見落とした。 ありがとう – Adije

答えて

0

私は、エラーが原因だと思いますけれども、その後、ポップアップが

をあなたはそれを上書きするかどうかを尋ねたりしないので、ファイルが既に存在する場合、これは問題がある可能性があります。この

ActiveWorkbook.SaveAs Filename:="\\sw\mes\PS\SC\SCM_Supply_Execution\Spares\This Weeks Number Database\This Weeks Numbers(raw) " & rdate & ".xlsm" _ 
     , FileFormat:=xlOpenXMLWorkbookMacroEnabled 

をお試しくださいその特定の場所または接続の問題の特権に関する問題へ

+0

問題は特権でした...私は読み取り専用のアクセス権が与えられました。あなたがそれを言うまで書かなかったことについては考えていませんでした。 ありがとうございました – Adije

1

テストとして、あなたがアクセスできるファイルの場所に対してコードを実行します。私は2番目のコマンドで共有ドライブへの参照に気づいているので、誰かがすでにそれに入っていて、それを保存することはできません。

現在、表示アラートをtrueに設定しています。

また、テストマクロを実行するときに、ウィンドウエクスプローラウィンドウが開いていないことを確認して、ここに結果をフィードバックしてください。

それにもかかわらず、コードは私によく見えます。

+0

問題は特権でした..私はそれを見落とし、唯一の問題が書き込みアクセスでないときには自分のコードが悪いと思って1時間過ごしました-_- 助けてくれてありがとう – Adije

関連する問題