ドットが小数点として使用されているデータソースがあります。つまり、: は1.49
「1 とほぼ半分」を意味します。これを変更することはできません。
この数字はExcelまたはCalcの数値セルにコピー&ペーストする必要があります。ファイルは公開されており、誰でも入手できます(ここから入手) なので、ユーザーの PC/プログラムを制御できません。
ユーザーのほとんどは it_IT ロケールのイタリア人で、小数はコンマで区切られます。つまり、: は1,49
「1 とほぼ半分」を意味します (ドットではなくコンマであることに注意してください)。
イタリア語ロケールのユーザーがデータソースから数値セルにコピー アンド ペーストしようとすると1.49
、Calc/Excel は数値を小数として認識しないため、エラーが発生します。
セルに言語を設定すると、プログラムを閉じるまではすべて機能します。ドキュメントを再度開くと、設定が失われ、機能しなくなります。
そこで私の質問です:
- ユーザー定義のロケールに関係なく、ファイル/シートのロケールを「en_US」に強制することは可能ですか?
- 言語属性を固定することは可能ですか?
- 他に何かアイデアはありますか? (「ユーザーに設定を変更するよう依頼する」のはやめてください)
可能であれば、マクロは避けたいです。
ありがとう!
アップデート: Windows 10 x64を使用していますが、LibreOffice 5.4.4 x64にアップグレードしました。セルごとの言語設定がまだ保存されません。想定保存するのか、それとも単なる表示設定なのか (保存すると保存ボタンが点灯するので、前者だと思います)
答え1
答え2
貼り付けるたびに繰り返される手動ソリューション:
コピー & 貼り付け後、貼り付けたセルが選択されます...
すぐに検索と置換を使用して、最初に「.」(千単位の区切り)を「」(つまり「なし」)に置き換え、次に「,」(元の小数点区切り)を新しい小数点区切りの「.」に置き換えます。
これらを数値として解釈するには、「形式を選択して貼り付け」を使用して 0 を追加するか、1 を掛ける必要があります。(==> 任意のセルに 1 または 0 を入力してコピーし、「形式を選択して貼り付け」を実行して、「値の追加」または「値の乗算」を選択します)。
自動化: 「マクロを記録」、上記の操作を実行し、「記録を停止」します。ここでショートカット キーを割り当てることもできます。