Excelの読み込みについて

いつもお世話になっております。

Excelからデータを読み込む際に「表示形式を維持」というプロパティがありますが、
そちらを使うと処理が10倍ほど遅くなってしまいます。
やりたいことは、Excelからデータを読み込み→他のシートにコピーです。
処理速度が落ちない方法で、表示形式を維持したまま上記の処理を行う方法はございますでしょうか。

ご教授よろしくお願いいたします。

こんにちは

範囲をコピー (Copy Range)アクティビティ(パッケージが古いと範囲をコピー/貼り付け (Copy Paste Range)かもしれません)を試してみてはいかがでしょうか?

ご回答ありがとうございます。

「範囲をコピー」では書式が保持されるのですね。勉強になります。
しかし、言葉足らずで申し訳ございませんが、今回やりたいこととしては、
Excelをデータテーブルに読み込み→条件を満たす行に追記→データテーブルでExcelを上書き になります。

上記を踏まえて、方法ございましたらよろしくお願いいたします。

こんにちは

データテーブルに読み込むことが前提であるなら、表示形式を維持するためには
このオプションをチェックする以外にないように思えます。

あるいは、表示形式を維持しなくても、取り込んだ値の後処理で元の形式での処理可能な
場合もありますが、今回は具体的にどのようなデータを処理したいのでしょうか?
(エクセル上はこうだけど、DataTableに取り込むとこうなります的な説明があると
良いかもしれません)

ご回答ありがとうございます。

Excelでは「¥1,000」となっている(セルに入っている値は「1000」ですが、表示をユーザ定義にしています)のですが、DataTableに取り込むと「1000」と標準の表示形式になっています。
読み込むデータの列数が多い&定型ではないため、DataTableを構築しそこで設定することは考えていません。

余談ですが、日付形式は継承されるのですね。。

こんにちは

今回の書式維持の目的としてデータテーブルでの処理上円マークやカンマが必要でしょうか?
あるいは、そうではなく、書き込み先の書式維持が目的でしょうか?

後者であれば、書き込み側のシートの当該セルをあらかじめ希望する書式した上で
範囲書き込みを行うとその書式になります。

そのため、新規シートに書き込みを行うのではなく、テンプレート的なシートを用意しておき
それをコピーして、そこに書き込むという方法が良いように思えますが、いかがでしょうか?

書き込み先での書式維持が目的です。
教えて頂いた方法参考にしてみます。
ありがとうございます。

1 Like

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.