[リストへもどる]   [VBレスキュー(花ちゃん)]
一括表示

投稿時間:2006/02/10(Fri) 17:33
投稿者名:名雪
Eメール:
URL :
タイトル:
文字列の引用符がある区切り方
文字列を区切り文字(,)を使用して分ける時は
Split関数を使用するのは知っているのですが、
文字列の引用符(")の間に区切り文字(,)がある時は
区切り文字としないで文字列として取得する方法はありますでしょうか?


宜しくお願いします。


VB:6.0 SP6

投稿時間:2006/02/10(Fri) 17:54
投稿者名:GOD
Eメール:
URL :
タイトル:
Re: 文字列の引用符がある区切り方
> 文字列を区切り文字(,)を使用して分ける時は
> Split関数を使用するのは知っているのですが、
> 文字列の引用符(")の間に区切り文字(,)がある時は
> 区切り文字としないで文字列として取得する方法はありますでしょうか?
>
そんな便利なの標準ではなかったと思う。(あればCSV関係の処理が簡単になりそうだけど)

ぱっと思いつく作り方)
(1) Instrで開始側の引用符検索。
(2) Instrで終了側の引用符検索。
(3) 間に区切り文字があったら別の文字(使わないようなものChr(&H7F)とか)に変換する。
    (Replaceしたほうがいいのかな?)
(4) (1)〜(3)を文章の終わりまで繰り返す。
(5) 区切り文字でSplitする。
(6) ReplaceでChr(&H7F)を区切り文字に直す。

#う〜ん、処理に時間が掛かりそうだ^^;

あとはCSVファイルとして吐き出して、Excel起動してセルを総なめするとか?

投稿時間:2006/02/10(Fri) 18:07
投稿者名:名雪
Eメール:
URL :
タイトル:
Re^2: 文字列の引用符がある区切り方
GOD様

やはり標準ではなさそうですね。
とりあえず、自分で作成する方向で頑張ってみます。

有難う御座いました。

投稿時間:2006/02/10(Fri) 18:29
投稿者名:ダンボ
URL :
タイトル:
Re^3: 文字列の引用符がある区切り方
"ABC,DEF,GHI","JKL,MNO",…

という具合のデータなんでしょ?
それで異なる意味のデリミタに同じカンマが用いられていることが問題の根本原因でしょ?

だとすれば、そのデータをcsv形式としてEXCELに読ませて、今度はtab区切りのtxt文書として
保存すれば、

ABC,DEF,GHItabJKL,MNOtab

となって、splitの使い様もあると思うな。(データにbinaryがあると駄目)