เป็นไปได้ไหมที่จะคำนวณเฉพาะเซลล์หรือช่วงใน VBA ใหม่

เป็นไปได้ไหมที่จะคำนวณเฉพาะเซลล์หรือช่วงใน VBA ใหม่ สิ่งที่ฉันชอบใช้สำหรับแผ่นงานมีดังต่อไปนี้ แต่จะทำอย่างไรกับเซลล์เท่านั้น? หรือช่วง?

'    ActiveSheet.EnableCalculation = False
'    ActiveSheet.EnableCalculation = True

person BuZz    schedule 01.12.2011    source แหล่งที่มา


คำตอบ (3)


มีวิธีการคำนวณที่คุณสามารถเรียกใช้ได้ในช่วง:

Range("A1").Calculate

ลองใช้โดยใส่ =Now() ใน A1 แล้วเรียกใช้ Calculate และดูการอัปเดตวินาที :) คุณสามารถคำนวณเซลล์ทั้งหมดในแผ่นงานใหม่ได้โดยใช้:

Sheets(1).Calculate

ดูเพิ่มเติมที่: Microsoft MSDN, การคำนวณใหม่ของ Excel, 16 กรกฎาคม 2012

person aevanko    schedule 01.12.2011
comment
วิธีนี้จะคำนวณสมุดงานทั้งหมดใหม่ โดยไม่ได้ระบุช่วง :-( - person Philipp Munin; 21.02.2017
comment
คุณต้องตั้งค่าวิธีการคำนวณเป็นแบบแมนนวล ถ้าเป็นแบบอัตโนมัติ Excel จะใช้โอกาสในการคำนวณทุกสมุดงานที่เปิดอยู่ (ไม่ใช่แค่สมุดงานที่ใช้งานอยู่) - person Jay Killeen; 26.07.2018

คำนวณ: สมุดงานที่เปิดอยู่ทั้งหมด

Application.Calculate

คำนวณ: แผ่นงานเฉพาะ

Worksheets(1).Calculate

or

Worksheets("sheetname").Calculate

คำนวณ: แถวที่ระบุ

Worksheets(1).Rows(2).Calculate

or

Worksheets("sheetname").Range("A1").EntireRow.Calculate

คำนวณใหม่ใน Excel

เลือกเซลล์ที่คุณต้องการคำนวณใหม่และกด:

Press F9
person Unicco    schedule 21.04.2019

ลองสิ่งนี้:

Range("A1").Formula = Range("A1").Formula

or

Cells(1, 1).Formula = Cells(1, 1).Formula 

มันได้ผลสำหรับฉัน

person Pituś    schedule 26.01.2021