問題のある数値の書式設定を修正


0

スプレッドシートには、次の数値形式の列がいくつかあります233,95。すべてのカンマをドットで置き換え233.95ましたが、のようにドットがすでに1000個を超える値が既にあるため、これはあまり良いアイデアではなかったことがわかりました1.233.95

通常の検索および置換では、最初の置換アクションを元に戻すことはできません。新しいエクスポートを作成して最初からやり直すと、このテーブルで何時間もの作業が無駄になります。10.000を超える数値はありません。

修正する簡単な方法がある1.233.95のでは1233.951200やなどの数字を台無しにしないでください0.9

回答:


1

正規表現は難しいと思うので、次のようにします。

Excel構文では、答えを提供できます。多くの場合、libreで同じまたは非常に似ています。最初にデータをSheet2に転送します。

セルB2(もちろん、セルB2のデータが必要だと仮定します;))。

=text(substitute(Sheet2!B2,".","")/100;"##,###.00")

これでは、末尾のゼロがあると仮定します(たとえば、単に1.000ではなく1.000.00と表示されます)

最後に、値をコピーして貼り付けて永続化することもできます。


ありがとう!それは簡単ですが、あなたは私に必要なヒントをくれました:=SUBSTITUTE(B2,".","")/100
SPRBRN 14

申し訳ありませんが、機能しません。この数ではありますが、260や0.3などの数が台無しになります。
SPRBRN 14

1
OK。それはあなたが私はそのための簡単な修正を持っていない:(末尾のゼロを持っていけないことを意味する。あなたは@Harvinderは、以下の概説として正規表現でそれをしたいかもしれません...代替文字列内のドットの数を数えることである(例えば参照エン.kioskea.net / faq /…)そしてif-clausesを使用して、さまざまなケースを考慮に入れる
LudvigH 14

これをPHPで修正します。
SPRBRN 14

はい。幸運を!
LudvigH 14

0

最初は次のようなことをしたと思います:^([:digit:]*),([:digit:]*)$-> $1\.$2、今回は次のようなことをします:^([:digit:]*)\.([:digit:]*)\.([:digit:]*)$->$1$2\.$3

注:.置換式でをエスケープする必要があるかどうかはわかりません。たぶん必要なのは$1$2.$3

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.