IMPORTRANGE

นำเข้าช่วงเซลล์จากสเปรดชีตที่ระบุ

ตัวอย่างการใช้งาน

IMPORTRANGE("https://docs.google.com/spreadsheets/d/abcd123abcd123", "sheet1!A1:C10")

IMPORTRANGE(A2,"B2")

รูปแบบคำสั่ง

IMPORTRANGE(spreadsheet_url, range_string)

  • spreadsheet_url - URL ของสเปรดชีตจากที่ที่นำเข้าข้อมูล

    • ค่าของ spreadsheet_url ต้องอยู่ในเครื่องหมายคำพูดหรือเป็นการอ้างอิงเซลล์ที่มี URL ของสเปรดชีต
  • range_string - สตริงในรูปแบบ "[sheet_name!]range" (เช่น "Sheet1!A2:B6" หรือ "A2:B6") ซึ่งระบุช่วงที่ต้องการนำเข้า

    • ผู้ใช้จะระบุหรือไม่ระบุองค์ประกอบ sheet_name ของ range_string ก็ได้ โดยระบบจะนำเข้าค่าเริ่มต้น IMPORTRANGE จากช่วงที่ระบุของชีตแรก

    • ค่าของ range_string ต้องอยู่ในเครื่องหมายคำพูดหรือเป็นการอ้างอิงเซลล์ที่มีข้อความที่ถูกต้อง

รายละเอียดทางเทคนิคและแนวทางปฏิบัติแนะนำ

การอัปเดตเอกสารต้นทาง IMPORTRANGE จะทําให้เอกสารที่ได้รับข้อมูลซึ่งเปิดอยู่ทั้งหมดรีเฟรชและแสดงแถบการโหลดสีเขียว นอกจากนี้ IMPORTRANGE ยังรอให้การคํานวณเสร็จสมบูรณ์ในเอกสารต้นทางก่อนจะแสดงผลในเอกสารที่ได้รับข้อมูล แม้ว่าจะไม่มีการคํานวณในช่วงต้นทางดังกล่าวก็ตาม

แนวทางปฏิบัติแนะนำ

  • จํากัดจํานวนชีตที่ได้รับข้อมูลเนื่องจากต้องอ่านชีตแต่ละรายการจากชีตต้นทาง
  • ปรับโครงสร้างและจํากัดผลลัพธ์ก่อนที่จะใช้ IMPORTRANGE โดยเฉพาะหากนําเข้าข้อมูลจากชีตที่อัปเดตบ่อย
    • ตัวอย่างเช่น เป้าหมายของคุณคือการคํานวณผลรวมของแถวแนวนอน 1,000,000 แถวจากสเปรดชีตอื่น จะเห็นได้ว่าการคํานวณผลรวมของสเปรดชีตนั้นทำได้รวดเร็วกว่าเดิม จากนั้นให้ใช้ IMPORTRANGE เพื่อดึงข้อมูลผลรวมจํานวนนั้นแทนที่จะใช้ IMPORTRANGE เพื่อโอนข้อมูลแถวแนวนอนทั้ง 1,000,000 แถวโดยตรง และคํานวณผลรวมในสเปรดชีต วิธีนี้จะจํากัดและรวบรวมข้อมูลสําหรับ IMPORTRANGE ก่อนการโอน

การอัปเดต IMPORTRANGE สามารถเผยแพร่ไปยังชีตอื่นๆ เมื่อคุณเชื่อมโยงชีตเข้าด้วยกัน หากชีต B มี IMPORTRANGE(sheet A) และชีต C มี IMPORTRANGE(sheet B) ระบบจะสร้างเชน การอัปเดตชีต A จะทําให้ชีต B และชีต C โหลดซ้ํา

แนวทางปฏิบัติแนะนำ

  • จํากัดเชน IMPORTRANGE ในชีตหลายรายการ
  • หลีกเลี่ยงวงจรของ IMPORTRANGE ตัวอย่างเช่น อาจเป็นการสร้างวงจรหากคุณใช้ IMPORTRANGE ในหลายสเปรดชีตที่อ้างอิงถึงกันและกัน เช่น ข้อมูลของสเปรดชีต A ใช้ IMPORTRANGE จากสเปรดชีต B และสเปรดชีต B ก็ใช้ IMPORTRANGE เพื่อดึงข้อมูลจากสเปรดชีต A การดําเนินการนี้จะทําให้ระบบวนซ้ําในแต่ละรายการ โดยพยายามอ้างอิงกันและกันอย่างต่อเนื่อง และไม่ทําให้เกิดเอาต์พุตข้อมูลจริง
  • การเปลี่ยนแปลงของชีตต้นฉบับและชีตที่ได้รับผลกระทบจะมีความล่าช้า ซึ่งหมายความว่าเลเยอร์ IMPORTRANGE หลายเลเยอร์ในเอกสารหลายๆ เชนอาจทําให้การอัปเดตชีตต้นทางล่าช้าและส่งผลต่อชีตที่ได้รับผลกระทบ

