VB6・VBA関数メモ:FileCopyステートメント

FileCopyステートメントについてメモしておきます。

このステートメントはファイルのコピーを行う際に使用します。
コピー先が既に存在している場合は上書きします。

コピー元が存在しない場合や既に開かれている場合(読み込みロック時)はエラーとなります。
また、コピー先が既に開かれている場合もエラーとなります。


概要

FileCopy Source, Destination
機能 ファイルをコピー
引数 Source コピー元のファイルパス
Destination コピー先のファイルパス


使用例

説明 記述例 出力
ファイルをコピー
FileCopy "E:¥Src.txt", "E:¥Dst.txt"



動作検証

説明 記述例 出力
コピー元のファイルが存在しない場合はエラー
※例では"E:¥Src.txt"が存在しない
On Error Resume Next

'ファイルコピー
FileCopy "E:¥Src.txt", "E:¥Dst.txt"

'エラー時は出力
If Err > 0 Then Debug.Print Error
ファイルが見つかりません。
コピー元のファイルが読み込みロック中の場合はエラー
On Error Resume Next

'ファイルオープン
Dim n   As Integer
n = FreeFile
Open "E:¥Src.txt" For Input Lock Read As #n

'ファイルコピー
FileCopy "E:¥Src.txt", "E:¥Dst.txt"

'エラー時は出力
If Err > 0 Then Debug.Print Error

'ファイルを閉じる
Close #n
書き込みできません。
コピー元のファイルが書き込みロック中の場合はコピー可能
On Error Resume Next

'ファイルオープン
Dim n   As Integer
n = FreeFile
Open "E:¥Src.txt" For Input Lock Write As #n

'ファイルコピー
FileCopy "E:¥Src.txt", "E:¥Dst.txt"

'エラー時は出力
If Err > 0 Then Debug.Print Error

'ファイルを閉じる
Close #n
コピー先のファイルが既に存在し
開かれている場合はエラー
On Error Resume Next

'ファイルオープン
Dim n   As Integer
n = FreeFile
Open "E:¥Dst.txt" For Input As #n

'ファイルコピー
FileCopy "E:¥Src.txt", "E:¥Dst.txt"

'エラー時は出力
If Err > 0 Then Debug.Print Error

'ファイルを閉じる
Close #n
ファイルは既に開かれています。


コメント
コメントする








    
この記事のトラックバックURL
トラックバック