วิธีสร้างฟังก์ชันที่กำหนดโดยผู้ใช้ใน Microsoft Excel

สารบัญ:

วิธีสร้างฟังก์ชันที่กำหนดโดยผู้ใช้ใน Microsoft Excel
วิธีสร้างฟังก์ชันที่กำหนดโดยผู้ใช้ใน Microsoft Excel

วีดีโอ: วิธีสร้างฟังก์ชันที่กำหนดโดยผู้ใช้ใน Microsoft Excel

วีดีโอ: วิธีสร้างฟังก์ชันที่กำหนดโดยผู้ใช้ใน Microsoft Excel
วีดีโอ: จัดการลูกได้เลยครู เอาให้หนัก!! 2024, พฤศจิกายน
Anonim

แม้ว่า Excel จะมีฟังก์ชันในตัวนับร้อยอยู่แล้ว เช่น SUM, VLOOKUP, LEFT และอื่นๆ ฟังก์ชันที่มีอยู่ภายในมักจะไม่เพียงพอสำหรับการทำงานที่ค่อนข้างซับซ้อน อย่างไรก็ตาม ไม่ต้องกังวลเพราะคุณจะต้องสร้างฟังก์ชันที่จำเป็นด้วยตัวเองเท่านั้น

ขั้นตอน

สร้างฟังก์ชันที่กำหนดโดยผู้ใช้ใน Microsoft Excel ขั้นตอนที่ 1
สร้างฟังก์ชันที่กำหนดโดยผู้ใช้ใน Microsoft Excel ขั้นตอนที่ 1

ขั้นตอนที่ 1 สร้างเวิร์กบุ๊กใหม่หรือเปิดเวิร์กบุ๊กที่คุณต้องการประมวลผลด้วย User Defined Functions (UDF)

สร้างฟังก์ชันที่กำหนดโดยผู้ใช้ใน Microsoft Excel ขั้นตอนที่ 2
สร้างฟังก์ชันที่กำหนดโดยผู้ใช้ใน Microsoft Excel ขั้นตอนที่ 2

ขั้นตอนที่ 2 เปิด Visual Basic Editor ใน Microsoft Excel ผ่าน Tools->Macro->Visual Basic Editor (หรือกดทางลัด Alt+F11)

สร้างฟังก์ชันที่กำหนดโดยผู้ใช้ใน Microsoft Excel ขั้นตอนที่ 3
สร้างฟังก์ชันที่กำหนดโดยผู้ใช้ใน Microsoft Excel ขั้นตอนที่ 3

ขั้นตอนที่ 3 คลิกปุ่ม โมดูล เพื่อเพิ่มโมดูลใหม่ลงในเวิร์กชีตของคุณ

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

สร้างฟังก์ชันที่กำหนดโดยผู้ใช้ใน Microsoft Excel ขั้นตอนที่ 4
สร้างฟังก์ชันที่กำหนดโดยผู้ใช้ใน Microsoft Excel ขั้นตอนที่ 4

ขั้นตอนที่ 4 สร้าง "หัว" หรือ "ต้นแบบ" ของฟังก์ชันของคุณ

ต้นแบบฟังก์ชันต้องเป็นไปตามโครงสร้างต่อไปนี้:

ฟังก์ชันสาธารณะ "ชื่อฟังก์ชัน" (พารามิเตอร์ 1 เป็นประเภทที่ 1 พารามิเตอร์ 2 เป็นประเภท 2) เป็นประเภทผลลัพธ์

ต้นแบบสามารถมีฟังก์ชันได้มากเท่าที่เป็นไปได้ และชนิดของต้นแบบสามารถเป็นชนิดข้อมูลพื้นฐานทั้งหมดหรือชนิดวัตถุ Excel ในรูปแบบของช่วง คุณสามารถนึกถึงพารามิเตอร์เป็น “ตัวดำเนินการ” (ตัวดำเนินการ) ที่ฟังก์ชันจะทำหน้าที่ ตัวอย่างเช่น เมื่อคุณเขียน SIN(45) เพื่อคำนวณไซน์ของ 45 องศา ตัวเลข 45 จะถูกนำมาเป็นพารามิเตอร์ จากนั้นรหัสฟังก์ชันจะใช้ค่าเหล่านั้นในการคำนวณและแสดงผล

สร้างฟังก์ชันที่กำหนดโดยผู้ใช้ใน Microsoft Excel ขั้นตอนที่ 5
สร้างฟังก์ชันที่กำหนดโดยผู้ใช้ใน Microsoft Excel ขั้นตอนที่ 5