IMPORTRANGE จะโหลดซ้ําเมื่อมีการเปิดเอกสารครั้งแรกหรือเปิดเอกสารภายใน 5 นาทีที่ผ่านมา เช่นเดียวกับกรณีของเชนการอัปเดต วิธีนี้ต้องใช้ IMPORTRANGE เพื่อ "ปลุก" เอกสารทั้งหมดที่นําเข้ามา

แนวทางปฏิบัติแนะนำ

  • โปรดทราบว่าการอัปเดตเอกสารอาจใช้เวลาสักพัก คุณควรจํากัดเชนของ IMPORTRANGE 

สิทธิ์และการเข้าถึง

สเปรดชีตต้องได้รับสิทธิ์โดยตรงในการดึงข้อมูลจากสเปรดชีตอื่นโดยใช้ IMPORTRANGE เมื่อชีตปลายทางดึงข้อมูลจากชีตต้นทางใหม่เป็นครั้งแรก ผู้ใช้จะได้รับข้อความแจ้งว่าต้องให้สิทธิ์
หากคุณพยายามใช้ IMPORTRANGE เพื่อโอนข้อมูลจากสเปรดชีตที่คุณเป็นเจ้าของ ข้อความนี้จะปรากฏขึ้น
You need to connect these sheets error message
  1. รอสักครู่หลังจากใช้ฟังก์ชัน IMPORTRANGE เสร็จสมบูรณ์แล้ว
  2. ข้อผิดพลาด #REF จะเปิดขึ้นและพร้อมระบุว่า "คุณต้องเชื่อมต่อชีตเหล่านี้ โปรดอนุญาตให้เข้าถึง"
  3. หากต้องการให้สิทธิ์เข้าถึงสเปรดชีตต้นทาง ให้คลิกอนุญาตให้เข้าถึง

หากคุณพยายามใช้ IMPORTRANGE เพื่อโอนข้อมูลจากสเปรดชีตที่คุณไม่ได้เป็นเจ้าของ ข้อความนี้จะปรากฏขึ้นในอีกไม่กี่วินาที 

You don't have permissions to access that sheet message

  1. ป้อน URL สเปรดชีตต้นฉบับในเบราว์เซอร์
  2. ขอสิทธิ์เข้าถึงสเปรดชีต
  3. รอให้เจ้าของสเปรดชีตมอบสิทธิ์ให้คุณ
เมื่อให้สิทธิ์เข้าถึงแล้ว เครื่องมือแก้ไขในสเปรดชีตปลายทางจะสามารถใช้ IMPORTRANGE เพื่อดึงข้อมูลจากส่วนใดก็ได้ของสเปรดชีตต้นทาง สิทธิ์การเข้าถึงจะมีผลต่อไปจนกว่าผู้ใช้ที่ให้สิทธิ์นั้นจะถูกนำออกจากแหล่งที่มาของข้อมูล โปรดทราบว่าสิทธิ์เข้าถึงชีตปลายทางจะใช้โควต้าการแชร์ให้ผู้ใช้ได้สูงสุด 600 รายสําหรับชีตต้นทาง

ประสิทธิภาพ

IMPORTRANGE เป็นฟังก์ชันข้อมูลภายนอก เช่นเดียวกับ IMPORTXML และ GOOGLEFINANCE ซึ่งหมายความว่าคุณจะต้องเชื่อมต่ออินเทอร์เน็ตจึงจะใช้งานได้ ชีตต้องดาวน์โหลดทั้งช่วงลงในคอมพิวเตอร์ของคุณและจะดำเนินการได้ช้าหากเครือข่ายมีความเร็วต่ำ โดยจะรับข้อมูลได้ไม่เกิน 10 MB ต่อคำขอ หากพบว่าโฟลเดอร์ IMPORTRANGE ทํางานช้า คุณควรจํากัดขนาดของช่วงที่นําเข้า หรือใส่การคํานวณแบบสรุปไว้ในเอกสารต้นทางเพื่อลดจำนวนข้อมูลที่จะโอนไปยังชีตในเครื่อง ซึ่งทำให้คํานวณเพิ่มเติมจากระยะไกลได้มากขึ้น

เคล็ดลับ: คุณอาจใช้เครื่องมืออื่นๆ AppsScript สามารถอ่านข้อมูลจากเอกสารอื่นๆ และทริกเกอร์การแก้ไขได้และตามกําหนดเวลาที่ระบุไว้ล่วงหน้า ชีตที่เชื่อมต่อมีการรีเฟรชที่กําหนดเวลาไว้ รวมทั้งได้รับการสร้างขึ้นให้โหลดและนําเข้าชุดข้อมูลที่ใหญ่ขึ้นได้ดีกว่า

ขีดจำกัดการใช้งาน

Loading data may take a while because of the large number of requests error message

