Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


32814 / 76734 ←次へ | 前へ→

【49153】Re:何故、実行時エラー'52'??
お礼  すいか  - 07/5/25(金) 15:12 -

引用なし
パスワード
   neptuneさん、ichinose さん
ご回答ありがとうございます。とても参考になりました。

解決策として、ドライブチェックをして、D:が無い場合、C:を代用することに。
ヘルプのまんまですが、
  Dim fs, d, dc, s, n
  Dim D_Drive_FLG         As Boolean
  Set fs = CreateObject("Scripting.FileSystemObject")
  Set dc = fs.Drives
  D_Drive_FLG = False
  For Each d In dc
    If d = "D:" Then   <=== 1.
      If d.DriveType = 2 Or d.DriveType = 3 Then
        D_Drive_FLG = True
      End If
      Exit For
    End If
  Next
  If D_Drive_FLG = False Then
    cnsWorkDir = "C:\usr"
  Else
    cnsWorkDir = "D:\usr"
  End If
  
  If Dir(Environ("ProgramFiles") & "\lhaca\lhaca.exe", vbNormal) = "" Or _
    Dir(cnsWorkDir, vbDirectory) = "" Then
    r = MsgBox("標準PCではありません。標準PCで実行してください", vbDefaultButton1, "動作環境エラー")
    Exit Sub
  End If

>ネットワークで正常にLoginしてなかったら52エラーが発生するという・・
そうなのですか・・。
d.DriveType = 3のパターンはヤメておこうかなぁ・・。

ちなみに1.の部分なのですが、d.DriveLetter = "D"としてたら
実行時エラー'438'が出てしまって、苦肉の策でこうしました。
でも、今、投稿前に念のためd.DriveLetter = "D"を使ったらちゃんと動きます・・。
不思議です・・。
d.DriveLetter = "D"を使用しても大丈夫なのでしょうか?
10 hits

【49133】何故、実行時エラー'52'?? すいか 07/5/24(木) 16:26 質問
【49135】Re:何故、実行時エラー'52'?? neptune 07/5/24(木) 16:41 発言
【49140】Re:何故、実行時エラー'52'?? すいか 07/5/24(木) 18:04 お礼
【49142】Re:何故、実行時エラー'52'?? neptune 07/5/24(木) 18:40 発言
【49143】Re:何故、実行時エラー'52'?? ichinose 07/5/24(木) 21:14 発言
【49153】Re:何故、実行時エラー'52'?? すいか 07/5/25(金) 15:12 お礼
【49138】Re:何故、実行時エラー'52'?? すいか 07/5/24(木) 17:02 発言

32814 / 76734 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free