คุณสามารถแก้ไขเนื้อหาของเซลล์ Excel โดยไม่ต้องคลิกสองครั้งได้ไหม


28

ฉันมีรายการชื่อ / ที่อยู่ประมาณ 10,000 รายการที่ฉันต้องล้างด้วยตนเองใน Excel (สนุก!) อย่างที่คุณสามารถจินตนาการได้ว่าต้องดับเบิลคลิกเพื่อเข้าสู่เกือบทุกเซลล์เพื่อแก้ไขมันเป็นการลาก และน่าผิดหวังที่ถ้าคุณอยู่ใกล้กับด้านบน / ล่างของเซลล์เพียงเล็กน้อยคุณก็จะจบลงที่ด้านบน / ล่างของแผ่นงาน!

มีวิธีบอกให้ Excel อยู่ใน 'โหมดแก้ไข' หรือไม่ดังนั้นเมื่อฉันคลิกที่เซลล์ (หรือดีกว่าเลื่อนลงไปที่เซลล์) จะทำให้ฉันสามารถแก้ไขเนื้อหาได้โดยอัตโนมัติหรือไม่ ฉันไม่สามารถเริ่มพิมพ์เพราะเขียนทับทั้งเซลล์บ่อยครั้งที่ฉันต้องแก้ไขอักขระ 1 หรือ 2 ตัว ขอบคุณ


1
มันเป็นวิธีการแก้ไขที่สกปรก แต่สิ่งที่เกี่ยวกับการแปลงเป็น CSV แยกด้วยเครื่องหมายจุลภาคและแก้ไขด้วย Notepad หรือแก้ไขข้อความอื่น ๆ ที่คุณชอบ?
gronostaj

9
คุณแน่ใจหรือว่าไม่มีสคริปต์หรือฟังก์ชั่นที่สามารถทำ "ชำระ" ให้คุณได้? เมื่อต้องเผชิญกับสถานการณ์ที่คล้ายกันฉันใช้ข้อมูลทั้งหมดจาก excel และประสบความสำเร็จในการเรียกใช้ผ่านสคริปต์ regex ขนาดเล็ก
โมเสส

19
ดูสิ่งที่โมเสสพูดไว้อย่างแน่นอน หากคุณทำอะไร 10,000 ครั้งด้วยตนเองแสดงว่าคุณทำผิด
แทนเนอร์ฟอล์กเนอร์

@Moses - น่าเสียดายที่ไม่ รายการเหล่านี้มาจากฐานข้อมูลและส่วนใหญ่จะเป็นฟิลด์ 'ชื่อที่อยู่' ที่มีการแมปด้วยข้อมูลที่ไม่สอดคล้องกันมาก บางคนพูดว่า 'Smith John Mr & Smith Joan Mrs' ซึ่งควรเป็น 'Mr & Mrs J Smith' ในขณะที่คนอื่นว่างเปล่าและอื่น ๆ โดยทั่วไปนี่เป็นจุดเริ่มต้นของโครงการขนาดใหญ่มาก
David Gard

1
@datatoo - ชื่อต้องอยู่ในรูปแบบที่อ่านได้เพื่อให้สามารถใช้กับที่อยู่ได้ เนื่องจากฐานข้อมูลหลายแห่งถูกรวมเข้าเป็นหนึ่งเดียวในช่วงหลายปีที่ผ่านมา (และผู้ที่ขี้เกียจ) ข้อมูลจึงไม่สอดคล้องกันภายในเซลล์ ฉันไม่มีเซลล์อ้างอิงที่จะไปและเมื่อส่วนหนึ่งของโครงการนี้เสร็จสมบูรณ์ฉันจะแยกข้อมูลออกเป็น Salutation, ชื่อย่อ, นามสกุลและอื่น ๆ ณ จุดนี้ฉันสามารถเริ่มใช้ระบบอัตโนมัติได้
David Gard

คำตอบ:


20

คุณสามารถทำได้ด้วยแมโครต่อไปนี้ มันจะทำให้ Excel ของคุณทำงานราวกับว่าคุณกดF2ทุกครั้งที่คุณเปลี่ยนการเลือกในสเปรดชีต

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    SendKeys "{F2}"
End Sub

กดAlt+ F11เพื่อเปิดเครื่องมือแก้ไข VBA ขยายมุมมองต้นไม้ด้านซ้ายจนกว่าคุณจะเห็นแผ่นงานที่คุณต้องการดับเบิลคลิกที่แผ่นงานนั้นและวางรหัสด้านบนลงไป

