Excel VBA Application.GetOpenFilename にてネットワークパスが開けない

Anonymous
2023-08-17T01:50:35+00:00

下記にて「開始シート」の「B4」セルにネットワ-クパスを指定しているが、マイドキュメントが開く。

「Debug.Print CurDir」で確認したらネットワークパスが正しくセットされている。

その後、ネットワークパスを変更してフォルダを開き、EXCELファイルは開けるがテキストファイルが開けない。

'ディレクトリの指定

tPath = ThisWorkbook.Worksheets("開始").Range("B4") 

If Left(tPath, 2) = "\\" Then 

   With CreateObject("WScript.Shell") 

       .CurrentDirectory = tPath & "\" 

   End With 

Else 

   ChDir tPath & "\" 

End If 

'chDir 

Debug.Print CurDir 

'Excelファイルの指定 

fname = Application.GetOpenFilename
Microsoft 365 と Office | Excel | ビジネス向け | Windows

ロックされた質問。 この質問は、Microsoft サポート コミュニティから移行されました。 役に立つかどうかに投票することはできますが、コメントの追加、質問への返信やフォローはできません。

0 件のコメント コメントはありません

7 件の回答

並べ替え方法: 最も役に立つ
  1. Anonymous
    2023-08-18T04:42:11+00:00

    清洲太郎さん

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

    ドライブに割り付けていないネットワークパスなので、下記の通りネットワークパスの時は、

    CurrentDirectoryに割り付けています。

    「If Left(tPath, 2) = "\" Then
      With CreateObject("WScript.Shell")

           .CurrentDirectory = tPath & "\"」
    

    この回答は役に立ちましたか?

    1 人がこの回答が役に立ったと思いました。
    0 件のコメント コメントはありません
  2. Anonymous
    2023-08-18T04:23:58+00:00

    ChDir ステートメント (VBA) | Microsoft Learn

    注釈:ChDir ステートメントでは、既定ディレクトリまたはフォルダーを変更できますが、既定のドライブは変更できません。 既定のドライブは、別のステートメントである ChDrive で変更できます。

    とのこと。

    Cドライブ以外のフォルダを開こうとしていない?

    この回答は役に立ちましたか?

    1 人がこの回答が役に立ったと思いました。
    0 件のコメント コメントはありません
  3. Anonymous
    2023-08-18T04:24:27+00:00

    shasanoさん

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

    説明が不十分ですいません。

    ネットワークパスも開けるパスと開けないパスがあります。

    アドレス解決の問題なのかなとは思っていますが、

    開けないパスもエクスプローラーでは直接開けます。

    「ChDir tPath & ""」のみも試してみましたが、NGでした。

    テキストファイルを開こうとすると「Error Number 53 ファイルが見つかりません」のエラーとなります。

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません
  4. Anonymous
    2023-08-18T02:38:26+00:00

    原因はわかりません。当方 Excel 2016 ですが普通に動きます。

     が、最初の 2 文字の判定とかせずに(ネットワークパスだろうが) ChDir tPath & ""('&' 以降も要らないような)だけでダメですか?

     あるいは ChDir とかを使わずに直接初期フォルダを指定できる FileDialog を使う手もありますが。

    > テキストファイルが開けない

     これは別な問題のような気もしますが、「Excel で(エラーが出るとかして)読み込めない」のか「ダイアログで(表示されないから)指定できない」のかあるいはそれ以外なのか、詳細不明ですね。

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません
  5. simo-k 88,920 評価のポイント ボランティア モデレーター
    2023-08-17T02:14:46+00:00

    VBA(マクロ)に関しては、海外コミュニティで聞いて下さい。

    Stack Overflow (タグ名:VBA)

      [VBA プログラミングに関する質問]

      Stack Overflow には、説明的なタイトル、完全で簡潔な問題ステートメント、問題を再現する
      ための十分な詳細の要求などのガイドラインがあることに注意してください。
      機能要求または過度に広範な質問は、トピック外と見なされます。
      新しいユーザーの場合は、Stack Overflow ヘルプ センター にアクセスして詳細を確認して下さい。

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません