フォルダ内にあるエクセルをPDF変換

投稿者:ビター 投稿日:2024/10/18(Fri) 12:21:12 No.40

この度、はじめてプロデルを触り始めました。
初心者すぎて恐縮ですが、ブログを一通り読んでも分からなかったので投稿いたします。

作りたいのは、ボタンを押すとフォルダ選択に入り、選んだフォルダ内にあるエクセルデータ(xls、xlsx)を、元のエクセルデータと同じファイル名でPDF保存する、といったものです。
下記のように作成しました。

-------------
メイン画面を表示する
待機する
メイン画面とは
  ウィンドウを継承する
  はじめの手順
    初期化する
  終わり
  初期化する手順
    この実質大きさは{428,394}
    この内容は「エクセル変換」
    初期化開始する
    エクセル変換ボタンというボタンを作る
      その位置と大きさは{28,348,112,34}
      その内容は「エクセル変換」
      その移動順は1
    初期化終了する
    この設計スケール比率は{144,144}

    エクセル変換ボタンがクリックされた時の手順
      開く画面のフィルタは「エクセルファイル|*.xls*」
      全ファイル一覧のすべてのパスについてそれぞれ繰り返す
        保存名はファイル名
        エクセルを起動する
        エクセルを「[保存名].pdf」へPDFで保存する
    終わり
-------------

このようにしたのですが、どうにも動きません...
基礎的な部分で間違っているのだと思いますが、
アドバイスを頂けると大変助かります。よろしくお願いします。

Re^3: 一定時間たつと表示を自然に消すには?

投稿者:KNIGHT 投稿日:2024/10/08(Tue) 14:21:41 No.39

お世話になります。
自然消滅ダイアログは、自己解決しました。
プロデルで別のウィンドウを作成して、そのウィンドウを
作業の前後で、開いたり閉じたりすることで、解決できました。

〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
待ちウィンドウを表示する
<手間のかかる処理を記述する>
待ちウィンドウを閉じる

待ちウィンドウとは
  ウィンドウを継承する
  はじめの手順
    初期化する
    ーー貼り付けた部品に対する操作をここに書きます
  終わり
  初期化する手順
    ーー自動生成された手順です。ここに書き加えたプログラムは消える可能性があります
    初期化開始する
    このタスクバー表示を×に変える
    この実質大きさを{257,84}に変える
    この最大化ボタンを×に変える
    この最小化ボタンを×に変える
    このコントロールボックスを×に変える
    この内容を「待ちウィンドウ」に変える
    この文字色を「標準の文字」に変える
    ラベル1というラベルを作る
      その位置と大きさを{12,12,233,65}に変える
      その内容を「現在書類を作成中です。
しばらくお待ちください。
カルテに貼り付け可能です!」に変える
      そのフォントを「MS UI Gothic,14.25」に変える
      その文字色を「標準の文字」に変える
    初期化終了する
  終わり
終わり
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜

日付差の計算で、なぜこうなってしまうのか?

投稿者:KNIGHT 投稿日:2024/10/08(Tue) 11:53:12 No.38

お世話になります。

おそらくは。「整える」という動詞のバグではないのかと考えます。

〜〜〜〜〜
#開始日=「2024/10/01」
#終了日=「2024/10/01」
    日付形式開始日は、#開始日を日時形式化したもの
    日付形式終了日は、#終了日を日時形式化したもの
    日付形式開始日と日付形式終了日の日付差を表示
    #実働日数は、(日付形式開始日と日付形式終了日の日付差)を「yyy年Mヵ月」に整えたもの
    #実働日数を表示
〜〜〜〜〜

「日付差」の表示は、「00:00:00」となりますが、
実働日数は、「1年1ヵ月」と表示されてしまいます。

#開始日=「2023/10/01」
#終了日=「2024/10/01」
とした時には、
「日付差」の表示は、「366.00:00:00」となりますが、
実働日数は、「2年1ヵ月」と表示されてしまいます。

よろしくお願いいたします。

年齢計算で、なぜこうなってしまうのか?

投稿者:KNIGHT 投稿日:2024/10/08(Tue) 10:59:27 No.37

お世話になります。
年齢を計算しようとしました。
〜〜〜〜〜〜〜〜〜〜
#生年月日=「1960/11/12」
#手術予定日=「2024/10/08」
    日付形式生年月日は、#生年月日を日時形式化したもの
    日付形式手術予定日は、#手術予定日を日時形式化したもの
    #年齢年月は、(日付形式生年月日と日付形式手術予定日の日付差)を「yyy歳Mヵ月」に整えたもの
