電子書籍の厳選無料作品が豊富!

エクセルの初心者です。

MATCH関数について、
1つのセルの中に5行以上の文書が入っていて、その中の2行目の頭から5文字目までで検索をしたいのですが・・・。

左から5文字目までは”Left”を使えばいいと思うのですが、2行目の指定はどのように命令すればいいのでしょうか?

以上、よろしくお願いします。

A 回答 (2件)

> 質問がダメだったのかもしれません。



この数式がなければ、この質問文から、言いたいことを読み取るのは至難の技だと思いますよ。
それで、「ALT+Enterで改行してあるのですね?」と聞いているのに肝心なことを書いていませんが、改行はAlt+Enterでやってるのですね?改行記号がはいっているのですね?そうでなくて自動改行なら打つ手なしです。

A1の頭から5文字が、C1の中で改行された2行目にあるかどうかを探すんですね?
それならとりあえずあいているD1にC1の2行目だけを取り出します。改行記号で改行された、3行以上あるデータなら、以下の式で2行目だけ取り出せます。

=MID(C1,FIND(CHAR(10),C1,1)+1,FIND(CHAR(10),C1,FIND(CHAR(10),C1,1)+1)-FIND(CHAR(10),C1,1)-1)

取り出したD列を
=MATCH(LEFT(A1,5)&"*",$D$1:$D$100,0) で検索したらいかがですか?
    • good
    • 0
この回答へのお礼

できました。ありがとうござました。

お礼日時:2007/12/19 18:32

MATCH関数ではないですね。



> 1つのセルの中に5行以上の文書

ALT+Enterで改行してあるのですね?
それなら目には見えませんが改行記号が入っています。2行目であればその最初の改行記号の1つ後ろからMID関数で5文字拾えばいいわけです。
A1セルが対象だとして、改行記号はCHAR(10)ですから、

=MID(A1,FIND(CHAR(10),A1,1)+1,5)  でどうでしょう?

この回答への補足

MIDで試してみたのですが、うまくいきません。

質問がダメだったのかもしれません。

エクセルのイメージはこれです。

セルA1 | セルB1 | セルC1 
             セルC2
              ・
              ・
              ・
             セルC100

セルA1の文字列の先頭から5文字を、
セルC1~セルC100までの中から見つけ出し、
セルB1に何番目かをだすというものです。

ただし、C列の中は改行文で、2行目の文から見つけたいです。
これまでは、セルC1~C100の文は1行だったので、
=MATCH(LEFT(A1,5)&"*",$C$1:$C$100,0)
でセルB1に出せていたのですが、
C1~C100が5行程の文になり、2行目のはじめからという設定必要になっています。

以上、よろしくお願いします。



     

補足日時:2007/12/19 10:13
    • good
    • 0

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

このQ&Aを見た人はこんなQ&Aも見ています

関連するカテゴリからQ&Aを探す