Note: The other languages of the website are Google-translated. Back to English
ล็อกอิน  \/ 
x
or
x
สมัครสมาชิก  \/ 
x

or

 จะใช้ปุ่มเพื่อล้างเซลล์เฉพาะใน Excel ได้อย่างไร?

โดยปกติคุณสามารถถือไฟล์ Ctrl เพื่อเลือกเซลล์เฉพาะหลาย ๆ เซลล์จากนั้นล้างเนื้อหาของเซลล์ตามที่คุณต้องการ หากคุณจำเป็นต้องล้างเซลล์เหล่านี้เป็นครั้งคราวคุณสามารถสร้างปุ่มที่ชัดเจนเพื่อล้างได้ด้วยการคลิกเพียงครั้งเดียว ในบทความนี้ฉันจะพูดถึงวิธีสร้างปุ่มล้างทั้งหมดเพื่อล้างเนื้อหาบางเซลล์

ใช้ปุ่มเพื่อล้างเนื้อหาเซลล์เฉพาะด้วยรหัส VBA


ลูกศรสีฟ้าฟองขวา ใช้ปุ่มเพื่อล้างเนื้อหาเซลล์เฉพาะด้วยรหัส VBA

ขั้นแรกคุณควรสร้างปุ่มรูปร่างแล้วใช้รหัสในที่สุดผูกรหัสกับปุ่มรูปร่าง กรุณาดำเนินการดังต่อไปนี้:

1. คลิก สิ่งที่ใส่เข้าไป > รูปร่าง > สี่เหลี่ยม เพื่อเลือกรูปร่างสี่เหลี่ยมผืนผ้าจากนั้นลากเมาส์เพื่อวาดปุ่มสี่เหลี่ยมผืนผ้าที่ใดก็ได้ของแผ่นงานตามที่คุณต้องการดูภาพหน้าจอ:

ปุ่ม doc ล้างเซลล์ 1

2. จากนั้นป้อนข้อความและจัดรูปแบบปุ่มรูปร่างตามที่คุณต้องการดูภาพหน้าจอ:

ปุ่ม doc ล้างเซลล์ 2

3. จากนั้นคุณควรใส่รหัส VBA โปรดกดไฟล์ ALT + F11 คีย์เพื่อเปิด Microsoft Visual Basic สำหรับแอปพลิเคชัน หน้าต่าง. คลิก สิ่งที่ใส่เข้าไป > โมดูลและวางรหัสต่อไปนี้ในไฟล์ โมดูล หน้าต่าง.

รหัส VBA: ล้างเนื้อหาของเซลล์จากเซลล์เฉพาะ:

Sub Clearcells()
'Updateby Extendoffice
Range("A2", "A5").Clear
Range("C10", "D18").Clear
Range("B8", "B12").Clear
End Sub

หมายเหตุ: ในโค้ดด้านบน: A2, A5 ระบุว่าจะล้างเซลล์ในช่วง A2: A5ไม่ใช่แค่สองเซลล์ทีละเซลล์คุณสามารถเพิ่มหลายช่วงได้เช่น ช่วง ("B8", "B12") ชัดเจน สคริปต์ภายในรหัสเพื่อล้าง

4. จากนั้นบันทึกและปิดหน้าต่างรหัสจากนั้นเชื่อมโยงรหัสกับปุ่มรูปร่างคลิกขวาที่ปุ่มแล้วเลือก กำหนดมาโครใน กำหนดมาโคร กล่องโต้ตอบเลือกไฟล์ เคลียร์เซลล์ ชื่อรหัสจาก ชื่อมาโคร กล่องรายการแล้วคลิก OK เพื่อออกจากกล่องโต้ตอบนี้ ดูภาพหน้าจอ:

ปุ่ม doc ล้างเซลล์ 3

5. และตอนนี้เมื่อคุณคลิกไฟล์ ลบทั้งหมด ปุ่มเซลล์เฉพาะที่คุณกำหนดจะถูกล้างในครั้งเดียวดูภาพหน้าจอ:

ปุ่ม doc ล้างเซลล์ 4


เครื่องมือเพิ่มประสิทธิภาพการทำงานในสำนักงานที่ดีที่สุด