คุณสามารถปิดใช้งานสิ่งนี้ได้ง่ายๆโดยเพิ่ม'ไว้ด้านหน้าบรรทัดของรหัสเพื่อให้ความคิดเห็นเช่น:

'SendKeys "{F2}"

หรือฉันเดาลบมันอย่างสมบูรณ์


วิธีนี้ใช้งานได้ดีมากหากคุณใช้enterเพื่อย้ายเซลล์ (ซึ่งฉันสงสัยว่าเป็นความตั้งใจหลักของคุณ) เนื่องจากมันจะเริ่มแก้ไขได้ทันทีและช่วยให้คุณเคลื่อนไหวได้เร็วขึ้น


Btw ขอบคุณที่ถามสิ่งนี้ฉันจะใช้สิ่งนี้ด้วยตัวเองอย่างยุติธรรมเพราะนี่เป็นวิธีที่ดีกว่าสำหรับการจัดการข้อมูลมากมาย!
enderland

ที่สมบูรณ์แบบ! นี่คือสิ่งที่ฉันต้องการสำหรับเวิร์กบุคนี้ขอบคุณมาก ความแปลกประหลาดเล็กน้อยเพียงอย่างเดียวที่ฉันสังเกตเห็นคือถ้าฉันใช้ 'Shift + Tab' เพื่อไปทางซ้ายขวาผ่านเซลล์ฉันต้องกดปุ่ม 'Shift' ทุกครั้งเมื่อเทียบกับที่สามารถเก็บไว้ได้
David Gard

3
ระวังว่าการใช้ VBA ด้วยวิธีนี้จะมีข้อเสีย สิ่งที่สะดุดตาที่สุดคือมันจะกำจัดฟังก์ชันการเลิกทำใด ๆ บนแผ่นงาน ดังนั้นหากคุณพลาดและลบข้อมูลบางอย่างโดยไม่ตั้งใจคุณควรสำรองข้อมูลไว้ นอกจากนี้ปุ่มลูกศรจะไม่สามารถใช้งานการนำทางแผ่นงานได้อีก
Excellll

3
@Excellll มีจุดที่ดีเยี่ยม ฟังก์ชันเลิกทำของคุณสูญหาย สำหรับมาโครแบบง่าย ๆ มันดูไม่คุ้มค่า พิจารณาใช้ AutoHotKey แทน - คุณสามารถบอกให้กด F2 หลังจาก Enter, Shift-Enter, Tab หรือ Shift-Tab (และคุณสามารถให้แน่ใจว่ามันจะทำงานเฉพาะใน Excel เกินไป.)
benshepherd

19

คุณสามารถเข้าสู่โหมดแก้ไขจากแป้นพิมพ์ผ่านทางF2คีย์หรือคุณสามารถสร้างมาโคร VB ที่มีป๊อปอัป / พรอมต์ ในขณะที่พูดอย่างเคร่งครัดไม่มีตัวเลือกที่ฉันรู้ว่าจะอยู่ในF2โหมดคุณสามารถเขียนสคริปต์เล็ก ๆ ลงใน Excel ซึ่งลงหนึ่งแถวและขั้นตอนในเซลล์ (จากนั้นให้แมโครนี้แทนที่ "return / แท็บ" ของคุณไปยังคอลัมน์ใหม่) .

แก้ไข:อีกทางเลือกหนึ่งคือการจัดการการแก้ไขเหล่านี้ผ่านโปรแกรมอื่นที่มีส่วนต่อประสานผู้ใช้ที่เข้าถึงได้มากขึ้นสำหรับข้อมูลประเภทนี้ ตัวอย่างเช่นส่งข้อมูลทั้งหมดนี้ไปยังโปรแกรมฐานข้อมูลเช่น Access แล้วจัดการเขตข้อมูลผ่าน UI ของพวกเขา

อย่างไรก็ตามทั้งหมดนี้หลีกเลี่ยงปัญหาหลักซึ่งเป็นเหตุผลที่มี 10,000 แถวของข้อมูลที่ต้องทำความสะอาดด้วยตนเอง? หากการเขียนสคริปต์เดียวเพื่อควบคุมพวกเขาทั้งหมดนั้นยุ่งยากเกินไปทำไมไม่แบ่งตารางออกเป็นกลุ่มที่มีความหมายและจัดการกับมันอย่างนั้น? เป็นการยากที่จะจินตนาการว่า 10,000 เขตข้อมูลต้องถูกประมวลผลด้วยตนเองและไม่มีวิธีแก้ไข


