過去ログ

                                Page     231
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫   
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 ▼shell関数のパス名について  PINGA 03/3/19(水) 18:45
   ┗Re:shell関数のパス名について  かみちゃん 03/3/19(水) 22:15
      ┗Re:shell関数のパス名について  PINGA 03/3/20(木) 9:23

 ───────────────────────────────────────
 ■題名 : shell関数のパス名について
 ■名前 : PINGA
 ■日付 : 03/3/19(水) 18:45
 -------------------------------------------------------------------------
   Shellを使ってEXCELファイル起動したいのですが、
EXCELシートのパスにスペースが含まれると(C:\My Documentsのように)
「・・・が見つかりません」とエラーになってしまいます。
EXCELシートのパスは固定にせず、Shell関数を使用したいのですが、他に方法が
あるでしょうか?どなたかご教示よろしくお願い致します。


'***********************************************************
'機能 : EXCEL起動
'引数 : ファイルパス
'戻り値: なし
'***********************************************************
Function ExecExcel(Sheet_Path As String)
  Dim rtn

  rtn = Shell("EXCEL.EXE " & Sheet_Path, vbMaximizedFocus)

End Function

 ───────────────────────────────────────  ■題名 : Re:shell関数のパス名について  ■名前 : かみちゃん  ■日付 : 03/3/19(水) 22:15  -------------------------------------------------------------------------
   >  rtn = Shell("EXCEL.EXE " & Sheet_Path, vbMaximizedFocus)

Sheet_Path を "" で囲みます。具体的には、次のようにします。

rtn = Shell("EXCEL.EXE """ & Sheet_Path & """", vbMaximizedFocus)
            ~~         ~~

 ───────────────────────────────────────  ■題名 : Re:shell関数のパス名について  ■名前 : PINGA  ■日付 : 03/3/20(木) 9:23  -------------------------------------------------------------------------
   「かみちゃん」さん、早速試してみてOKでした。
大変助かりました、ありがとうございました。

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━    通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━                                 Page 231