-3

Excel 2007で次のような状況があります。

.15X.04-1.25X.625-SD+str

.15X.04-1.25X1.25-SD

.15X.04-1.5X1.25-SD

.15X.04-1.75X1.75-SC

.15X.04-1X.625-SD+str

.15X.04-2.25X2.25-SC

.15X.04-2.5X2.5-SC

.15X.04-2.75X2.75-SC

.15X.04-2X1.75-SC

.15X.04-3X3-SC

.15X.06-1.25X.625-SD+str

.
.
.
.

これらすべての行を、次のように各セルのコンテンツの一部で並べ替える必要があります -1X; -1.25X; -1.5X; -1.75X

どうすればできますか?

4

2 に答える 2

1

テキストから値を抽出するのがおそらく最善です。コメントで示したように、これは-と secondの間Xにあるため、この式を使用して抽出し、数値に変換できます。

=VALUE(MID(A1,SEARCH("-",A1)+1,SEARCH("X",SUBSTITUTE(A1,"X","_",1))+1-SEARCH("-",A1)) -2))

英語のシステムを使用している場合、これは値を返すことに注意してください (.小数点記号として を使用します。別の区切り記号を使用するシステムを使用している場合は、次の式を使用する必要があります。

=VALUE(SUBSTITUTE(MID(A1,SEARCH("-",A1)+1,SEARCH("X",SUBSTITUTE(A1,"X","_",1)))+1-SEARCH("-", A1)-2),".",","))

(最後","はローカルの小数点記号に置き換える必要があります。)

この数式を列全体に適用してから、この列を並べ替えます。

于 2013-02-01T14:19:43.920 に答える
1

=MID(A1;8;500)元の列が A であると仮定して、この数式で新しい列を挿入し、この数式をすべてのにコピーしてから、この新しい列で並べ替えます。数式は、並べ替えたい部分だけをコピーします。

于 2013-02-01T13:51:41.153 に答える