次の方法で共有

適切なエクセル関数等はありますでしょうか?どなたか分かる方教えて頂けると嬉しいです(^O^)/

Anonymous
2018-02-23T08:41:39+00:00

エクセルで選んだセルの範囲内にある複数の文字列の数量をそれぞれ出力する方法があれば教えて欲しいです。

文字列の量が多いので、関数の数式に特定の文字列を入力する関数ではできません。

具体的には、英語表記の数百個の商品名をエクセルに打ち込み、どのワードが何回使われているかが知りたいのです。

商品名の各英語ワードの間はスペースなのでセルに分割まではできたのですが、

範囲指定したセル内に含まれる複数のワードの数量を出力したいのですが、適切な関数などが見つかりません。。

どなたかわかる方教えていただけると嬉しいですo(^o^)o

** モデレーター注 **

この質問は [Office | Excel | Mac | Office 365 for business] のカテゴリーに投稿されましたが、内容から判断し、こちらのカテゴリに移動いたしました。適切なカテゴリーに投稿すると、返信や回答が得られやすくなり、同じ質問を持つ他のユーザーの参考にもなります。

Microsoft 365 と Office | Excel | 家庭向け | Windows

ロックされた質問。 この質問は、Microsoft サポート コミュニティから移行されました。 役に立つかどうかに投票することはできますが、コメントの追加、質問への返信やフォローはできません。

0 件のコメント コメントはありません

質問作成者が受け入れた回答

Makapu 92,110 評価のポイント ボランティア モデレーター
2018-03-19T22:59:29+00:00

こんにちは。

>これまでに紹介した方法で、1列に表示する方法がまだ解決していないようだったら、以下のようなWordを利用する操作が簡単です。

Excelで対象範囲をCtrl+Cでコピーし、ワードにCtrl+Vで貼り付けし、Ctrl+Hで置換ダイアログを出して「オプション」ボタンをクリックして「あいまい検索」のチェックを外して「検索する文字列」に「 」(スペース)、置換後の文字列に「^p」と入力して(「特殊文字」で「段落記号(p)」を選択)、「すべて置換」し、最後にCtrl+Aですべて選択しCtrl+Cでコピーして、Excelで空白列にCtrl+Vで貼り付ければ完成です。

>「オプション」ボタンをクリックして「あいまい検索」のチェックを外して

→「オプション」ボタンが表示されません。「あいまい検索」することもできません。

そもそもですが、WindowsとMacではワード機能や表示に違いがあるのではないでしょうか?

Mac で一列にする部分を試してみました所、こちらでは上手く行った様です。

  1. Excel の文字列をcommand+c でコピーします。(※区切り文字は半角スペース)

  1. Word 文書に [編集] >[形式を選択してペースト]>[テキスト]で貼り付けます。

   

  1. Ctrl+H で検索と置換ウィンドウを表示させたら、歯車マークをクリックし、[高度な検索と置換]をクリックします。

(またはメニューより[編集] > [検索] > [高度な検索と置換])

      ![](https://learn-attachment.microsoft.com/api/attachments/f5fdd213-fd2b-4a88-a243-d211e24d5a33?platform=QnA"4">

  • 高度な検索画面が出たら、画面左下の[▽]をクリックして、詳細設定を表示させます。
  • 5.   「あいまい検索」のチェックを外して「検索する文字列」に「 」(スペース)、置換後の文字列に「^p」と入力して)「すべて置換」

    (※(「特殊文字」で「段落記号(p)」を選択した所、段落記号が見える状態でExcelにコピーされてしまったので、段落記号は外しました。)

    6. 置換後、Word 縦に並びましたので、Command+c でコピーしてExcelに貼り付けます。

    7.  Excelに縦に貼りつきました。

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません

    質問作成者が受け入れた回答

    Anonymous
    2018-03-19T12:29:31+00:00

    TEXTJOIN関数が使えるなら以下の数式で文字列を結合してください。

    この関数なら最大文字数は3万語以上いけるはずです。

    =TEXTJOIN(" ",TRUE,A列のデータ範囲)

    この後、このセルをコピーしてそのまま「値」貼り付けして「区切り位置」処理してセル分割し、そのセル範囲をコピーして「形式を選択して貼り付け」で「行列を入れ替える」して縦の1列のデータにして、ピボットテーブルで集計(項目名に商品名とつけておき、行ラベルとΣ値に商品名)または「重複の削除」で商品名一覧を作成しCOUNTIF関数で個数をカウントしてください。

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません

    39 件の追加の回答

    並べ替え方法: 最も役に立つ
    1. Anonymous
      2018-02-25T13:30:07+00:00

      >商品数は1つではなく、今回の場合は具体的には164個あります。

      私の回答は商品数がいくつあっても対応できる方法ですが、実際にやってみて、どのようにうまくいかなかったのでしょうか?

      A1セルだけでなくA2セル以下にもスペースで区切られた商品名の文字列があるということなら、その2つのセルを選択して「文字の割り付け」をしてみてください。

      この回答は役に立ちましたか?

      0 件のコメント コメントはありません
    2. Anonymous
      2018-02-24T10:59:16+00:00

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

      商品数は1つではなく、今回の場合は具体的には164個あります。

      これら164個の商品名の中で使われている各単語が、それぞれ何回表記されているかを一覧表として出力したいのです。。

      この回答は役に立ちましたか?

      0 件のコメント コメントはありません
    3. Anonymous
      2018-02-23T09:54:38+00:00

      >具体的には、英語表記の数百個の商品名をエクセルに打ち込み、どのワードが何回使われているかが知りたいのです。

      スペースで区切られた英文字データの出現回数の一覧表を作成したいということでしょうか。

      その場合は、区切り位置の機能を利用するよりも、以下のような手順で列方向にデータを分割し、そのデータの重複を削除し、COUNTIF関数で集計するのが簡単です。

      例えばA1セルにスペースで区切られ英文字が入力されているなら、A列の列幅を「1.88(20ピクセル)」程度の英文字が2つ程度しか入らない列幅にして、A1セルを選択してホームタブの「フィル」で「文字の割り付け」を行います。

      そのまま、縦方向に分割された英文字列を選択した状態でCtrl+Cでコピーし、例えばC1セルにCtrl+Vで貼り付けます。

      そのまま、C列のデータ範囲が選択されている状態で、データタブの「重複の削除」をします。

      C1セル以下に重複のない英文字列が表示されていますので、D1セルに以下の式を入力して下方向にオートフィル(セルの右下をダブルクリック)すれば、それぞれの英単語の数を表示できます。

      =COUNTIF(A:A,C1)

      この回答は役に立ちましたか?

      0 件のコメント コメントはありません