2

VBAでは、セル内の数式を更新していますが(正常に機能します)、自動再計算が機能しません。

updated_formula = "=COUNT(Sheet1!A3:A" & nr_points & ")"
Cells(x, y).Formula = updated_formula
ActiveWorkbook.Save
Cells(x, y).Calculate

この数式は、別のシートの既存の行の数をカウントするだけです。マクロを実行すると、関数のテキストフィールドのセルの値は正しいのですが、セル自体にあるので、関数を"#NAME?"押しENTERて数式を再計算する必要があります。

Excelに期待しすぎていませんか?それとも私は何か間違ったことをしていますか?

編集:状況のスクリーンショット-これは、マクロを実行した後に表示されるものです。(黒人の検閲については申し訳ありませんが、クライアント企業の匿名性を維持する必要があります)

ここに画像の説明を入力してください

4

3 に答える 3

9

あなたのスクリーンショットを見た後、それは明らかになりました。

変化する

Cells(x, y).Formula = updated_formula

Cells(x, y).FormulaLocal = updated_formula

于 2013-01-16T15:06:15.453 に答える
0

コードは私のシートで正常に機能し、マクロの実行直後に計算値を更新します。[計算オプション]が[自動]に設定されていることを確認してください:[リボンデータ]タブ>[計算オプション]>[自動]。

于 2013-01-16T15:44:42.590 に答える
0

私はこれが遅い投稿であることを知っていますが、私は同様の問題を抱えていました、そして私のために働いたのは変更することでした

Cells(x, y).Calculate

Cells(x, y).Dirty
于 2013-12-09T18:23:09.490 に答える