0
WindowsがUSFormat(decimal = point)にあり、オランダ形式(10進数=カンマ)で実行された場合、以下のサンプルコードは正常に動作します。セルに書き込み式がsys小数点記号/ Reginal形式/ Excel VBAを受け付けません
なぜですか?
各コンマをポイントに戻す必要がないコンマ小数形式のセルに数式を書き込む方法はありますか?あなたは.Cells(4, 2)
によって返さRange
のデフォルトのプロパティを使用して、セルの数式を設定しようとしている
Sub TestHandleRegionalFormat()
SourceData = "-.1"
Application.UseSystemSeparators = True
ActiveSheet.Cells(1, 2) = GetDecimalSeparator
ActiveSheet.Cells(2, 2) = Application.DecimalSeparator
If GetDecimalSeparator = "," Then SourceData = Replace(SourceData, ".", ",")
ActiveSheet.Cells(3, 2) = SourceData + 1000
ActiveSheet.Cells(4, 2) = "=" & SourceData & "+1000"
End Sub
Public Function GetDecimalSeparator()
'http://stackoverflow.com/a/32992918/4797660
GetDecimalSeparator = Mid(Format(1000, "#,##0.00"), 6, 1)
End Function
USFormat出力
DutchFormat出力