นี่สำหรับ Excel
พิจารณาฟังก์ชั่นที่ผู้ใช้กำหนด (UDF) ต่อไปนี้:
Public Function GetEmailAddy(Sin As String) As String
Dim s As String
If InStr(1, Sin, "@") = 0 Then
GetEmailAddy = ""
Exit Function
End If
s = Replace(Sin, Chr(10), " ")
s = Replace(s, Chr(13), " ")
s = Application.WorksheetFunction.Trim(s)
ary = Split(s, " ")
For Each a In ary
If InStr(1, a, "@") > 0 Then
GetEmailAddy = a
Exit Function
End If
Next a
End Function
ฟังก์ชั่นที่ผู้ใช้กำหนด (UDF) นั้นง่ายต่อการติดตั้งและใช้งาน:
- ALT-F11 เปิดหน้าต่าง VBE ขึ้นมา
- ALT-I ALT-M เปิดโมดูลใหม่
- วางสิ่งต่างๆลงในและปิดหน้าต่าง VBE
หากคุณบันทึกเวิร์กบุ๊ก UDF จะถูกบันทึกไว้ด้วย หากคุณกำลังใช้ Excel รุ่นหนึ่งในภายหลังจากนั้นคุณต้องบันทึกไฟล์เป็น. xlsm แทนที่จะเป็น. xlsx
ในการลบ UDF:
- เปิดหน้าต่าง VBE ขึ้นด้านบน
- ล้างรหัสออก
- ปิดหน้าต่าง VBE
วิธีใช้ UDF จาก Excel:
=GetEmailAddy(A1)
หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับมาโครโดยทั่วไปโปรดดู:
http://www.mvps.org/dmcritchie/excel/getstarted.htm
และ
http://msdn.microsoft.com/en-us/library/ee814735(v=office.14).aspx
และสำหรับข้อมูลเฉพาะของ UDF โปรดดู:
http://www.cpearson.com/excel/WritingFunctionsInVBA.aspx
ต้องเปิดใช้งานแมโครเพื่อให้สิ่งนี้ทำงานได้!
นี่คือตัวอย่างบางส่วน:

{2, 4}สามารถ จำกัด เพราะ TLD ที่จะเกิดขึ้นจำนวนมากเช่น.codesเกิน 4 ตัวอักษร