สำคัญ
ข้อควรระวัง การแก้ไขรีจิสทรีอย่างไม่ถูกต้องอาจสร้างความเสียหายอย่างร้ายแรงกับระบบปฏิบัติการของคุณ จนทําให้คุณต้องติดตั้งระบบปฏิบัติการใหม่ Microsoft ไม่สามารถรับประกันได้ว่าจะสามารถแก้ไขปัญหาที่เป็นผลมาจากการแก้ไขรีจิสทรีอย่างไม่ถูกต้องได้ ก่อนที่จะแก้ไขรีจิสทรี ให้สํารองข้อมูลที่สําคัญไว้ สําหรับข้อมูลล่าสุดเกี่ยวกับการใช้งานและการปกป้องรีจิสทรีในคอมพิวเตอร์ของคุณ ให้ดูวิธีใช้ของ Microsoft Windows
บทความนี้จะอธิบายเกี่ยวกับไวยากรณ์ของสูตรและการใช้ฟังก์ชัน CALL ใน Microsoft Excel
หมายเหตุ
ฟังก์ชัน CALL ไม่พร้อมใช้งานใน Excel สำหรับเว็บ
คำอธิบาย
เรียกใช้กระบวนงานใน Dynamic Link Library หรือ Code Resource ฟังก์ชันนี้มีไวยากรณ์สองรูปแบบ ใช้ไวยากรณ์ที่ 1 กับ Code Resource ที่ได้ลงทะเบียนไว้ก่อนหน้านี้เท่านั้น ซึ่งจะใช้อาร์กิวเมนต์จากฟังก์ชัน REGISTER ใช้ไวยากรณ์ที่ 2a หรือ 2b ในการลงทะเบียนพร้อมกับเรียก Code Resource
สำคัญ
ฟังก์ชันนี้สําหรับผู้ใช้ขั้นสูงเท่านั้น ถ้าคุณใช้ฟังก์ชัน CALL อย่างไม่ถูกต้อง อาจก่อให้เกิดข้อผิดพลาดที่ทําให้ต้องเริ่มต้นคอมพิวเตอร์ใหม่ ฟังก์ชันนี้สามารถใช้ได้จากแผ่นงานแมโคร Excel เท่านั้น
ไวยากรณ์
ไวยากรณ์ 1
ให้ใช้กับฟังก์ชัน REGISTER
CALL(register_id,[argument1], ...)
ไวยากรณ์ 2
ใช้แบบเอกเทศ (ใน Microsoft Excel สำหรับ Windows)
Register_id คือค่าที่ส่งกลับโดยฟังก์ชัน REGISTER หรือ REGISTER.ID ที่ดําเนินการก่อนหน้า
CALL(module_text,procedure,type_text,[argument1], ],...)
ไวยากรณ์ของฟังก์ชัน CALL มีอาร์กิวเมนต์ดังนี้
- Module_text จําเป็น ข้อความอ้างอิงซึ่งระบุชื่อของ Dynamic Link Library (DLL) ที่มีกระบวนงานใน Microsoft Excel สําหรับ Windows
- ขั้นตอน จําเป็น ข้อความที่ระบุชื่อของฟังก์ชันใน DLL ใน Microsoft Excel สําหรับ Windows คุณยังสามารถใช้ค่าแสดงลําดับของฟังก์ชันจากคําสั่ง EXPORTS ในไฟล์ข้อกําหนดมอดูล ( DEF) ค่าแสดงลําดับจะต้องไม่อยู่ในรูปแบบข้อความ
- Type_text จําเป็น ข้อความที่ระบุชนิดข้อมูลของค่าส่งกลับและชนิดข้อมูลของอาร์กิวเมนต์ทั้งหมดสําหรับ DLL หรือ Code Resource ตัวอักษรตัวแรกของ type_text จะระบุค่าที่ส่งกลับ โค้ดที่คุณใช้สําหรับ type_text มีอธิบายไว้อย่างละเอียดใน การใช้ฟังก์ชัน CALL และ REGISTER สําหรับ DLL หรือ Code Resource (XLL) แบบสแตนด์อโลน คุณสามารถละอาร์กิวเมนต์นี้ได้
- อาร์กิวเมนต์ 1,... ไม่บังคับ อาร์กิวเมนต์ที่จะส่งผ่านไปยังกระบวนงาน
ตัวอย่าง
สูตรแมโครดังต่อไปนี้จะลงทะเบียนฟังก์ชัน GetTickCount จาก Microsoft Windows แบบ 32 บิต GetTickCount ส่งกลับค่าเป็นจํานวนมิลลิวินาทีที่ผ่านไปตั้งแต่เริ่มต้น Microsoft Windows
REGISTER("Kernel32","GetTickCount","J")
สมมติว่าฟังก์ชัน REGISTER นี้อยู่ในเซลล์ A5 หลังจากที่แมโครของคุณลงทะเบียน GetTickCount คุณสามารถใช้ฟังก์ชัน CALL เพื่อส่งกลับค่าจำนวนมิลลิวินาทีที่ผ่านมาแล้ว:
CALL(A5)