เมื่อฟังก์ชัน IMPORTRANGE สร้างการรับส่งข้อมูลมากเกินไป คุณอาจเห็นข้อความในเซลล์ที่ระบุว่า "กําลังโหลด…" พร้อมข้อความแสดงข้อผิดพลาดโดยละเอียดว่า "เกิดข้อผิดพลาดในการโหลด อาจใช้เวลาสักครู่เนื่องจากมีคําขอจํานวนมาก ลองลดจํานวนฟังก์ชัน IMPORTHTML, IMPORTDATA, IMPORTFEED หรือ IMPORTXML ในสเปรดชีตที่คุณสร้าง" 
ระบบจะบังคับใช้ขีดจํากัดกับผู้สร้างเอกสาร ผู้ใช้ต้องพิจารณาผลรวมของการใช้งานฟังก์ชันการนําเข้าทั้งหมดในเอกสารที่เปิดอยู่ทั้งหมด การแก้ไขที่ดำเนินการโดยผู้ทํางานร่วมกันอาจนับรวมในโควต้าของคุณด้วย
หากต้องการแก้ไขข้อความแสดงข้อผิดพลาด เราขอแนะนําให้ผู้ใช้ลดจํานวนการเลิกใช้งานในฟังก์ชันการนําเข้า เช่น หากค่าที่แก้ไขแล้วสําหรับอาร์กิวเมนต์ใน =IMPORTRANGE(arg) มีการเปลี่ยนแปลงบ่อย อาจมีการออกการเรียกภายนอกหลายรายการ ซึ่งอาจทําให้มีการควบคุม 

ความใหม่ของข้อมูล

Google ชีตช่วยให้มั่นใจว่าผู้ใช้ Google ชีตจะได้รับข้อมูลที่เป็นข้อมูลล่าสุดขณะที่ยังคงการใช้งานได้อย่างสมเหตุสมผล IMPORTRANGE จะตรวจหาการอัปเดตโดยอัตโนมัติทุกชั่วโมงขณะที่เอกสารเปิดอยู่ แม้ว่าสูตรและสเปรดชีตจะไม่เปลี่ยนแปลง หากคุณลบ อ่าน หรือเขียนทับเซลล์ที่มีสูตรเดียวกัน ระบบจะทริกเกอร์การโหลดฟังก์ชันซ้ํา หากคุณเปิดและโหลดเอกสารซ้ํา ระบบจะไม่ทริกเกอร์การโหลดซ้ําใน IMPORTRANGE

ความผันผวน

เมื่อใช้ IMPORTRANGE คุณอาจได้รับ "#ERROR!" ในเซลล์ พร้อมข้อความแสดงข้อผิดพลาดโดยละเอียด "เกิดข้อผิดพลาด ฟังก์ชันนี้ไม่สามารถอ้างอิงเซลล์ด้วย NOW, RAND หรือ RANDBETWEEN" ฟังก์ชันนําเข้าต้องไม่อ้างอิงฟังก์ชันที่มีความผันผวนโดยตรงหรือโดยอ้อม เช่น ตอนนี้ RAND หรือ RANDBETWEEN วิธีนี้จะช่วยป้องกันไม่ให้สเปรดชีตของผู้ใช้ทํางานหนักเกินไป เนื่องจากฟังก์ชันที่มีความผันผวนเหล่านี้มีการอัปเดตบ่อยครั้ง
This function is not allowed to reference a cell with NOW(), RAND(), or RANDBETWEEN() error message
เคล็ดลับ: มีข้อยกเว้นอย่างเดียวสําหรับฟังก์ชัน TODAY ซึ่งเป็นฟังก์ชันที่มีความผันผวน แต่ไม่ได้อัปเดตมากกว่าวันละครั้ง

ขอแนะนำให้คุณทำดังนี้

  1. คัดลอกผลลัพธ์ของฟังก์ชันที่มีความผันผวนเหล่านั้น
  2. ใช้การวางแบบพิเศษ จากนั้น ค่าเท่านั้น
  3. อ้างอิงค่าคงที่เหล่านั้น 

หากทําเช่นนี้ ค่าทั้งหมดจะกลายเป็นแบบคงที่ เช่น หากคัดลอกและวางผลลัพธ์แบบพิเศษ NOW ในรูปแบบของค่า ค่าที่คุณวางจะไม่เปลี่ยนแปลง

หากยังมีคําถาม โปรดไปที่ชุมชนความช่วยเหลือเกี่ยวกับเครื่องมือแก้ไข Google เอกสารเพื่อขอความช่วยเหลือ

ดูเพิ่มเติม

IMPORTXML: นำเข้าข้อมูลจากประเภทข้อมูลที่มีโครงสร้างที่หลากหลาย ซึ่งรวมถึง XML, HTML, CSV, TSV และฟีด RSS และ ATOM XML

IMPORTHTML: นำเข้าข้อมูลจากตาราง/รายการภายในหน้า HTML

IMPORTFEED: นำเข้าฟีด RSS หรือ Atom

IMPORTDATA: นำเข้าข้อมูลจาก URL ที่ระบุในรูปแบบ .csv (ค่าที่คั่นด้วยจุลภาค) หรือ .tsv (ค่าที่คั่นด้วยแท็บ)

ดูวิธีเพิ่มประสิทธิภาพให้การอ้างอิงข้อมูล

true
ค้นหา
ล้างการค้นหา
ปิดการค้นหา
เมนูหลัก
1556931685006123366
true
ค้นหาศูนย์ช่วยเหลือ
true
true
true
true
true
35
false
false