Kutools สำหรับ Excel ช่วยแก้ปัญหาส่วนใหญ่ของคุณและเพิ่มผลผลิตของคุณได้ถึง 80%

  • นำมาใช้ใหม่: ใส่อย่างรวดเร็ว สูตรที่ซับซ้อนแผนภูมิ และสิ่งที่คุณเคยใช้มาก่อน เข้ารหัสเซลล์ ด้วยรหัสผ่าน; สร้างรายชื่อผู้รับจดหมาย และส่งอีเมล ...
  • Super Formula Bar (แก้ไขข้อความและสูตรหลายบรรทัดได้อย่างง่ายดาย); การอ่านเค้าโครง (อ่านและแก้ไขเซลล์จำนวนมากได้อย่างง่ายดาย); วางลงในช่วงที่กรองแล้ว...
  • ผสานเซลล์ / แถว / คอลัมน์ โดยไม่สูญเสียข้อมูล แยกเนื้อหาของเซลล์ รวมแถว / คอลัมน์ที่ซ้ำกัน... ป้องกันเซลล์ซ้ำ; เปรียบเทียบช่วง...
  • เลือกซ้ำหรือไม่ซ้ำ แถว; เลือกแถวว่าง (เซลล์ทั้งหมดว่างเปล่า); Super Find และ Fuzzy Find ในสมุดงานจำนวนมาก สุ่มเลือก ...
  • สำเนาถูกต้อง หลายเซลล์โดยไม่เปลี่ยนการอ้างอิงสูตร สร้างการอ้างอิงอัตโนมัติ ถึงหลายแผ่น ใส่สัญลักษณ์แสดงหัวข้อย่อย, กล่องกาเครื่องหมายและอื่น ๆ ...
  • แยกข้อความ, เพิ่มข้อความ, ลบตามตำแหน่ง, ลบ Space; สร้างและพิมพ์ผลรวมย่อยของเพจ แปลงระหว่างเนื้อหาของเซลล์และความคิดเห็น...
  • ซุปเปอร์ฟิลเตอร์ (บันทึกและใช้โครงร่างตัวกรองกับแผ่นงานอื่น ๆ ); การเรียงลำดับขั้นสูง ตามเดือน / สัปดาห์ / วันความถี่และอื่น ๆ ตัวกรองพิเศษ โดยตัวหนาตัวเอียง ...
  • รวมสมุดงานและแผ่นงาน; ผสานตารางตามคอลัมน์สำคัญ แยกข้อมูลออกเป็นหลายแผ่น; Batch แปลง xls, xlsx และ PDF...
  • คุณสมบัติที่ทรงพลังมากกว่า 300 รายการ. รองรับ Office / Excel 2007-2019 และ 365 รองรับทุกภาษา ใช้งานง่ายในองค์กรหรือองค์กรของคุณ ทดลองใช้ฟรี 30 วันเต็ม รับประกันคืนเงิน 60 วัน
kte แท็บ 201905

แท็บ Office นำอินเทอร์เฟซแบบแท็บมาที่ Office และทำให้งานของคุณง่ายขึ้นมาก

  • เปิดใช้งานการแก้ไขและอ่านแบบแท็บใน Word, Excel, PowerPoint, ผู้จัดพิมพ์, Access, Visio และโครงการ
  • เปิดและสร้างเอกสารหลายรายการในแท็บใหม่ของหน้าต่างเดียวกันแทนที่จะเป็นในหน้าต่างใหม่
  • เพิ่มผลผลิตของคุณ 50% และลดการคลิกเมาส์หลายร้อยครั้งให้คุณทุกวัน!
