2017-09-15 8 views
0

セルにデータを入れた後にブックを開き、その中にデータを入れて、スタイルを編集するセルを.Style = "Comma"(数字の間にスペース区切りを付けてください) )。スタイル「コンマ」は手動で編集しない限り動作しません

しかし、私はそのファイルを開くと、他のセルには区切り文字がまったくないのに対し、「カンマ」スタイルのセルがいくつか表示されます。区切り文字が表示されていないセルを選択し、式領域にマウスカーソルを置き、[Enter]をクリックすると、スタイルは "Comma"に変わります。

私は.Cells(i, j).Calculateでそれを真似しようとしましたが、無駄です。

一部のセルでスタイルが変更されず、マクロ内でスタイルが変更されないのはなぜですか?

PS私はすでに設定で自動計算しています。スタイルを「コンマ」に手動で変更する(000アイコンをクリックしても動作しない - セルの数式の中にカーソルを置いてEnterをクリックした後にのみ動作する)。

EDIT:ファイルをxlsxとして保存します。コードはそれほど重要ではありません。これはApplication.Open(filePath)resultWorkbook.Worksheets("sheet 1").Cells(i, j).Value = someValueで構成されています。

+0

コードをさらに投稿できますか?あなたはファイルを(.csv、.xlsx)として保存していますか? – RealCheeseLord

+1

テキストとしてそこにいるようです。それらを再入力すると、Excelはフォーマット/スタイルを選択する数値に評価されます。 – CLR

+0

'someValue'を' CDec(someValue) 'や' CDec(Application.WorksheetFunction.Trim(someValue)) 'で置き換えてみてください。 – AntiDrondert

答えて

2

「数字」の一部がテキストとして保存されています。 「カンマ」などの数値書式やスタイルはテキストでは機能しません。

以下は、すべての数値(および数式!)を書式設定/書式設定できる数値に変換します。数式を含む領域に影響を与えないように範囲をさらに制限することができます。

With Worksheets("sheet 1") 
    .UsedRange.Value = .UsedRange.Value 
End With 
+0

ありがとうございます。私は大きな数字を「バリアント」として保存します。それはそれに影響を与えたでしょうか?私は彼らが同じ範囲を持っているので、私はそれを 'ダブル 'として保管する方が良いでしょうか?それ以降はスタイリングの問題はありません。 – Ans

関連する問題