Computer >> คอมพิวเตอร์ >  >> ซอฟต์แวร์ >> Office

VBA เพื่อลบสูตรใน Excel รักษาค่าและการจัดรูปแบบ

ในบทความนี้ ฉันจะแสดงวิธีลบสูตร จากแผ่นงานใน Excel เก็บค่าและการจัดรูปแบบด้วย VBA . ขั้นแรก คุณจะได้เรียนรู้วิธีลบสูตรออกจากช่วงของเซลล์ที่เลือก จากนั้นจึงนำออกจากทั้งเวิร์กชีต

VBA เพื่อลบสูตรใน Excel รักษาค่าและการจัดรูปแบบ (มุมมองด่วน)

Sub Remove_Formulas_from_Selected_Range()

Dim Rng As Range

Set Rng = Selection

Rng.Copy

Rng.PasteSpecial Paste:=xlPasteValuesAndNumberFormats

Application.CutCopyMode = False

End Sub

VBA เพื่อลบสูตรใน Excel รักษาค่าและการจัดรูปแบบ

คำอธิบายของหลักจรรยาบรรณ:

  • รหัสนี้สร้าง มาโคร เรียกว่า Remove_Formulas_from_Selected_Range .
  • ขั้นแรก จะคัดลอกค่าจากเซลล์ทั้งหมดในช่วงที่ผู้ใช้เลือก
  • จากนั้นจะวางค่าในเซลล์ตามลำดับโดยรักษารูปแบบไว้
  • ดังนั้นจึงลบสูตรทั้งหมดออกจากช่วงของเซลล์ที่เลือกโดยเก็บค่าและการจัดรูปแบบไว้

2 วิธีในการลบสูตรใน Excel รักษาค่าและการจัดรูปแบบด้วย VBA

เรามีชุดข้อมูลที่มีชื่อ , เงินเดือนเริ่มต้น และ เงินเดือนปัจจุบัน ของพนักงานบางคนของบริษัท Jupyter Group

นอกจากนี้เรายังมีเงินเดือนเฉลี่ย , ชื่อพนักงานที่มีเงินเดือนสูงสุด และด้วยเงินเดือนต่ำสุด ในเซลล์ที่แยกจากกันของแผ่นงาน

VBA เพื่อลบสูตรใน Excel รักษาค่าและการจัดรูปแบบ

ที่นี่เงินเดือนปัจจุบันของพนักงานแต่ละคนคือ 20% ของเงินเดือนเริ่มต้น

นั่นคือ เซลล์ D4 มีสูตรดังนี้

=C4+(C4*20)/100

D5 มีสูตรดังนี้

=C5+(C5*20)/100

เป็นต้น

VBA เพื่อลบสูตรใน Excel รักษาค่าและการจัดรูปแบบ

เซลล์ G7 มีเงินเดือนเฉลี่ยตามสูตร:

=AVERAGE(D4:D13)

VBA เพื่อลบสูตรใน Excel รักษาค่าและการจัดรูปแบบ

เซลล์ H7 มีพนักงานที่มีเงินเดือนสูงสุดตามสูตร:

=INDEX(B4:D13,MATCH(MAX(D4:D13),D4:D13,0),1)

และเซลล์ I7 มีพนักงานที่มีเงินเดือนขั้นต่ำตามสูตร:

=INDEX(B4:D13,MATCH(MIN(D4:D13),D4:D13,0),1)

VBA เพื่อลบสูตรใน Excel รักษาค่าและการจัดรูปแบบ

วันนี้เราจะมาพัฒนามาโคร โดยใช้ Visual Basic Application (VBA ) ที่จะลบสูตรออกจากเวิร์กชีตนี้โดยรักษาค่าและการจัดรูปแบบไว้เหมือนเดิม

1. VBA เพื่อลบสูตรใน Excel รักษาค่าและการจัดรูปแบบจากช่วงที่เลือก

ก่อนอื่น มาพัฒนา มาโคร . กัน ที่จะลบสูตรออกจากช่วงของเซลล์ที่กำหนด ไม่ใช่จากทั้งแผ่นงาน

ตัวอย่างเช่น ลองเอาสูตรออกจากเรกคอร์ดพนักงานเท่านั้น (B4:D13 )

รหัส VBA:

Sub Remove_Formulas_from_Selected_Range()

Dim Rng As Range

Set Rng = Selection

Rng.Copy

Rng.PasteSpecial Paste:=xlPasteValuesAndNumberFormats

Application.CutCopyMode = False

End Sub

หมายเหตุ: รหัสนี้สร้าง มาโคร เรียกว่า Remove_Formulas_from_Selected_Range .

VBA เพื่อลบสูตรใน Excel รักษาค่าและการจัดรูปแบบ

ผลลัพธ์: 

ขั้นแรก บันทึกไฟล์เป็น Excel Macro-Enabled Workbook ก่อน . จากนั้นเลือกช่วงของเซลล์ที่คุณต้องการเอาสูตรออก

ที่นี่ฉันต้องการลบสูตรออกจากบันทึกพนักงานเท่านั้น (B4:D13 ). ก็เลยเลือกช่วง B4:D13 .

VBA เพื่อลบสูตรใน Excel รักษาค่าและการจัดรูปแบบ

จากนั้นเรียกใช้มาโครชื่อ Remove_Formulas_from_Selected_Range

