喫茶XRAYトップページ

[スレッド全体
]

[1661] ExcelApplicationで教えて返信 削除
2008/5/15 (木) 22:35:04 pal
毎度お世話になっています

ExcelApplicationでテーブルのデータを取り込もうとしています
xrayさんのサンプルを参考に簡単に取り込めましたが
商品コードのような頭ゼロ詰めの値が数値としてセットされてしまいます
カラムの属性かなんか文字列として頭ゼロ詰めを残す方法がありますでしょうか?
どなたかご教授ください。

[1662] Re:ExcelApplicationで教えて 先頭が0の文字列の扱い返信 削除
2008/5/16 (金) 14:06:27 Mr.XRAY
▼ palさんこんにちは。

> カラムの属性かなんか文字列として頭ゼロ詰めを残す方法がありますでしょうか?

状況に応じていろいろ考えられますが、

(1) セル(palさんの場合は列かもしれませんが)の書式をあらかじめ
    設定してもかまわないなら、その列の書式を「文字列」に設定
    しておく、または、実行時に設定する。

(2) そのセルに代入する値(文字列)の先頭に'を付加しておく。
    あるいは、実行時に付加する。
    エクセルでは、先頭が'であると文字列として認識するので。

(2)の場合、先頭に'を付加するには、
    StrText := '''文字列';
変数であれば、
    StrText := ''''+StrText;
といった具合です。何か関数でもあったかも知れません。ないか?

[1663] Re2:ExcelApplicationで教えて 先頭が0の文字列の扱い返信 削除
2008/5/16 (金) 22:17:44 pal
▼ Mr.XRAYさん
> (1) セル(palさんの場合は列かもしれませんが)の書式をあらかじめ
>     設定してもかまわないなら、その列の書式を「文字列」に設定
>     しておく、または、実行時に設定する。
>
> (2) そのセルに代入する値(文字列)の先頭に'を付加しておく。
>     あるいは、実行時に付加する。
>     エクセルでは、先頭が'であると文字列として認識するので。
>
> (2)の場合、先頭に'を付加するには、
>     StrText := '''文字列';
> 変数であれば、
>     StrText := ''''+StrText;
> といった具合です。何か関数でもあったかも知れません。ないか?


ありがとうございます。
(2)の方法でうまくいきました
でも実はこのTExcelApplicationでの速度が異常に遅いので
マスターのHPでご紹介いただいているM&Iさんのxbiffを
今回使用しています。xbiffで上記(2)の方法をとってみたのですが
「’」がもろにでてしまいます。
テーブルの一覧をxlsに落とすのにxbiffだと逆に異常に速いんですね。

ADOでできないかな?
明日でもやってみよう・・・・


[1664] Re3:ExcelApplicationで教えて 先頭が0の文字列の扱い返信 削除
2008/5/16 (金) 23:45:25 Mr.XRAY
▼ palさん

> でも実はこのTExcelApplicationでの速度が異常に遅いので
> マスターのHPでご紹介いただいているM&Iさんのxbiffを


TExcelApplicationはVBAですから、どうしょうもないですね。
XBiffは直接ファイル構造から読み込んでいますから、当然速いです。
通常の用途ではXBiffで十分だと思います。

もっといろいろな操作をする際に速いのはExcel Createrですね。
ただし、これは使用するPCにDLL(使用するプログラムのフォルダ内に)
が必要です。


>今回使用しています。xbiffで上記(2)の方法をとってみたのですが
>「’」がもろにでてしまいます。


う〜ん。XBiffでもできると思うんですが。
時間があったらテストしてみます。期待しないでください。

[1665] Re4:ExcelApplicationで教えて 先頭が0の文字列の扱い返信 削除
2008/5/16 (金) 23:51:06 Mr.XRAY
> 時間があったらテストしてみます。期待しないでください。

ちょっと見てみようと思って、XBiff.pasを開いたら、
ゲッゲ、かなり古いバージョン、これからDLして、明日以降ですね (^_^;)

[▼次のスレッド]
INCM/CMT
Cyclamen v3.82