advanced help
per page, with , order by , clip by
Results of 1 - 1 of about 1385 for ������������ #N/A (0.016 sec.)
[[20041215170531]]
#score: 6930
@digest: d72c758a809472a15da69df15303b1f8
@id: 10855
@mdate: 2004-12-16T03:23:14Z
@size: 3925
@type: text/plain
#keywords: myflaga (26829), abcd01efghij234 (22676), myflagb (21365), efghij (20578), abcdef2a (15630), abcdef1 (15630), d55s1w1d54d8dd (15368), ss14s12as51d24 (15368), 121sd54s14a215x (15368), dddd1ffffff0 (15368), 1fffff12354 (15368), 1s25saw5s15sd5 (15368), ssawssd (15368), s41sa1s512ssaqs (15368), d564a1111 (15368), ss141s4254as (15368), ss1415aq1s2154 (15368), 1s47aaqs8854c1 (15368), 145sw45aaz142s (15368), a1ss11ww5454ss5 (15368), d15ss41vb245de (15368), temp1 (11394), fffff (8989), ffffff (8350), sw45aaz (7815), s12as51d (7815), sd54s14a (7815), ss11ww5454ss (7815), s1w1d54d (7815), s47aaqs8854c (7815), s25saw5s15sd (7815), gggg (3581)
『数字で挟まれた文字列の見抜きだし』(しろ)
質問内容:文字列 abcd01efghij234 のように数字で挟まれている文字列"efghij"だけを関数を使用し、抜き出したいと考えています。どなたかよい方法をご存知でしたらご教示ください。 [エクセルのバージョン] Excel2002 [OSのバージョン] Windows2000 ---- 試作しましたが、ネストレベルが7を超えてしまったので、 名前付数式での2段構えです。 対象文字列がSheet1のA1に入力されていて、B1に出力する場合の例です。 メニューの挿入>名前>定義で :「名前」:TEMP1 :「参照範囲」:=SUBSTITUTE(Sheet1!$A1,LOOKUP(10^17,--RIGHT(Sheet1!$A1,ROW(Sheet1!$A$1:$A$30))),"") :セルB1へ: =MID(TEMP1,MAX(NOT(ISERROR(--MID(TEMP1,ROW($A$1:$A$30),1)))*ROW($A$1:$A$30))+1,LEN(TEMP1)-MAX(NOT(ISERROR(--MID(TEMP1,ROW($A$1:$A$30),1)))*ROW($A$1:$A$30))+1) 配列数式なので Enterで確定せずに ShiftとCtrlを押しながらEnter で確定。 ↓検証結果です。 abcd01efghij234 efghij dddd1ffffff0 ffffff 1fffff12354 fffff d564a1111 a abcdef1 abcdef abcdef2a #N/A 2aa #N/A gggg #N/A (みやほりん) 【追加】末尾に数字がないと#N/Aエラー。 --------- *おぉぉぉぉぉぉw(☆o◎)wどっひゃ〜〜 しかし、なんでこんなことが出来るんですかねぇ???(^^;; ヒヤアセ (SoulMan) ---- リアクションありがとう。 こういう関数パズルは大好き♪ (みやほりん) ------------------ 下記ににたような質問と回答があります。参考に 文字列(住所)を数字で分割します。 これを応用すれば,何とか出来そうに思います。vbaですが。(なお) http://www2.moug.net/app/bbs/message.php?cat=exvba&id=20041214-000010 ------ おはようございます。 マクロを使っていいなら 標準モジュールに貼り付けて =MyStr(A1) とします。 Option Explicit Function MyStr(MyRng As Range) As String Dim MyA As String, MyB As String, MyC As String Dim i As Long Dim MyFlagA As Boolean, MyFlagB As Boolean If MyRng.Count > 1 Then Exit Function MyFlagA = False MyFlagB = False MyStr = MyRng.Value For i = 1 To Len(MyStr) If IsNumeric(Mid(MyStr, i, 1)) Then If MyB <> "" Then MyC = MyB MyFlagB = True End If MyFlagA = True Else If MyFlagA Then MyB = MyB & Mid(MyStr, i, 1) End If End If Next If MyFlagA And MyFlagB Then MyStr = MyC Else MyStr = Empty End If End Function abcd01efghij234 efghij efghij dddd1ffffff0 ffffff ffffff 1fffff12354 fffff fffff d564a1111 a a abcdef1 abcdef abcdef2a #N/A 2aa #N/A gggg #N/A gg1s1gg s aa11s11a11a11 saa 1s25saw5s15sd5 ssawssd d5s5w33gg55ddd swgg 1s47aaqs8854c1 saaqsc d55s1w1d54d8dd swdd d15ss41vb245de ssvb a1ss11ww5454ss5 sswwss 145sw45aaz142s swaaz ss1415aq1s2154 aqs ss141s4254as s s41sa1s512ssaqs sas 121sd54s14a215x sdsa ss14s12as51d24 sasd どうでしょう? (SoulMan) ---- =IF(A1="","",REPLACE( LEFT(A1,MATCH(1,IF(ISERR(-MID(A1,ROW($1:$19),1))*ISNUMBER(-MID(A1,ROW($2:$20),1)),))),1, MATCH(,IF(ISNUMBER(-MID(A1,ROW($1:$19),1))*ISERR(-MID(A1,ROW($2:$20),1)),),),)) として、Ctrl+Shift+Enter。 というものなのですが、B列のように戻ります。 (LOOKUP) A B C 1 1s25saw5s15sd5 s25saw5s15sd ssawssd 2 1s47aaqs8854c1 s47aaqs8854c saaqsc 4 d55s1w1d54d8dd s1w1d54d swdd 5 d15ss41vb245de ss41vb ssvb 6 a1ss11ww5454ss5 ss11ww5454ss sswwss 7 145sw45aaz142s sw45aaz swaaz 8 ss1415aq1s2154 aq1s aqs 9 ss141s4254as s s 10 s41sa1s512ssaqs sa1s sas 11 121sd54s14a215x sd54s14a sdsa 12 ss14s12as51d24 s12as51d sasd -------- *げげ (゚O゚;) 、、、これで、抽出されたものの中から数字だけを除けば *完璧 なんじゃないんですか??? σ(^◇^;)には、できませんがぁ(;^_^A あせあせ・・・ あっ、あたまいたなってたぁ..... (SoulMan) ---- うへぇ、収まるもんですね。 (みやほりん)マイリマシタ ...
https://www.excel.studio-kazu.jp/wiki/kazuwiki/200412/20041215170531.txt - [detail] - similar
PREV NEXT
Powered by Hyper Estraier 1.4.13, with 97045 documents and 608223 words.

訪問者:カウンタValid HTML 4.01 Transitional