ด้านล่าง officetab
Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Dave · 1 months ago
    My excel seems to be bringing up other workbook modules making it very difficult
    to know what's going on
  • To post as a guest, your comment is unpublished.
    Sarah · 10 months ago
    So it clears the data just fine and keeps the formatting, but then I lose all my formulas in the cells. Is there anyway to fix this so it just clears the number?
    It's for data entry of rating scales
  • To post as a guest, your comment is unpublished.
    king · 10 months ago
    How can you do this for check boxes so they also clear in addition to the fields?
  • To post as a guest, your comment is unpublished.
    Manyusli · 10 months ago
    SUPER HELPFUL! THANK YOU.
    But I have another question, maybe you can help me, in order to create the Clear cell macro button, and I already did it, and it just work perfectly. But I need to protect the sheet to make sure nobody delete important formulas, but it turns that this action make the clearcell macro button unclickble.......
    What can I do in this case? Help please.....
    • To post as a guest, your comment is unpublished.
      Manyusli · 10 months ago
      This is a screenshot of my work sheet, sorry I'm not a expert in excel....
  • To post as a guest, your comment is unpublished.
    Monica · 10 months ago
    SUPER HELPFUL! THANK YOU.
    But I have another question, maybe you can help me, in order to create the Clear cell macro button, and I already did it, and it just work perfectly. But I need to protect the sheet to make sure nobody delete important formulas, but it turns that this action make the clearcell macro button unclickble.......
    What can I do in this case? Help please.....
  • To post as a guest, your comment is unpublished.
    nate · 10 months ago
    i am trying to clear certain cells across several tabs. How can i accomplish this? I have built a checklist that is about 100 questions long on several tabs, and it is hard to go back and delete the feedback from every cell.
  • To post as a guest, your comment is unpublished.
    Robin · 1 years ago
    Hi! Works great for me with this code as you mentioned:

    Sub Clearcells()
    Range("A2", "A5").ClearContents
    Range("C10", "D18").ClearContents
    Range("B8", "B12").ClearContents
    End Sub

    However, I want to keep the number "0" or the procentage "0" for certain cells. Also, keep the previous selected colour. The reson for this is I use these cells as input cells and want to use the buttom to clear certin input cells.


    Thanks in advance!
  • To post as a guest, your comment is unpublished.
    walaseyhk@gmail.com · 1 years ago
    Please give marco for clear if cell content less than 4 digital numbers. Thanks
  • To post as a guest, your comment is unpublished.
    jorge · 1 years ago
    when the command button I press delete it also deletes the continuous cells and I already have a formula in them and I don't want to delete those
  • To post as a guest, your comment is unpublished.
    Arshpreet · 1 years ago
    its not working
  • To post as a guest, your comment is unpublished.
    nocktys.fbm@gmail.com · 1 years ago
    How to do on Google Sheets please ?
  • To post as a guest, your comment is unpublished.
    Fabricio · 1 years ago
    It is not working on merged cells. :(
    • To post as a guest, your comment is unpublished.
      Penny · 1 years ago
      Try this,

      For example: The merged cells are columns A and B. You want to clear rows 2 thru 5. It'd look like the below.

      Sub Clearcells()
      Range("A2:B2", "A5:B5").ClearContents
      End Sub
    • To post as a guest, your comment is unpublished.
      taviodnw@gmail.com · 1 years ago
      replace .Clear by = ""
      • To post as a guest, your comment is unpublished.
        Kean Miller · 1 years ago
        For merged cells do you mean have the formatting for example be Range("A25","B25","C25")="" ?
  • To post as a guest, your comment is unpublished.
    ljmajik@gmail.com · 2 years ago
    Is there a way for me to keep the data validation list drops on the cells. For example my list drop includes Yes or No and I would like to reset the cells to blank but keep my data validation in the background
    • To post as a guest, your comment is unpublished.
      Don · 1 years ago
      you can use = clear.


      for Eg.

      Range("A2", "A5") = Clear
  • To post as a guest, your comment is unpublished.
    Jennifer · 2 years ago
    Hi,

    What code do I use if I only need to clear one single cell instead of a range of cells?
    • To post as a guest, your comment is unpublished.
      skyyang · 2 years ago
      Hi, Jennifer,
      To clear only one cell, you just need to change the VBA code as this: (Note: change the cell A2 to the cell you want to clear)

      Sub Clearcells()
      Range("A2").Clear
      End Sub

      Please try, hope it can help you!
  • To post as a guest, your comment is unpublished.
    Radheshyam · 2 years ago
    simply I did same in worksheet it worked when I protect the sheet it shows error 1004, any suggestion in this case?
    • To post as a guest, your comment is unpublished.
      skyyang · 2 years ago
      Hi, Radheshyam,
      To run above code in a protect worksheet, please apply the below code: (Note: change the text "password" to the password which protect your sheet)
      Sub ClearcellsAsProtect()
      Dim xWS As Worksheet
      Dim xPsw As String
      Set xWS = ActiveSheet
      xPsw = "password"
      On Error Resume Next
      xWS.Unprotect Password:=xPsw
      Range("A2", "A5").Clear
      Range("C10", "D18").Clear
      Range("B8", "B12").Clear
      xWS.Protect Password:=xPsw
      End Sub

      Please try, hope it can help you!
  • To post as a guest, your comment is unpublished.
    Stan · 2 years ago
    I have a workbook with 11 tabs, plus one at the beginning marked as "Start Here". I want to create one button in that tab that will clear up to 9 individual cells of it's contents, or enter a "0" in it within each of these tabs. The cells I want to clear do not necessarily reside in the same spot on each page. Is this possible and how is it done? I presume this can be done in VisualBasic, but would it be easier for a neophyte to create it using Macros?
    • To post as a guest, your comment is unpublished.
      Nate · 10 months ago
      i have the same question

      • To post as a guest, your comment is unpublished.
        Christopher · 9 months ago
        Use this as a script template:

        Sub Clearcells()
        'Updateby Extendoffice 20161008
        Range("b11:d22").ClearContents 'this line refers to the page with the macro button.
        Range("'Eval Score Entry'!D2:AA2").ClearContents 'this line refers to a different tab and range.
        End Sub


  • To post as a guest, your comment is unpublished.
    Adnandos · 2 years ago
    Hi. What is the best way to create seperate buttons to clear the contents of each row separately? eg data capturer is happy with the inputs of every other row, but then needs to clear rows 3, row 6 and row 7. What's the most efficient way to create buttons to clear in this way, ie row only?
    • To post as a guest, your comment is unpublished.
      OS · 2 years ago
      Hi, Put a button on top of row 3,6,7. Assign the same marco as above on each button to clear that particular row only.
  • To post as a guest, your comment is unpublished.
    basilrubber@gmail.com · 3 years ago
    This is clearing the border also, what can i do?
    • To post as a guest, your comment is unpublished.
      Jay · 3 years ago
      change clear to clearcontents then formatting will stay the same after clearing. only text will be gone not borders and colouring etc
  • To post as a guest, your comment is unpublished.
    ian · 3 years ago
    can you make this work over several sheets?
  • To post as a guest, your comment is unpublished.
    Piotr · 3 years ago
    Thx for this code. How to clear cell contents or ideally fill it up with 0 value in a protected sheet with just few editable cells? Thx for help on ot.
    • To post as a guest, your comment is unpublished.
      Robert · 3 years ago
      Instead of the clear command, an example line from above would look like:
      Range("A2:A5") = 0
  • To post as a guest, your comment is unpublished.
    Ashleigh Bonner · 3 years ago
    Thank you so much for this information!!

    Another tip: I added a textbox. To combine the textbox with the shape, I selected the textbox, held down SHIFT, and then selected the shape. With those both selected I right-clicked and selected GROUP, then GROUP, again.

    When these are grouped, you can still change the text and other formatting.

    To ungroup, just right-click your new button and select GROUP > UNGROUP.
    • To post as a guest, your comment is unpublished.
      Calvin Hodgson · 2 years ago
      Or, simply right-clicking the shape allows you to change formatting and text.
  • To post as a guest, your comment is unpublished.
    Steph · 3 years ago
    thank you!
  • To post as a guest, your comment is unpublished.
    ken besse · 3 years ago
    This also clears any formatting of the cell. How doI do this if I wantto keep formulas and formatting suchace as shading or borders
    • To post as a guest, your comment is unpublished.
      Adam · 3 years ago
      change the command from "clear" to "clearcontents" to just erase the text inputs
      • To post as a guest, your comment is unpublished.
        dsnyan · 3 years ago
        what about the color?
  • To post as a guest, your comment is unpublished.
    anand · 3 years ago
    GIVE FORMULAS FOR SAVE AND CLEAR