2017-08-23 15 views
0

GetSaveAsFileName()関数を使用して、ドキュメントで常に開くのではなく、ネットワークドライブに保存ダイアログボックスを開くのに問題があります。GetSaveAsFilename()は常にマイドキュメントで開きます

私の作業モジュールのトップへ:私の名前を付けて保存で

Private Declare Function SetCurrentDirectoryA Lib _ 
"kernel32" (ByVal lpPathName As String) As Long 

Sub ChDirNet(szPath As String) 
Dim lReturn As Long 
lReturn = SetCurrentDirectoryA(szPath) 
If lReturn = 0 Then Err.Raise vbObjectError + 1, "Error setting path." 
End Sub 

()次のコードモジュール:

ChDirNet "\\test\input" 
xFileName = Application.GetSaveAsFilename("\\test\input\filename.xls") 
を は基本的に、私は、を介してネットワーク・ドライブへのパスを変更する回避策を実施しています

しかし、私はまだ\ test \ inputネットワークパスで開くようにダイアログボックスを保存することができません。

誰かに助言をお願いできますか?

助けていただけたら幸いです!

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

+0

あなたの質問は* networking *または* directory *とは関係ありません。 'GetSaveAsFilename'を使うことと関係しています。適用されないタグを削除し、使用している言語(VBA?)に1つ追加するには[編集]してください。適切にタグを付けると、助けを受ける可能性が大幅に向上します。使い慣れたタグを無作為に追加する前にタグの説明を読んでください。タグには特別な意味があります。 –

+0

ドライブ文字にパスをマップできます。 – Kevin

+0

残念ながら私はドライブへのマッピングを避け、ChDr関数を使用しています。これは解決策ではありません。私のネットワークパスが解析されない理由を調べようとしています。 –

答えて

0

いくつかの発言:あなたはUNC表記で有効な フォルダやファイルを渡す際に完全に

  • 私だけでしたいくつかの テストやGetSaveAsFilename作品を呼び出す前に、変更のDirを行う必要はありません

    • あなたの ネットワークパスが無効であるという疑いがあります。ネットワークパスが であることを確認してください(このパスでエクスプローラを開くことはできますか)。
  • +0

    面白いことに、GetSaveAsFilenameは自分のPC上で適切なネットワークパスを開きますが、ユーザーのPC上のマイドキュメントに移動します。しかし、彼らはWindowsエクスプローラで手動でパスを開く/アクセスすることができます... –

    関連する問題