Note: The other languages of the website are Google-translated. Back to English
English English

วิธีเรียกใช้แมโครตามค่าที่เลือกจากรายการแบบหล่นลงใน Excel

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

เรียกใช้แมโครตามค่าที่เลือกจากรายการแบบหล่นลงด้วยรหัส VBA


ลูกศรสีฟ้าฟองขวา เรียกใช้แมโครตามค่าที่เลือกจากรายการแบบหล่นลงด้วยรหัส VBA

ไม่มีวิธีโดยตรงในการทำงานนี้ให้เสร็จสิ้น แต่รหัส VBA ต่อไปนี้สามารถช่วยคุณได้โปรดทำดังนี้:

1. ประการแรกสร้างรายการแบบเลื่อนลงตามที่คุณต้องการดูภาพหน้าจอ:

doc เรียกใช้มาโครจากเมนูแบบเลื่อนลง 1

2. จากนั้นคลิกขวาที่แท็บแผ่นงานมีรายการแบบเลื่อนลงที่คุณต้องการใช้จากนั้นเลือก ดูรหัส จากเมนูบริบทและในเปิด Microsoft Visual Basic สำหรับแอปพลิเคชัน หน้าต่างคัดลอกและวางรหัสต่อไปนี้ลงในโมดูลเปล่า:

รหัส VBA: เรียกใช้แมโครตามค่าที่เลือกจากรายการแบบหล่นลง:

Private Sub Worksheet_Change(ByVal Target As Range)
	If Not Intersect(Target, Range("E1")) Is Nothing Then
	    Select Case Range("E1")
	        Case "Insert Blank rows": Macro1
	        Case "Hide All Sheets": Macro2
            Case "Convert to Date": Macro3
	    End Select
	End If
	End Sub

doc เรียกใช้มาโครจากเมนูแบบเลื่อนลง 2

หมายเหตุ: ในโค้ดด้านบน E1 คือเซลล์ที่มีรายการแบบหล่นลงเปลี่ยนชื่อมาโครและค่ารายการแบบหล่นลงตามที่คุณต้องการ

3. จากนั้นบันทึกและปิดหน้าต่างรหัสนี้ตอนนี้เมื่อคุณเลือกรายการแทรกแถวว่างจากรายการแบบเลื่อนลง Macro1 จะถูกทริกเกอร์และอื่น ๆ ...


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

วิธีเรียกใช้แมโครเมื่อค่าของเซลล์เปลี่ยนแปลงใน Excel

วิธีเรียกใช้แมโครตามค่าเซลล์ใน Excel

วิธีเรียกใช้มาโครโดยอัตโนมัติก่อนพิมพ์ใน Excel

วิธีเรียกใช้แมโครโดยคลิกไฮเปอร์ลิงก์ใน Excel

วิธีเรียกใช้แมโครเมื่อแผ่นงานถูกเลือกจากสมุดงาน


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

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

  • นำมาใช้ใหม่: ใส่อย่างรวดเร็ว สูตรที่ซับซ้อนแผนภูมิ และสิ่งที่คุณเคยใช้มาก่อน เข้ารหัสเซลล์ ด้วยรหัสผ่าน; สร้างรายชื่อผู้รับจดหมาย และส่งอีเมล ...
  • ซุปเปอร์ฟอร์มูล่าบาร์ (แก้ไขข้อความและสูตรหลายบรรทัดได้อย่างง่ายดาย); การอ่านเค้าโครง (อ่านและแก้ไขเซลล์จำนวนมากได้อย่างง่ายดาย); วางลงในช่วงที่กรองแล้ว...
  • ผสานเซลล์ / แถว / คอลัมน์ โดยไม่สูญเสียข้อมูล แยกเนื้อหาของเซลล์ รวมแถว / คอลัมน์ที่ซ้ำกัน... ป้องกันเซลล์ซ้ำ; เปรียบเทียบช่วง...
  • เลือกซ้ำหรือไม่ซ้ำ แถว; เลือกแถวว่าง (เซลล์ทั้งหมดว่างเปล่า); 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
จัดเรียงความคิดเห็นโดย
ความคิดเห็น (6)
ยังไม่มีการให้คะแนน เป็นคนแรกที่ให้คะแนน!
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
efectivamente funciona pero quiero aplicarlo en Varias celdas, ตัวแปร que debo cambiar?
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
มีวิธีใช้รหัส VBA เพื่อทำสิ่งนี้ใน Access หรือไม่ ขอบคุณ
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
Hello!

แอปพลิเคชันของฉันไม่มีข้อผิดพลาดในการรวบรวม: La declaración del procedimiento nocompliant con la descripción del evento o el procedimiento que tiene el mismo nombre. Que quiere decir eso? que debo cambiar/arreglar? Gracias
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สวัสดีตอนเช้า. คุณจะสามารถทำมาโครจากเมนูแบบเลื่อนลงสำหรับถัดไป: หากต้องการเรียกใช้มาโครและบันทึกแผ่นงานแยกสำหรับแต่ละรายการจากเมนูดร็อปดาวน์ ในกรณีของคุณควรมีลักษณะดังนี้:
1. คุณเรียกใช้แมโครแล้วคุณได้แยกแผ่นงานที่มีค่าสำหรับ "แทรกแถวว่าง" ที่บันทึกไว้ในโฟลเดอร์ที่กำหนด
2. แยกแผ่นงานที่มีค่าสำหรับ " ซ่อนแผ่นงานทั้งหมด:" บันทึกไว้ในโฟลเดอร์ที่กำหนด
3. แยกแผ่นงานที่มีค่าสำหรับ " แปลงเป็นวันที่" บันทึกไว้ในโฟลเดอร์ที่กำหนด
4. มาโครเสร็จแล้ว


ส่วนใหญ่ฉันสามารถตั้งค่าทั้งหมดนี้ได้ยกเว้นว่ามาโครจะเปลี่ยนการเลือกจากเมนูแบบเลื่อนลงโดยอัตโนมัติหรือไม่


ขอบคุณ


อีวาน
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์


รหัสแรกทำงานอย่างสมบูรณ์แบบWorksheet_Change ย่อยส่วนตัว (เป้าหมายเป็นช่วง ByVal)
ถ้าไม่ตัดกัน(เป้าหมาย, ช่วง("D1")) ก็ไม่มีอะไรทั้งนั้น
เลือกช่วงเคส ("D1")
         กรณี "0.5": Half
         กรณี "1": หนึ่ง
         กรณี "1.25": OneTwentyFive
สิ้นสุดการเลือก
End If
ย่อยสิ้นสุด
รหัสที่สองไม่ทำงาน (โปรดแก้ไขด้านล่าง)
การเปลี่ยนแปลงย่อยส่วนตัว (ByVal Target As Range)
ถ้าไม่ตัดกัน(เป้าหมาย, ช่วง("D2")) ก็ไม่มีอะไรทั้งนั้น
เลือกช่วงเคส ("D2")
         เคส "9.53": ninepointfivethree
สิ้นสุดการเลือก
End If
ย่อยสิ้นสุด
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
A co jeśli potrzebuję aby po uruchomieniu makra wszystkie listy rozwijane ustawiły się na jeden z wyborów z listy? W sumie odwrotnie do tego ร่วมตลก w poście. Czy istnieje na ถึง łatwiejszy sposób?
มีความคิดเห็นยังไม่มีการโพสต์ที่นี่
แสดงความคิดเห็นของคุณ
โพสต์ในฐานะแขก
×
ให้คะแนนโพสต์นี้:
0   ตัวอักษร
สถานที่แนะนำ