1
ขอบคุณสำหรับเคล็ดลับ F2 ที่ช่วยได้ ฉันจะเขียนทับปุ่มส่งคืน / แท็บสำหรับสเปรดชีตนี้ด้วยฟังก์ชันนั้น ขอบคุณ
David Gard

@DavidGard ไม่มีปัญหา ฉันยังอัปเดตคำตอบของฉันด้วยทางเลือกที่สามซึ่งอาจเหมาะกับคุณ
โมเสส

3
+1...why is there 10,000 rows of data that require manual cleaning?
Icode4food

7

F2วิธีเดียวที่ผมรู้ก็คือโดยการกด ใช้งานได้ทุกครั้งจนกว่าคุณจะกดReturn/ Enterเพื่อย้ายออกจากเซลล์ปัจจุบัน


2

คำตอบที่เป็นไปได้คือโปรแกรมที่ชื่อว่า "Middle Mouse Button (หรือ Wheel) to Doubleclick" มันมีอยู่ใน codeproject ฉันไม่ทราบว่าฉันควรโพสต์ลิงก์ที่นี่ แต่ฉันแน่ใจว่า google สามารถเป็นเพื่อนของคุณได้ มันทำงานอย่างไรในขณะที่ใช้งานอยู่คุณสามารถคลิกปุ่มกลางของเมาส์เพียงครั้งเดียวและมันจะส่งคลิกซ้ายสองครั้งไปยังคอมพิวเตอร์ของคุณ


0

การกด "F2" อาจเป็นตัวเลือกที่ดีที่สุดแม้ว่าจะไม่อยู่ในโหมดแก้ไขก็ตาม หากคุณรู้ว่าการแก้ไขที่คุณต้องการดำเนินการค้นหา / แทนที่ (Ctrl + F) นั้นมีประโยชน์มากและอาจช่วยให้คุณประหยัดเวลาได้มาก นอกจากนี้คุณยังสามารถหารายชื่อกว่า 200 Excel แป้นพิมพ์ลัดที่นี่


0

เลือกทั้งคอลัมน์แล้วใช้ค้นหาและแทนที่ เพียงแค่ใส่พื้นที่ว่างทั้งค้นหาและแทนที่มันจะอัปเดตเช่นนี้คุณสามารถหลอก excel และใช้งานได้


0

ลองใช้สูตร = concatenate เข้าร่วมข้อมูลของสองเซลล์ด้วยกัน จากนั้นคุณสามารถคัดลอกและวางค่า


0

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


นี่ไม่ได้ตอบคำถามที่ถาม ด้วยตัวแทนอีกเล็กน้อยคุณจะสามารถเพิ่มข้อมูลที่เป็นประโยชน์ในความคิดเห็น
fixer1234

0

นี่เป็นทางออกที่ง่ายที่สุดที่ทำงานให้ฉัน

http://ccm.net/forum/affich-172180-unable-to-change-date-format-in-excel

  1. ก่อนอื่นให้เปลี่ยนรูปแบบของคุณเป็นวันที่ที่คุณต้องการสำหรับคอลัมน์ข้อมูลของคุณ
  2. เมื่อเลือกคอลัมน์แล้วให้เลือก "คัดลอก"
  3. เปิด notepad (ไม่ใช่คำมันต้องเป็น notepad)
  4. วางข้อมูลของคุณลงในแผ่นจดบันทึก
  5. ในแผ่นจดบันทึกกด CTRL + A (เลือกเซลล์ทั้งหมด) จากนั้นกด CTRL + C (คัดลอกข้อมูล)
  6. วางข้อมูลกลับเข้าไปใน Excel
  7. มันจะพูดอะไรบางอย่างเกี่ยวกับขนาดที่ไม่เหมือนเดิมแล้ววางมันต่อไป

0

หากคุณกำลังแก้ไขเซลล์ที่ไม่มีสูตรหรือสิ่งที่สามารถทำได้ใน Excel เพียงคัดลอกเซลล์เหล่านี้และวางเป็นคอลัมน์หรือตารางปกติลงในเอกสาร Word แก้ไขข้อมูลในตารางเหล่านั้นได้อย่างอิสระแล้วคัดลอกกลับไปยังตำแหน่งเดิมใน Excel

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.