[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『指定用語から指定文字数を抜き取る関数』(ららら)
A1を対象として指定用語から指定文字数の文字列(指定用語含む)を抜き取る関数を教えてくだだい。
Findとmidで上手くできませんでした。
< 使用 Excel:Excel2016、使用 OS:Windows7 >
このようなことだろうか? A B C D 1 ABCDEFGHIJK C 5 ABHIJK
A1セルの文字列からB1セルの文字を探しだしそこからC1セルの文字数分抜き取る。
D1セルに =REPLACE(A1,IFERROR(FIND(B1,A1),LEN(A1)+1),C1,"") で。
追記 =IFERROR(REPLACE(A1,FIND(B1,A1),C1,""),A1) これでいいか。 (ねむねむ) 2016/12/01(木) 14:22
A1に「ぶらぶら旅行に滋賀県に行きましょう」とあった場合、
セルではなく関数内で「A1」「県」「2」「4」と指定することで
「滋賀県に行きま」を取り出したいです。
質問が少し拡大してますが、ご教授をお願い致します。
(ららら) 2016/12/01(木) 15:02
抜き取るというのはそこを消すのではなくそこ以外を消すということか。
=LEFT(REPLACE(A1,1,FIND("県",A1)-2-1,""),4+3) ではどうか?
2、4の指定がわかりやすいように「-2-1」「4+3」としているのでそこは「-3」「7」でも構わない。
追記 もっとわかりやすくすると =LEFT(REPLACE(A1,1,FIND("県",A1)-2-1,""),4+2+1) か。 (ねむねむ) 2016/12/01(木) 15:10
A B C D E 1 ぶらぶら旅行に滋賀県に行きましょう 2 3 A1 県 2 4 4 5 滋賀県に行きま
A3にセル B3に検索文字 C3に前シフト数 D3に後シフト数
A5 =MID(INDIRECT(A3),FIND(B3,INDIRECT(A3))-C3,LEN(B3)+SUM(C3:D3)) (GobGob) 2016/12/05(月) 09:14
あー。数式内ね。。。
=MID(A1,FIND("県",A1)-2,LEN("県")+2+4) (GobGob) 2016/12/05(月) 09:21
全く見向きもされないでしょうけど、遊びでUDF。
Function CripText(s As String, ch As String, before As Long, after As Long) As String With CreateObject("VBScript.RegExp") .Pattern = ".{" & before & "}" & ch & ".{" & after & "}" CripText = .Execute(s)(0) End With End Function
こんなコードを書いておいて、セル側では
=CripText(A1,"県",2,4) といったように使います。
(β) 2016/12/05(月) 09:37
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.