#年齢年月を表示
〜〜〜〜〜〜〜〜

結果は、実年齢よりも、1歳1カ月高齢で表示されます。
どうすればよいのでしょうか?

よろしくお願いいたします。

Re^2: 一定時間たつと表示を自然に消すには?

投稿者:KNIGHT 投稿日:2024/10/08(Tue) 10:53:56 No.36

アークさん、お返事をありがとうございます

> 専用ダイアログ:「開発お助けソフト」の「自動的に閉じるメッセージボックス」
> プロデルで実現する方法:「プログラミングに関するヒントとコツ」の「モーダルとモードレス」

利用してみます。
今後ともよろしくお願いいたします。

Re: 一定時間たつと表示を自然に消すには?

投稿者:アーク 投稿日:2024/10/08(Tue) 09:15:01 No.35

こんにちは。アークです。

その様な需要が有るので時間指定ができるダイアログを作成して、
配布していますのでご利用ください。
プロデルからの使い方も同梱してあります。
また、プロデルのプログラム内に書く方法も別途記載しています。
何方も私のサイトの初心者用コーナーで紹介しています。

専用ダイアログ:「開発お助けソフト」の「自動的に閉じるメッセージボックス」
プロデルで実現する方法:「プログラミングに関するヒントとコツ」の「モーダルとモードレス」

他にも色々と紹介しているのですが殆ど利用されていないようです。
宜しかったらどうぞ。

一定時間たつと表示を自然に消すには?

投稿者:KNIGHT 投稿日:2024/10/08(Tue) 08:37:47 No.34

お世話になります。

処理に時間がかかりそうな場合に、処理を先に進めておきながら、
「しばらくお待ちください」と 5 秒間表示後、その表示を自然に
閉じるにはどうすればよいでしょうか?

よろしくお願いいたします。

プログラムと設定ファイルの文字コード

投稿者:smorkin 投稿日:2024/07/11(Thu) 10:26:57 No.30

こんにちは、smorkinです。

質問ではなく報告です。
既知のことかもしれませんが、一応報告いたします。

先日から、設定ファイルへの書き込みと、設定ファイルからの読み込みがうまくいかず、試行錯誤を繰り返していました。

設定ファイルへの書き込みの文字列が少しおかしいので、思いついて文字コードを調べてみると、プログラムのファイルと設定ファイルの文字コードが違っていました。

 プログラムのファイル=ShiftJIS
 設定ファイル=UTF-8

設定ファイルの文字コードを ShiftJIS に変更したところ、正常に書き込み/読み込みが出来るようになりました。
なぜ文字コードが違ったのかは、よくわかりません。

以上です。

「内部大きさ」を指定します

投稿者:ゆうと <yutopia あっとまーくutopiat.net> 投稿日:2024/07/09(Tue) 18:01:35 No.29

こんにちは

スクロールバーは、キャンバスの用紙が部品の大きさよりも大きい時に表示されます。
用紙の大きさは「内部大きさ」で指定します。

参考にしてください。

---------------------
メイン画面を表示する
待機する
メイン画面とは
  ウィンドウを継承する
  はじめの手順
    初期化する
    ーー貼り付けた部品に対する操作をここに書きます
  終わり
  初期化する手順
    ーー自動生成された手順です。ここに書き加えたプログラムは消える可能性があります
    初期化開始する
    この実質大きさは{428,394}
    この内容は「メイン画面」
    この文字色は「標準の文字」
    キャンバス1というキャンバスを作る
      その位置と大きさは{0,0,428,394}
      その内部大きさは{1000,1000}
      その文字色は「標準の文字」
      そのドッキング方向は「全体」
    初期化終了する
    この設計スケール比率は{144,144}
  終わり
終わり

Re: キャンバスのスクロールバーについて

投稿者:アーク 投稿日:2024/07/09(Tue) 17:53:04 No.28

K-2硬すぎ案件 さん、アークです。

回答が付きませんね。
それは情報を削ぎ落し過ぎているせいで的確に回答できないからです。
それ程長くないのであれば全文載せた方が良いです。

また、何をしたいのかも具体的に書いた方が良いです。
それとパネルにキャンバスを作っていますが何か意図が有るのでしょうか。
「キャンバス1のドッキング方向を全体にする」と有るので意味が分かりません。

▲ページの先頭へ

- WebForum -