• ベストアンサー

エクセルでアルファベットと日本語の文字列を分割する方法

Wendy02の回答

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.6

こんばんは。 #3 のWendy02 です。 数式の場合は、こんに風に、等式を変えればよいと思います。 "ぁ"にした理由は特にありません。"ァ"でもよいのですが、"ぁ"のほうが小さいからです。 C列 =MID(A1,1,MATCH(TRUE,INDEX(MID(A1,ROW($A$1:$A$256),1)<"ぁ",,),0)-1) D列に出力 (こちらは同じです) =SUBSTITUTE(A1,C1,"") マクロは、17行目あたりの以下のコードを   If StrComp(StrConv(Mid(c.Value, i, 1), vbNarrow), "~") > 0 Then   ↓   If StrComp(StrConv(Mid(c.Value, i, 1), vbNarrow), "ぁ") < 0 Then に変えればよいです。 なお、混在している場合の切り分けは、また、ここの回答の補足などでご相談ください。

kkaazzuu
質問者

補足

ありがとうございます ただ、これですと ローリング・ストーンズRolling Stonesが "ローリング" "・ストーンズRolling Stones" となってしまいます

関連するQ&A

  • エクセルで数字とアルファベットと文字列を分割する方法

    こんばんは。 エクセルのセルで数字とアルファベットの文字列を分割する方法を教えて下さい。 100AB3.4C → "100" "AB" "3.4" "C" 間にスペースやカンマなど無く、文字数は異なります。 数字は小数点がある場合と無い場合があります。(上記の "100" "3.4" のように) 同じ列に同様のデータが数件~数千件あり、まとめて分割したいです。 関数もしくはマクロ(VBA)で可能であれば教えて下さい。 最近マクロの勉強を初めたのですが、方法が思いつきません。。。 宜しくお願いします。

  • 文字列内の記号、スペースなどを削除する方法

    エクセル2000 OS:WinXPpro 本人の技量レベル:VBAはコピペして実行しても、修正が出来ないので、なるべく関数で処理したい。 半角カタカナ英数だけの文字列を作りたいのです。 元のデータには()などの記号、句読点、スペース等が含まれています。 一応TRIM関数で余分なスペースは削除しましたが文字列中の半角スペースが残っています。 これを半角カタカナ英数だけを残してベタの文字列にしたいのです。

  • エクセルで文字列をスペースで列に分割

    エクセルマクロ超初心者です。 住所録を作成しているのですが、既存データの形式が、G列に郵便番号と住所がスペースを挟んで同一セルに入っています。 コレを、何かボタンを押したら郵便番号と住所を別々の列に分割するようなマクロを教えて頂きたいのですが。色々本で調べているのですが思うように進みません。 教えていただけると非常に助かります。

  • Excelでカンマ区切りの文字列をセルに分割する?

     住所録をExcelにコピーしたら、 カンマ区切りに一つのセルに入ってしまいました。 ◇カンマごとに一つのセルに分割して文字列を分ける。 ◇氏と名の間は半角スペースでカンマでは有りませんが、   二つのセルに分ける。 上記について分ける関数を教えてください。    

  • Excelで任意の文字列を半角スペースで分割

    一つのセルに複数の内容が半角スペースで区切られて記載されているデータがあります。 これを半角スペースで分割することは可能でしょうか? 例:A列に 01 22 3 444 5555 6 77 888 999 111 222 333 11111 2 33 44 5555 これをB~J列に B C D E F G H I J 01 22 3 444 5555 6 77 888 999 111 222 333 11111 2 33 44 5555 という様に自動的に分割・入力させたいのですが可能でしょうか? ※添付イメージを参照ください。 A列の様な形式のデータを日常的に分割する必要があり、現在は[データ>区切り位置]で手動入力を行っているのですが手間がかかる上ミスをしてしまうこともありなんとか自動化したいのです。 項目数・文字数ともデータによりバラバラなため、単にfind関数やmid関数などを使っても上手く行かず、 アイデアをいただけますと助かります。何卒よろしくお願い致します。 ※実際の環境では「BS列に記載の内容をBT列以下に入力」「データの内容は【aaa.jpg bb_1.gif …】の様な画像ファイル名」となりますが質問ではシンプルにさせていただきました。

  • 【エクセル】文字列分割の関数

    エクセルで文字列を分割する数式を探しております。 以下のデータを 右から4桁とそれ以外に分割したいのです。 20002  → 2 0002 30003  → 3 0003 40010  → 4 0010 511000 → 51 1000 1019550 →101 9550 1012279 →101 2279 2019220 →201 9220 3338850 →333 8550 たとえばLEFT関数やRIGHT関数ですと、分割というよりも 抽出になってしまい、私の求めているものとは異なってしまいます。 考えが煮詰まってしまい、これ以上進めない状態です。。。 何卒よろしくお願いいたします。

  • EXCELで、文字列を任意の文字数毎に分割するには

    ≪やりたい内容と条件≫ ◆EXCELで、文字列を任意の文字数毎に分割したいです。 ◆文字列は、全角・半角・記号を含みます。 ◆1つのセルが半角80桁という制限があり、その上限を超えると、右の次のセルに流し込まれるようにしたいです。(A1は元の文字列1500桁くらい、以降B1,C1,D1,E1・・・という具合に流し込み) ≪試した内容≫ MIDB関数を見つけ挑戦しましたが、1つ目のセルはうまくいきますが、その後が出来ません。例えば、文字列が「・・・・・・abcあいうえお」となっていた場合、B1は「・・・・・・abcあいう」、C1は「 お」(「お」の前は、半角スペース)となります。 何かよい方法はないでしょうか。 一度に出来ないようであれば、A1-B1で残りの文字列が表示できれば、それ以降はまた関数を入れて一つ一つやっていきたいと思っています。 よろしくお願いいたします。

  • 文字列を分割したい。

    (A1)のセルにある文字列は、数個の文字列をスペース(半角)を開けて配置しています。 (2行目以下も同様の多種の文字列があります。) サンプル 「学校 東京 神奈川県横浜市 ABC アメリカ」 これを、 1行目のセルに関数を用いて、 (B1)に「学校」 (C1)に「東京」 (D1)に「神奈川県横浜市」 (E1)に「ABC」 (F1)に「アメリカ」 と表示したいのです。 関数で処理できましたら、その関数式を教えてください。 関数で処理できない場合は、マクロを教えていただければありがたいです。 よろしくお願いします。 ※エクセルの「区切り位置]機能を試しましたが、うまくいかないようです。

  • エクセル関数の文字列操作で困ったことが

    競馬のオッズデータの取り込みを行っていますが、外部データをエクセルのシート(sheet2)に取り込んだ際、決まった場所に単勝と複勝のオッズデータが入っているのですが、(000022000336・・・のように6バイトを1頭分のオッズとして表示:上の例では馬番(1)のオッズが2.2倍、馬番(2)のオッズが33.6倍というように)17頭までは文字列でずらーっと表示されるのになぜか18頭のときだけ1.17E+105などというような表示になってしまいます。 このオッズデータからMID関数で6文字ずつ分割してそれぞれの馬番のセルに貼り付けていたので18頭の時はエラーになってしまいます。参考書はVBAでプログラムを組んでオッズの取り込みからセルへの貼り付けまでスムーズに行えているようですが、私がやってもVBAでうまくいかないためやむを得ずエクセル関数で処理した次第です。 この問題うまく解決できますか?

  • セル内文字列を分割する方法

    Excelの文字列操作について質問です。 2つのセルの内容を1つのセルに結合する関数はあると思うのですが、逆に1つのセルの中身を複数のセルに分割したいときには、どうしたらよいのでしょうか。 例えば、 「Q1-1&Q1-2&Q2-1&Q2-2&Q3-1&Q3-2」 このようなセルの内容を以下のように「&」の前後で切り離したいのです。 「Q1-1」「Q1-2」「Q2-1」「Q2-2」「Q3-1」「Q3-2」 何か関数があるのでしょうか。ご存知の方がいらっしゃいましたら、教えてください。