( อ่านบทความนี้เพื่อดูวิธีเรียกใช้ Macro โดยละเอียด )

VBA เพื่อลบสูตรใน Excel รักษาค่าและการจัดรูปแบบ

และคุณจะเอาสูตรทั้งหมดออกจากช่วงของเซลล์ที่คุณเลือก โดยทิ้งค่าและการจัดรูปแบบไว้

VBA เพื่อลบสูตรใน Excel รักษาค่าและการจัดรูปแบบ

อ่านเพิ่มเติม: แปลงสูตรเป็นค่าโดยไม่ต้องวางแบบพิเศษใน Excel (5 วิธีง่ายๆ)

การอ่านที่คล้ายกัน

  • ลบสูตรเมื่อกรองใน Excel (3 วิธี)
  • วิธีลบสูตรอัตโนมัติใน Excel (5 วิธี)
  • หยุดสูตรเพื่อแปลงเป็นค่าอัตโนมัติใน Excel
  • วิธีการแปลงสูตรเป็นค่าใน Excel (8 วิธีด่วน)

2. VBA เพื่อลบสูตรใน Excel รักษาค่าและการจัดรูปแบบจากแผ่นงานทั้งหมด

ในวิธีการก่อนหน้านี้ เราได้พัฒนา มาโคร เพื่อลบสูตรออกจากช่วงของเซลล์ที่เลือก

ตอนนี้ เราจะพยายามลบสูตรออกจากทั้งเวิร์กชีต

ใช้ โค้ด VBA . ต่อไปนี้ เพื่อจุดประสงค์นี้

รหัส VBA:

Sub Remove_Formulas_from_the_Whole_Worksheet()

Sheet_Name = InputBox("Enter the Name of the Worksheet to Remove Formulas: ")

Dim Rng As Range

Set Rng = Sheets(Sheet_Name).Cells

Rng.Copy

Rng.PasteSpecial Paste:=xlPasteValuesAndNumberFormats

Application.CutCopyMode = False

End Sub

หมายเหตุ: รหัสนี้สร้าง มาโคร เรียกว่า Remove_Formulas_from_the_Whole_Worksheet

VBA เพื่อลบสูตรใน Excel รักษาค่าและการจัดรูปแบบ

ผลลัพธ์:

กลับมาที่เวิร์กชีตของคุณและเรียกใช้ มาโคร เรียกว่า Remove_Formulas_from_the_Whole_Worksheet .

VBA เพื่อลบสูตรใน Excel รักษาค่าและการจัดรูปแบบ

คุณจะได้รับ กล่องขาเข้า ขอให้คุณป้อนชื่อเวิร์กชีตที่คุณต้องการลบสูตร

ที่นี่ ฉันต้องการลบสูตรออกจาก Sheet2 ดังนั้นฉันจึงเข้าสู่ Sheet2 .

VBA เพื่อลบสูตรใน Excel รักษาค่าและการจัดรูปแบบ

คลิก ตกลง .

และคุณจะเอาสูตรออกจากทั้งเวิร์กชีต โดยเก็บเฉพาะค่าและการจัดรูปแบบ

มันเอาสูตรออกจากเงินเดือนปัจจุบัน ของพนักงาน

VBA เพื่อลบสูตรใน Excel รักษาค่าและการจัดรูปแบบ

นอกจากนี้ยังลบสูตรออกจาก เงินเดือนเฉลี่ย , พนักงานที่มีเงินเดือนสูงสุด และ พนักงานที่มีเงินเดือนต่ำที่สุด .

VBA เพื่อลบสูตรใน Excel รักษาค่าและการจัดรูปแบบ

อ่านเพิ่มเติม: วิธีแสดงค่าแทนสูตรใน Excel (7 วิธี)

สิ่งที่ควรจำ

เราได้ใช้ xlPasteValuesAndNumberFormats ตัวเลือกสำหรับวางด้วย VBA ซึ่งเก็บค่าและการจัดรูปแบบไว้ในขณะที่วางค่าบางค่าใน Excel

พร้อมกับมี 11 ตัวเลือกเพิ่มเติมสำหรับการวางค่าใน VBA แต่ละรายการจะทำการวางประเภทเฉพาะ

ไปที่ลิงก์นี้เพื่อทราบรายละเอียด .

บทสรุป

เมื่อใช้วิธีการเหล่านี้ คุณสามารถลบสูตรออกจากเวิร์กชีตใน Excel โดยรักษาค่าและการจัดรูปแบบที่ไม่เปลี่ยนแปลงด้วย VBA . คุณมีคำถามใด ๆ หรือไม่? สนใจสอบถามได้นะคะ

บทความที่เกี่ยวข้อง

  • วิธีการแปลงผลลัพธ์ของสูตรเป็นสตริงข้อความใน Excel (7 วิธีง่ายๆ)
  • การใส่ผลลัพธ์ของสูตรในเซลล์อื่นใน Excel (4 กรณีทั่วไป)
  • วิธีการคืนค่าของเซลล์ที่ไม่ใช่สูตรใน Excel (วิธีง่ายๆ 3 วิธี)
  • แปลงสูตรเป็นค่าโดยอัตโนมัติใน Excel (6 วิธีที่มีประสิทธิภาพ)
  • วิธีลบสูตรที่ซ่อนอยู่ใน Excel (5 วิธีด่วน)