• ベストアンサー

セル内からの数字の抽出

複数のセルがあり、そのセルそれぞれに、 「(文字列A)(数字1) (文字列B)(数字2)」 と入力してあります。(文字列A)と(文字列B)は、定型文字列なので、複数のセルがありますが、同じ文字列が入っています。 一方で、(数字1)(数字2)は、それぞれのセルによって、異なった数字が入っています。 ただし、セルによっては、(文字列A)(数字1)は、入力していないものもあります。 このようなセルが複数ある中から、(数字1)だけを抽出して、セル内に「(数字1)」だけの列を作りたいのですが、何かよい方法はないでしょうか?よろしくお願いします。

  • yunji
  • お礼率9% (99/1092)

質問者が選んだベストアンサー

  • ベストアンサー
  • shintaro-2
  • ベストアンサー率36% (2266/6244)
回答No.1

文字列が提携としたら、文字数をn 数字は必要な桁をm 空白セルは、if文で対応して =IF(A1="",0,VALUE(MID(A1,n,m))) これで如何?

その他の回答 (5)

  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.6

#02です (文字列A)が固定長なら(この例は2桁固定の場合) =IF(LEFT(A1,1)=" ","",MID(A1,3,2)) (文字列A)が不定長なら =IF(LEFT(A1,1)=" ","",MID(A1,MIN(FIND({0,1,2,3,4,5,6,7,8,9},A1&"0123456789")),2)) 余計ですが(文字列A)(数字1)ともに不定長で(数字1)と(文字列B)の間に半角スペースがあるなら =IF(LEFT(A1,1)=" ","",MID(A1,MIN(FIND({0,1,2,3,4,5,6,7,8,9},A1&"0123456789")),FIND(" ",A1)-MIN(FIND({0,1,2,3,4,5,6,7,8,9},A1&"0123456789"))))

noname#79209
noname#79209
回答No.5

#4です。ゴメンナサイ、入力ミスがありました。 8行目 誤: 1行目は「AAA_12」「BBB」「10:10」、2行目は「空白」「BBB」「12:05」とセルを分けることが出来ます。 性: 1行目は「AAA12」「BBB」「10:10」、2行目は「空白」「BBB」「12:05」とセルを分けることが出来ます。 「AAA_12」は「AAA12」の間違いです。

noname#79209
noname#79209
回答No.4

何かの機器から出力されるログデータのテキストファイルのように見えますが、 もしそうなら、毎回取り込んでいるのでしょう。 だったら、取込直後に 「データ」-「区切り位置」を使えば AAA12_BBB_10:10 _BBB_12:05 を 1行目は「AAA_12」「BBB」「10:10」、2行目は「空白」「BBB」「12:05」とセルを分けることが出来ます。 あるいは、直接テキストファイルを開かずに、 「データ」-「外部データの取込」で データ区切りに「スペース」を指定してやれば、上記と同じかたちでセル分けされて取り込まれます。 そのうえで、 =IF(ISERR(FIND("文字列A",A1,1)),"",RIGHT(A1,2)) とすればOKです。 実際の数字の取り出し部分は「RIGHT(A1,2)」だけとなり、後ろにある「文字列B」や「時間データ」を全く気にせずに済みます。 このように、出来てしまった結果で悩むより、「上流で対策を施す」方が簡単になることがあります。 ご参考まで...

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.3

A列のデータをB列に抽出する一例ですが、次の方法は如何でしょうか。 B1に=IF(LEFT(A1,2)="文字列A",MID(A1,3,2)*1,"")を設定し、下方向にコピー 因みに抽出数字は数値、文字列Aが存在しない場合は空セルにしています。

  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.2

4点について補足要求です 1)文字列Bは「定型文字列」とのことですが、1パターンの固定文字列ですか? それとも複数パターンあるのですか? それによって方法が変わります。 2)(数字1)と(文字列B)の間に空白があるように見えますが、実際のデータには空白はありますか? 3) >セルによっては、(文字列A)(数字1)は、入力していないものもあります。 このセルは(文字列B)(数字2)だけと思って良いですか 4)数字の長さは固定長ですか? 可変長ですか?

yunji
質問者

補足

補足します。 1)固定の文字列です。 2)おっしゃるとおり、空白(半角スペース)があります。 3)思ってもらってよいですが(文字列B)の前に半角スペースがあります。 4)固定長です。数字1:二桁(半角)、数字2:??:??←時間で半角 さらに詳しくは、 (文字列A)(数字1)_(文字列B)_(数字2) or _(文字列B)_(数字2) _:半角スペースを表します。