ขั้นตอนที่ 5. เพิ่มรหัสฟังก์ชันเพื่อให้แน่ใจว่าคุณ: 1) ใช้ค่าที่กำหนดโดยพารามิเตอร์; 2) ส่งผลลัพธ์ไปยังชื่อฟังก์ชัน และ 3) ปิดฟังก์ชันด้วยประโยค "end function". การเรียนรู้การเขียนโปรแกรมใน VBA หรือภาษาอื่น ๆ ต้องใช้เวลาและคำแนะนำโดยละเอียด โชคดีที่ฟังก์ชันเหล่านี้มักจะมีโค้ดบล็อกขนาดเล็กและไม่ได้ใช้คุณลักษณะภาษาการเขียนโปรแกรมมากนัก นี่คือองค์ประกอบบางส่วนของภาษา VBA ที่สามารถใช้ได้:

  1. บล็อก If (if) ซึ่งอนุญาตให้คุณเรียกใช้โค้ดบางส่วนได้ก็ต่อเมื่อตรงตามเงื่อนไขเท่านั้น ตัวอย่างเช่น:
  2. ผลลัพธ์หลักสูตรฟังก์ชันสาธารณะ (เป็นค่าจำนวนเต็ม) เป็นสตริง

    ถ้าค่า >= 5 แล้ว

    ผลลัพธ์ของหลักสูตร = "ยอมรับ"

    อื่น

    ผลการเรียน = "ถูกปฏิเสธ"

    จบถ้า

    ฟังก์ชั่นสิ้นสุด

    สังเกตองค์ประกอบในบล็อกโค้ด If:

    IF เงื่อนไข แล้ว รหัส ELSE รหัส END IF

  3. . คุณอาจละเว้นคำหลัก Else พร้อมกับส่วนที่สองของโค้ด เนื่องจากเป็นทางเลือก
  4. บล็อก Do (do) ซึ่งเรียกใช้งานส่วนหนึ่งของโค้ดในขณะที่หรือจนกว่าเมื่อหรือจนกว่าเงื่อนไขจะตรงตามเงื่อนไข ตัวอย่างเช่น:
  5. ฟังก์ชันสาธารณะ BilPrima (ค่าเป็นจำนวนเต็ม) เป็นบูลีน

    Dim ฉันเป็นจำนวนเต็ม

    ผม = 2

    บิลพรีมา = ทรู

    ทำ

    ถ้าค่า / i = Int(ค่า / i) แล้ว

    BilPrima = เท็จ

    จบถ้า

    ผม = ผม + 1

    วนรอบในขณะที่ฉัน <value And NumberPrima = True

    ฟังก์ชั่นสิ้นสุด

    ดูองค์ประกอบอีกครั้ง:

    DO รหัส LOOP WHILE/จนกว่าเงื่อนไข

  6. . นอกจากนี้ ให้สังเกตบรรทัดที่สองซึ่ง "ประกาศ" ตัวแปร คุณสามารถเพิ่มตัวแปรลงในโค้ดของคุณเพื่อใช้ในภายหลังได้ ตัวแปรทำหน้าที่เป็นค่าชั่วคราวในโค้ด สุดท้าย ให้พิจารณาการประกาศฟังก์ชันเป็น BOOLEAN ซึ่งเป็นประเภทข้อมูลที่อนุญาตเฉพาะค่า TRUE หรือ FALSE วิธีการกำหนดจำนวนเฉพาะนี้อยู่ไกลจากวิธีที่เหมาะสมที่สุด แต่โค้ดนี้ถูกเขียนในลักษณะที่อ่านง่าย
  7. สำหรับบล็อค (ถึง) ซึ่งรันโค้ดจำนวนหนึ่ง ตัวอย่างเช่น:
  8. แฟกทอเรียลฟังก์ชันสาธารณะ(value As Integer) As Long

    ผลติ่มซำนาน

    Dim ฉันเป็นจำนวนเต็ม

    ถ้าค่า = 0 แล้ว

    ผลลัพธ์ = 1

    ค่า ElseIf = 1 แล้ว

    ผลลัพธ์ = 1

    อื่น

    ผลลัพธ์ = 1

    สำหรับผม = 1 ถึงค่า

    ผล = ผลลัพธ์ * i

    ต่อไป

    จบถ้า

    แฟกทอเรียล = ผลลัพธ์

    ฟังก์ชั่นสิ้นสุด

    ดูองค์ประกอบอีกครั้ง:

    FOR ตัวแปร = ขีดจำกัดล่าง TO ขีดจำกัดบนของโค้ด NEXT

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

    ด้านล่างแสดงรหัสสำหรับฟังก์ชันที่แปลงตัวเลขขนาดเล็กเป็นคำ

    สร้างฟังก์ชันที่กำหนดโดยผู้ใช้ใน Microsoft Excel ขั้นตอนที่6
    สร้างฟังก์ชันที่กำหนดโดยผู้ใช้ใน Microsoft Excel ขั้นตอนที่6

    ขั้นตอนที่ 6 กลับไปที่สมุดงานและใช้ฟังก์ชันโดยเขียนสัญลักษณ์ "เท่ากับ" (=) ตามด้วยชื่อของฟังก์ชันในเซลล์

    เขียนวงเล็บเปิด (“(“) หลังชื่อฟังก์ชัน โดยใช้เครื่องหมาย อาการโคม่า เพื่อแยกพารามิเตอร์ และลงท้ายด้วยวงเล็บปิด (“)”) ตัวอย่างเช่น:

    =NumberToLetter(A4)

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

    1. ค่าคงที่ที่พิมพ์ลงในสูตรของเซลล์โดยตรง ในกรณีนี้ ต้องยกข้อความ (สตริง)
    2. การอ้างอิงเซลล์ ตัวอย่างเช่น B6 หรือช่วงเช่น A1:C3 (พารามิเตอร์ต้องเป็นประเภทข้อมูล “ช่วง”)
    3. ฟังก์ชันอื่นที่อยู่ในฟังก์ชันของคุณ (ฟังก์ชันของคุณสามารถรวมอยู่ในฟังก์ชันอื่นได้ด้วย) ตัวอย่างเช่น: =Factorial(MAX(D6:D8))

      สร้างฟังก์ชันที่กำหนดโดยผู้ใช้ใน Microsoft Excel ขั้นตอนที่7
      สร้างฟังก์ชันที่กำหนดโดยผู้ใช้ใน Microsoft Excel ขั้นตอนที่7

      ขั้นตอนที่ 7 ตรวจสอบให้แน่ใจว่าผลลัพธ์ถูกต้อง

      ใช้หลายครั้งเพื่อให้แน่ใจว่าฟังก์ชันสามารถจัดการค่าพารามิเตอร์ต่างๆ ได้อย่างถูกต้อง:

      เคล็ดลับ

      • เมื่อเขียนบล็อคโค้ดในโครงสร้างการควบคุม เช่น If, For, Do ฯลฯ ตรวจสอบให้แน่ใจว่าคุณเยื้อง (แทรกเส้นขอบด้านซ้ายด้านในเล็กน้อย) บล็อกโค้ดโดยกดแป้นเว้นวรรคหลายๆ ครั้ง หรือ tab ซึ่งจะทำให้โค้ดเข้าใจได้ง่ายขึ้นและหาข้อผิดพลาดได้ง่ายขึ้น นอกจากนี้ ฟังก์ชันการทำงานที่เพิ่มขึ้นยังทำให้ง่ายขึ้นอีกด้วย
      • หากคุณไม่ทราบวิธีเขียนโค้ดสำหรับฟังก์ชัน โปรดอ่านบทความวิธีเขียนแมโครอย่างง่ายใน Microsoft Excel
      • บางครั้ง ฟังก์ชันไม่ต้องการพารามิเตอร์ทั้งหมดเพื่อคำนวณผลลัพธ์ ในกรณีนี้ คุณสามารถใช้คีย์เวิร์ด Optional ก่อนชื่อพารามิเตอร์ในส่วนหัวของฟังก์ชันได้ คุณสามารถใช้ฟังก์ชัน IsMissing(parameter_name) ในโค้ดของคุณเพื่อตรวจสอบว่าพารามิเตอร์ถูกกำหนดเป็นค่าหรือไม่
      • ใช้ชื่อที่ไม่ได้ใช้เป็นฟังก์ชันใน Excel เพื่อไม่ให้มีการเขียนทับและลบฟังก์ชันใดๆ
      • Excel มีฟังก์ชันในตัวมากมาย และการคำนวณส่วนใหญ่สามารถทำได้โดยใช้ฟังก์ชันในตัวเหล่านี้ ทั้งแบบแยกส่วนหรือทั้งหมดพร้อมกัน ตรวจสอบให้แน่ใจว่าคุณได้ดูรายการฟังก์ชันที่มีอยู่ก่อนที่จะเริ่มเขียนโค้ดด้วยตนเอง การดำเนินการสามารถทำได้เร็วขึ้นหากคุณใช้ฟังก์ชันในตัว

      คำเตือน

      • ด้วยเหตุผลด้านความปลอดภัย หลายคนปิดใช้งานมาโคร ตรวจสอบให้แน่ใจว่าคุณได้แจ้งผู้รับสมุดงานของคุณว่าสมุดงานที่ส่งมีมาโคร และมาโครเหล่านี้จะไม่เป็นอันตรายต่อคอมพิวเตอร์ของพวกเขา
      • ฟังก์ชันที่ใช้ในบทความนี้ไม่ใช่วิธีที่ดีที่สุดในการแก้ปัญหาที่เกี่ยวข้อง ตัวอย่างนี้ใช้เพื่ออธิบายการใช้โครงสร้างการควบคุมภาษา
      • VBA เช่นเดียวกับภาษาอื่น ๆ มีโครงสร้างการควบคุมอื่น ๆ อีกหลายอย่างนอกเหนือจาก Do, If และ For โครงสร้างที่กล่าวถึงในที่นี้อธิบายเฉพาะสิ่งที่สามารถทำได้ในซอร์สโค้ดของฟังก์ชัน มีคำแนะนำมากมายบนอินเทอร์เน็ตที่สามารถใช้เพื่อช่วยให้คุณเรียนรู้ VBA

แนะนำ: