[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『ファイルのコピーが出来ない』(SY)
バックアップファイルを作ろうと試行しています。 以下のコードを実行すると、 「実行時エラー'70' 書き込みできません」とエラーになります。 読み取り専用のフォルダになっているかもと考えて 属性の変更も追記したのですが駄目でした。 (ファイル属性が「16」になってしまいます) どこを調べて、どこを変更すればいいでしょう? (EXCELの問題では無いような気がしていますが...) よろしくお願いします。
InpFileName = Application.GetOpenFilename("ファイル,*.xls") If InpFileName = False Then Exit Sub OutFolder = Mid$(InpFileName, 1, InStrRev(InpFileName, "\") - 1) & "\BKUP" Set FSO = CreateObject("Scripting.FileSystemObject") With FSO If Not .FolderExists(OutFolder) Then .CreateFolder OutFolder If Not .GetFolder(OutFolder).Attributes = 0 Then .GetFolder(OutFolder).Attributes = 0 .CopyFile InpFileName, OutFolder End With Set FSO = Nothing
どの行でエラーになるのでしょうか? 変数の値に問題はないですか? CopyFile のパスを手入力して単体で動作確認してみては如何でしょうか?
(INA)
早速のレスありがとうございます。 エラーになるのは .CopyFile InpFileName, OutFolder のところです。 パスを手入力しても同様のエラーが出ました。 コードというより、パソコンのフォルダ設定ですかね...
(SY)
他のファイル(パス)で試した場合は問題有りませんか?
対象にしているフォルダはネットワークフォルダ?(アクセス権等は?) (INA)
一応、他のファイルでもテストしましたが、同様のエラーが出ます。 本来実施したいのはサーバ上のファイルを他のPCなどにコピーすることですが、 現在テストしているのは、自PCのDドライブ配下のファイルを指定しています。
ちなみにMoveFileも試してみたのですが、移動できませんでした。 「実行時エラー'58' 既に同名のファイルが存在しています」というエラー。 D:\以下の異なるパスを手入力しても同じエラーです。どうしてですかねぇ。 (SY)
>「実行時エラー'58' 既に同名のファイルが存在しています」というエラー。 同名のファイルは存在していないのですか?
Cドライブ→Cドライブ内でコピーした場合はどうでしょうか?
FSO.CopyFile "C:\Book1.xls", "C:\temp\Sample.xls"
(INA)
アドバイスありがとうございます。 解決しました。 ファイル名の指定ではなく、 コピー先フォルダを指定する際には最後に「\」を入れないと駄目なようです。 上記コードが正常終了することがヒントになりました。 >FSO.CopyFile "C:\Book1.xls", "C:\temp\Sample.xls"
ありがとうございました。 (SY)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.