フォルダーのコピーについて

解決


みかん  2007-04-05 18:59:11  No: 135989

VB6でフォルダーを別のフォルダーにコピーしようとしています。

理想は5このフォルダーをいっきにコピーして一つのフォルダーに移動させたいんですが…
まずは1つだけコピーして移動させたいけど、エラーがでます。
どこが違うのでしょうか??

Option Explicit
Private Sub Form_Load()
Dim ret As Long
    ret = CopyFile("C:\AA.text", "C:\BB.text")
    If ret Then
        MsgBox "コピー完了"
    Else
        MsgBox "異常終了"
    End If

    ret = MoveFile("C:\AA.text", "C:\BB.text")
    If ret Then
        MsgBox "移動完了"
    Else
        MsgBox "異常終了"
    End If

End Sub


大吉末吉  2007-04-05 19:20:38  No: 135990

>     ret = CopyFile("C:\AA.text", "C:\BB.text")
>     ret = MoveFile("C:\AA.text", "C:\BB.text")

「CopyFile メソッド」も「MoveFile メソッド」も、VB6の組み込み機能ではなく、
外部オブジェクトである、「FileSystemObject オブジェクト」の機能です。

VB6のヘルプ(MSDNライブラリ)に書いてあるように、
「FileSystemObject オブジェクト」を生成してから、使用してください。


みかん  2007-04-05 20:26:53  No: 135991

ありがとうございます。
色々試してみましたが、やはりエラーがきます。
画面も何もなく実行するとそのフォルダーをコピーしたいです。

Option Explicit
Private Sub Form_Load()
Dim ret As New FileSystemObjecd
    ret = CopyFile("C:\AA.text", "C:\BB.text")
    If ret Then
        MsgBox "コピー完了"
    Else
        MsgBox "異常終了"
    End If

    ret = MoveFile("C:\AA.text", "C:\BB.text")
    If ret Then
        MsgBox "移動完了"
    Else
        MsgBox "異常終了"
    End If

End Sub


もげ  2007-04-05 20:47:20  No: 135992

どんなエラーでしょう?

>Dim ret As New FileSystemObjecd
>    ret = CopyFile("C:\AA.text", "C:\BB.text")

いや、一度でもヘルプを見れば、そんな間違えかたはしないと思いますが、

Dim fso As Object
Set fso = CreateObject("Scripting.FileSystemObject")
fso.CopyFile "C:\AA.text", "C:\BB.text"

戻り値は無いので、
エラートラップするか、
ファイルの存在でエラー判定を行いましょう。


みかん  2007-04-05 20:52:08  No: 135993

できました〜!!!
ありがとうございます。
次に2つ3つのファイルが同時にコピーでき移動できるかやってみます。


みかん  2007-04-05 23:27:27  No: 135994

再度、試したらできなくなってしまいました。
エラーがファイル名または番号が不明みたいです。
フォルダー名の入れ方がまちがってるんですか??

Option Explicit
Private Sub Form_Load()
    Dim ret As FileSystemObject
    Set ret = New FileSystemObject

'コピーと移動
    Call ret.CopyFile("C:\AA","C:\BB")
    If ret Then
        MsgBox "コピー完了"
    Else
        MsgBox "異常終了"
    End If

    Call ret.MoveFile("C:\AA", "C:\BB")
    If ret Then
        MsgBox "移動完了"
    Else
        MsgBox "異常終了"
    End If

End Sub


報告  2007-04-06 00:53:49  No: 135995

マルチポスト報告

http://bbs.wankuma.com/index.cgi?mode=al2&namber=2374


みかん  2007-04-06 01:50:31  No: 135996

ありがとうございました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加