2017-01-06 12 views
0

私はVBAの専門家ではないと言って始めます。私はちょうどそれを学んでいます。リスト内の単語の頻度をカウントする

マクロを使用してExcelでテキスト文字列を数える可能性に関する質問があります。 Excelファイルには2万以上のテキスト文字列があるので、私は 'Countif'関数を使うことはできません。それは私が推測する長い手順です。

私はVBAコードを使用してテキスト文字列をスキャンし、その頻度で整理する可能性について考えていました。例えば

、私のファイルでこのような単語のセット(異なるセル内の各)があります。

家、 バルコニー、フラット 、 アパート、 家、 家、 庭は、 事、 収入、 はフラット、 ... ウィンドウ

私はExcelがすべて異なるテキスト文字列をスキャンし、目に戻ってくるようにする方法があるかどうかを知りたい

eの周波数をそれぞれのための。

私は、Pythonやいくつかのアドインなどの簡単な方法があるかもしれないが、私たちはそれを仕事でやる必要があることを知っている。私は同僚にPythonや他のプログラミング言語また、現時点ではソフトウェアを購入することもできません。

お手数ですが助けてください!

+0

http://stackoverflow.com/questions/21858874/counting-the- excel-words-in-excel-strings – cyboashu

+0

セルごとに1つの文字列を入力するには、ピボットテーブルを使用します。 – brettdj

+0

countifを使用すると、20000の値はまったく問題にならないはずです。列全体を選択するだけです。もしあなたがこの困難なことをreeeeeeeeally wanrtしたら、あなたは:バリアント配列に値を読み込み、単語ごとの合計を記録するための辞書アプローチを取って、レコードセットをループして辞書に追加し、再びループして値を出力します。編集:繁殖の答えはあなたが必要なものに最適です – User632716

答えて

3

単純なピボットテーブル(VBAなし - しかし、必要であれば、コードすることができる)

Debra's偉大なウェブサイトを参照してください

enter image description here

+0

ありがとうbrettdj!私の元のファイルの問題は、私はExcelファイルのすべての22k単語(謝罪、私は十分に明確にしていないと思う)のすべてのアイデアがないということです。あなたの例では、行ラベルをコンパイルするには、ファイル内の一意の値を知っていなければならないと思います。しかし、私が知る限り、私のファイルには一意の値が10kもあるかもしれないので、それぞれの値を調べて、重複するものと固有の値を見ることは非常に難しいでしょう。だから私は、自動的にすべてのセルをスキャンして周波数を数えることができるものを見つけたかったのです。 – Mark

+1

@マークなし - 出力は範囲に基づいて自動です:)あなたはユニークなレコードのリストを作る必要はありません。それは自動です。 – brettdj

関連する問題