関連するQ&A

  • Excel のセル内の数字抽出

    セルの中にランダムの数字が入っている状態から、共通する数字を抽出する方法を教えてください。 例    A  B   C  D  E   F  G  H   I 1 228 236 246 258 241 452 785 453 741 2 478 247 236 159 147 236 478 345 236 3 222 223 445 160 401 305 360 236 474 この様な数字が1つのセルの中に入力されていて 1、236という数字がこの表の中にいくつ存在するかを抽出する方法。 2、各行・列を参照して共通する236を抽出する方法。 以上2点についてお願いいたします。

  • EXCELで同じ数字だけを抽出する方法

    Windows XP です。 A列に数字が入力されています。 この中には、 Aという数値の数字が複数個 Bという数値の数字が複数個 入力されている可能性があり、それ以外の数字は それぞれ1個づつ入力されています。 このような場合、A、Bだけを抽出する方法を 教えてください。 宜しくお願いいたします。

  • エクセル 文字列から数字だけを抽出

    エクセル2016の操作について教えて下さい。 セル内の文字列から数字だけを抽出したいです。 例えばAの列にこのような文字列が入っているとします。 高度5km 高度10.1km この中の数字だけを取り出して隣のB列の同じ行に数字だけを表示させる方法がありましたら教えて下さい。 宜しくお願いします。

  • EXCELで、文字列の中から数字を抽出したいのですが。

    お世話になります。 EXCELにおいて、A1のセルに文字と数字が入力されています。この中から、最初の数字のみを、B1に抽出したのですが、ご教示お願いします。 文字の長さと数字の位置は、様々な文字列です。 宜しくお願い致します。

  • 表の中でもっとも多く使用されている文字(数字)を抽出するには

     |A|B|C|D| -------------- 1|あ|い|う|え| -------------- 2|お|あ|あ|か| -------------- 上記は1行目に左から「あ」「い」「う」「え」が入力されていることを表しています。 この表の中から、一番多く入力されている文字だけを別のセルに抽出させるにはどのようにしたら良いでしょうか。 上記の例を使用すると、A列の5行目(任意のセル)に「あ」と抽出するようにしたいです。 いろいろと調べてみましたが、このように表の中で最も多く入力されている、「文字」または「数字」だけを抽出するという処理方法がみつかりませんでした。 マクロなら可能でしょうか? このような処理ができる関数もなさそうなので、無理なのかな。 アドバイスを御願い致します。

  • エクセルのセル内から数字だけを抽出する方法を教えて下さい

    エクセルのセル内から数字だけを抽出する方法を教えて下さい あるデータの列(備考欄)には様々な文字が入っていて、 その中に●名(●は数字)が入っています その数字だけを取り出して 別の列に移す関数を教えて下さい ※この列には他の数字は入っていません、最大で2ケタです よろしくお願いします

  • エクセル関数(抽出)について

    宜しくお願い致します。 A列にランダムな数字が入力されている。(重複する数字はない) B列にランダムな数字が入力されている。(重複する数字がある) ここで、A列のセルの数字をB列の任意値分全部抽出したいのです。    A   B 1 815  9 2 330  8 3 209  6  4 110  9  5  24  9 6 782  5 7   3  9 これを以下のようにする方法を教えて下さい。 9 815 9 110 9  24 9   3 ※このA列の”9”もセルの中で指定したいのです。

  • エクセルで数字が入ったセルの値を抽出

    任意1行中のある1列にFALSEと1列だけ数字が入っています(下図参照)。その数字を抽出する関数があれば教えて下さい。 下図の例では、Fの列にB2:E2の範囲の数字「10」を抽出したいのです。マクロを組めば可能なのですが、セルに入力する関数等で簡単に実現できればと思います。 アドバイス宜しくお願いします。

  • セルの中の数字をカンマごとに各セルに抽出したい!!

    例 A1  12,345,678   ↓   B1 12   B2 345    B3 678 上記のようにセルA1に12,345,678と入力されていてカンマ区切りで別のセルに数字を抽出することはできますか? お力をお貸しくださいませ!

  • 数字の桁ごとに、各セルに抽出

    最大11桁の数字を各セルに抽出したい。 金額をF列に入力すると、 D列には下3桁が表示され、 C列には右から6桁~4桁、 B列には右から9桁~7桁、 A列には右から11桁~10桁と、 表示されるように、関数を組みたいです。

専門家に質問してみよう