プロが教える店舗&オフィスのセキュリティ対策術

Wordで、分かち書きをするVBA

最大300文字の、対話型、非対話型の特定業種の文章群が、エクセルのセル1つに入っており、これが縦方向に10000行あります。

分かち書きをするVBAプログラムを教えてください。PCにはMS Office関連以外はインストールが許されない環境です。
MeCabはインストールが許されません。

質問者からの補足コメント

  • 辞書を参照するなら、Wordの辞書がありますが、新しく辞書を作ってもよいです。特定業種なので、単語は限定される。処理スピードはたぶん遅いかも、フリーズするかも。N‐gramはよく知りません。

      補足日時:2018/06/13 18:30

A 回答 (3件)

No.2の回答者です。



補足されている内容の意味が分かりません。
紹介したVBAでの処理に使っているのはIMEの辞書であり、Wordの
辞書などはありません。
処理される分かち書きも、最小の品詞単位になっています。
つまり、VBA専用の辞書があるわけではありません。

特定業種の単語をどのように処理したいのでしょうか?
例えば複数の検索用単語を用意し、その単語の後ろにスペースを
追加した置換をするとかでしょうか?
(品詞単位ではなく、文節単位)

分かち書きといわれても、WordVBAでも可能な単純な品詞で区切る
単語単位なのか、特定の単語での文節単位なのかで違ってきます。
補足で書かれている内容から、特定の単語での文節単位ですか?
何か規則性があるのでしょうか?
    • good
    • 0

こういうことをしたいのでしょうか?


http://upa-pc.blogspot.com/2015/04/excel-vba-sen …

上記VBAのままだと数字付きの改行されたものですが、数字なしの
スペースに変更すれば、分かち書きにできるのでは。
https://qiita.com/nezuq/items/a04833ccbb9b82a656a1
    • good
    • 1
この回答へのお礼

そんな感じです

お礼日時:2018/06/13 18:31

こんなの(↓)がありました。



TinySegmenter for VBA クラス版
https://qiita.com/acknpop/items/50d5e0da482689fc …
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!