0

私はこれをExcel 2010のいくつかのセルとして持っています:


(出典:gyazo.com

私が達成しようとしていることがいくつかありますが、それらは実際にはすべて同じことのバリエーションです.

Price Paid と Price Returned の両方に、「# (タイプ)」または「# (タイプ)+# (タイプ 2) ...」という形式の式としてフォーマットできる値があります。私がやろうとしているのは、式を現在の状態から単なる数値に減らすことです。最初のケース ("# (type)") だけの場合の方法はわかりましたが、" " の最初のインスタンスの後に解析が停止するため、2 番目のケースを実行すると問題が発生します。以下に、Numerical Paid と Numerical Returned の両方で使用しているコードを示します。ISNUMBER カテゴリは、数値として登録されるものと登録されないものを示すためのものです。

数値支払いコードと数値戻りコード:

=INT(IF(ISNUMBER(D2),D2,LEFT(D2,FIND(" ",D2,1)-1)))
4

1 に答える 1

0

さらにグーグル検索を行ったところ、誰かがこれを行うための VBA 関数を既に作成していることがわかりました。素晴らしい。

以下にソースをリンクしました。

http://www.vbusers.com/code/codeget.asp?ThreadID=624&PostID=1

すべての操作を処理できるように、「.,」を「+-/*」に置き換えるだけで済みました。シンプルでエレガント、そして便利。その後、ここに投稿されたソリューションを使用しました(別の質問への回答として):

セルを別のセルの式の値と等しくする方法 (Excel 2010)?

結果の文字列を評価します。

みんな、ありがとう。

于 2012-12-24T21:51:32.040 に答える