
No.2ベストアンサー
- 回答日時:
> 「実行時エラー'70' 書き込みできません」
「FileCopy」のヘルプをみると(VBE画面右上の検索窓にて「FileCopy」で検索)、
> 既に開いているファイルに対して、FileCopy ステートメントを実行しようとすると、エラーが発生します
と解説欄にありますので、自身のコピーの作成には使えないはずです。
(こちらで同じエラーとなることを確認しました)
自身を複製する場合は、以下のようにします(FileSystemObjectを使った例):
Private Sub Sample1()
'変数の宣言
Dim FSO As Object
'FileSystemObjectを作成
Set FSO = CreateObject("Scripting.FileSystemObject")
'FileSystemObjectに用意されている「CopyFile」を使用して複製
FSO.CopyFile CurrentProject.FullName, "C:\あああ.mdb"
'念のため、明示的にメモリを解放
Set FSO = Nothing
End Sub
なお、VBEのメニューで、「ツール(T)→参照設定(R)」を選択して『参照設定』
ダイアログを開き、「Microsoft Scripting Runtime」のチェックをオンにすると、
以下のような書き方もできます。
(特にコードの簡略化ができるわけではありませんが、「FSO.」と入力したときに、
「.」の後に続けられる候補が表示されるので、自分でコードを書くときに便利)
Private Sub Sample2()
Dim FSO As FileSystemObject
Set FSO = New FileSystemObject
FSO.CopyFile CurrentProject, "C:\あああ.mdb"
Set FSO = Nothing
End Sub
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
なお、No.1の方のお礼欄のエラーですが、「Const」(=定数)を宣言した場合は、
「=」の後ろには
「"あああ.mdb"」などの定数や
「"test" & vbCrLf」などの定数だけでできた式(=定数式)
は指定できますが、「.FullName」のようなプロパティ、或いは同時に宣言した
変数などを指定することはできませんので、合わせて参考まで。
No.1
- 回答日時:
勘違いしてたらすみません↓
これで出来ないでしょうか。。
Private Const cnsSOUR = "C:\あああ.mdb" ' 元ファイル
Private Const cnsDEST = "C:\いいい.mdb" ' 先ファイル
Sub Sample()
FileCopy cnsSOUR, cnsDEST
End Sub
この回答へのお礼
お礼日時:2009/05/16 00:23
ご提示のコードでできました!
ありがとうございます。
しかし元ファイルをカレントファイルで取得したい場合どういった方法があるでしょうか?
やはり
Private Const cnsSOUR = CurrentProject.FullName
だと
「定数式が必要です」
となってしまいます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセル2000のマクロにつ...
-
【関数】同じ関数なのに、エラ...
-
VB6 Dir関数で52エラー発生
-
「パス名が無効です」の発生原因
-
エクセルマクロでエラーの原因...
-
エクセルで質問です。 ハイパー...
-
アクセスのクエリでコンパイル...
-
排他ロックが掛かっているファ...
-
access テキストボックスの値取得
-
DBへのコネクションタイムアウト
-
エクセル2010 VBAのサウ...
-
gccを行ってもexeファイルが生...
-
ファイルをクローズしたい
-
すでにファイルが開かれている...
-
matlabでexcelを閉じる
-
Dir関数の使い方
-
Access2010 コンパイルエラー...
-
「アクティブ ユーザーが多すぎ...
-
fcloseで発生するエラーについて。
-
XHTML1.1+MathML2.0+SVG1.1をブ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【関数】同じ関数なのに、エラ...
-
access テキストボックスの値取得
-
エクセルで質問です。 ハイパー...
-
「パス名が無効です」の発生原因
-
PowerShellを使って関連付けら...
-
NAS上のファイルの使用中が解除...
-
gccを行ってもexeファイルが生...
-
アクセスのクエリでコンパイル...
-
ExcelVBAで既に開いてるwordを...
-
Returnに対するGoSubがありません
-
VB6 Dir関数で52エラー発生
-
VBでファイルが開かれているか...
-
データベースソフトのアクセス2...
-
エクセルマクロでエラーの原因...
-
fcloseで発生するエラーについて。
-
batファイルでレジストリキーの...
-
FORTRANの実行エラーについて
-
VBから参照できないCのDLLを使...
-
【COBOL】read文でエラー
-
DisplayAlertsブロパティで ”実...
おすすめ情報