お世話になります。

ExcelVBAで、ネットワーク上の隠しフォルダ(....$で開く
ことができる場所のことです)に、テキストファイルの書き
込みをしたいのですが、outputのところで『パス名が無効です』と
表示され、書き込みを行うことができません。
inputで読み込みを行う際には問題なくできるのですが、どうして
書き込みはできないのでしょうか。

原因と対処法を教えてください。

下記が、その例です。

Public Function readText(ByVal stFileName) As String
Dim ch1 As Long
Dim textline As String
Dim stAllText As String

readText = ""

'空いているファイル番号を取得します
ch1 = FreeFile

Close #ch1

'FileNamePath のファイルをオープンします
Open stFileName For Input As #ch1

'エラーが発生したらファイルを閉じます
On Error GoTo Err_readText


stAllText = ""

'最初に1行だけ読み込む
Line Input #ch1, textline
stAllText = textline


Do While Not EOF(ch1) 'ファイルの終端かどうかを確認します。

'1行読み込みます
Line Input #ch1, textline

' 文字列を連結する。
stAllText = stAllText & vbCrLf & textline
Loop

Close #ch1

readText = stAllText

Exit Function

Err_readText:

Close #ch1
MsgBox Err.Description, vbExclamation, sysName

End Function

↑↑↑readは成功します。

Public Function writeText(ByVal stFileName, ByVal stBuff) As Boolean

On Error GoTo ErrMsg
' ファイルポインタ
Dim n As Long
n = FreeFile

Open stFileName For Output As #n  ← ここでエラーになる。

Print #n, stBuff
Close #n

writeText = True
Exit Function

ErrMsg:
' エラー時処理
MsgBox Err.Description, vbCritical, sysName
writeText = False
End Function

↑↑↑書き込みではエラーになります。

以上、よろしくお願いいたします。

このQ&Aに関連する最新のQ&A

A 回答 (1件)

読み込みは可能だが、書き込みは不可能ということなので、


そのディレクトリは全てのユーザに対して変更を許可しているのか確認してみてはどうでしょうか?
    • good
    • 0
この回答へのお礼

bluecampusさん、ありがとうございました。
おっしゃる通り、権限が決められているため保存できないようでした。
大変申し訳ありませんでした。

また何かありましたら、よろしくお願いいたします。

お礼日時:2009/05/20 18:38

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード


人気Q&Aランキング

おすすめ情報