| お世話になります。
桐ver9-2012(桐92004ーsp6)をwindows7で使用しています。
以前質問させていただいた関連ですが、ファイル名を入力したときに、同名ファイルがあるかないかを確認したのち処理をする方法を教えていただきました。
記事No.7895でbonito さんに教えていただき、ファイルもいただいたもので動かした時にはうまくいったのですが、その後、初期フォルダを変数に変えたら、うまく動かなくなってしまいました。
フォーム呼び出し &ファイル名指定エクセル 条件 (&実行リターン=0 .or &STR="") 手続き終了 &STR1=#連結(&置換式 , "\" , &STR) &秒=#ファイルサイズ(&STR1) 条件 (&秒>0) メッセージボックス "処理中止"〜略 条件 (&秒>0) 手続き終了 表 &編集表 表示幅 {〜略〜} エクセル書き出し &STR1, "リスト", 項目名行=する,表示=する, 終了状態=&実行リターン
ここで、&置換式 は、フォルダを指定する変数として使用しています。
ファイルサイズの関数がうまく設定されていないらしく、 &STRに、既存ファイル名を選択しても &秒=#ファイルサイズ(&STR1)で、 &秒 -1 で返ってきてしまいます。
&STR1は、フルパスで既存のファイル名になっています。
そこで、
&秒=#ファイルサイズ(&STR)
としてみても、&秒 -1
実際に、フォルダの中から選び、実行してみても、-1で返ってきます。
どこがおかしいのでしょうか?
ちなみに、うまく動いていた時の記述はなくなってしまっていますが、
以下、7895 の抜粋です。(すみません。載せていただいていたファイルは、うまくアップできませんでした。)
手続き定義開始 書き出し処理() フォーム呼び出し "ファイル名指定" 条件 (&実行リターン=0 .or &STR="") 手続き終了 &秒=#ファイルサイズ(&STR) 条件 (&秒>0) メッセージボックス 〜省略〜 /*---既存だから中止する旨---*/ 条件 (&秒>0) 手続き終了 編集表 "B.tbl" 書き出し CSV,&STR,項目名=する,終了状態=&実行リターン,* /*---適宜書き換え---*/ メッセージボックス 〜省略〜 /*---書き出しを実行した旨---*/ 手続き定義終了
よろしくお願いします。
|