Excel VBA質問箱 IV

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

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


12794 / 13644 ツリー ←次へ | 前へ→

【8615】ファイルを開く k- 03/10/27(月) 11:12 質問
【8618】Re:ファイルを開く つん 03/10/27(月) 11:41 回答
【8620】Re:ファイルを開く k- 03/10/27(月) 11:59 お礼

【8615】ファイルを開く
質問  k-  - 03/10/27(月) 11:12 -

引用なし
パスワード
   kou = TextBox1.Text
sok = TextBox2.Text
If (kou = "") Or (sok = "") Then exit Sub
fil = "c:\file\" & kou & "\nt" & sok & ".csv"
Workbooks.Open Filename:=fil

このようにワークブックをテキストボックスに入力した数値で自動で開こうと思ってます。(テキストボックスの1,2には4桁の数字 例0306、2003など)この時にテキストボックスの1,2にフォルダーやファイルが存在しない数字や文字等を入力するとエラーが起こります。このエラーが起こらないようにしたいのですが・・・。
何か方法がありましたらお願いします。
エクセル2000ですが97の環境でも動くルーチンをお願いします。

【8618】Re:ファイルを開く
回答  つん E-MAIL  - 03/10/27(月) 11:41 -

引用なし
パスワード
   k- さん、こんにちは

つまり、ファイルが存在するかどうか、先に判断させとけばいいんですよね?
Dir関数使ったらOKやと思います。

こんな感じかな?

  Dim sok As String
  Dim fil2 As String
  Dim fil As String


  kou = TextBox1.Text
  sok = TextBox2.Text
  If (kou = "") Or (sok = "") Then Exit Sub
  
  
  fil2 = Dir("C:\WINDOWS\デスクトップ\test\" & kou & "\" & sok & ".xls", vbNormal)
  
  If fil2 = "" Then
    MsgBox "NG"
    Exit Sub
  End If
  
  fil = "C:\WINDOWS\デスクトップ\test\" & kou & "\" & sok & ".xls"
  
  Workbooks.Open Filename:=fil


これはエクセルファイルで試したので、Dir関数のヘルプみて直してください。

【8620】Re:ファイルを開く
お礼  k-  - 03/10/27(月) 11:59 -

引用なし
パスワード
   >つまり、ファイルが存在するかどうか、先に判断させとけばいいんですよね?
>Dir関数使ったらOKやと思います。

そうですね、先にファイルの存在を確認しておけばエラーもでないでスムーズに処理ができるんですね。つん さん ありがとうございました。

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