PDA

View Full Version : Link ข้าม sheet แต่ไม่ข้าม cell ครับ



jong007
22 May 2007, 16:07
คือว่าผมต้องการสร้าง Link ข้าม sheet แต่ไม่ข้าม cell ครับ เช่น....
Sheet1 มีข้อมูลตั้งแต่ A1-A10(1-10) ส่วนใน sheet2 ผมสร้าง link ที่ A1 ให้เท่ากับ A1ใน sheet1 (=Sheet1!A1).
.....แต่ใน A3 ของ Sheet2 นั้นผมต้องการให้เท่ากับ A2 ของ Sheet1 ครับ...ต้องทำอย่างไรครับ (โดยใช้วิธีการ copy แบบลากนะครับ ช่วยแนะนำหน่อยครับ:confused: file:///C:/Documents%20and%20Settings/Piroj/My%20Documents/Excel.JPG...ผมแนบรูปมาด้วยครับ

Ubolwan
23 May 2007, 21:20
ลองอ่านที่นี่ค่ะ
http://www.excelexperttraining.com/blog/archives/z200-eLearning000188.php

jong007
24 May 2007, 13:16
ลองอ่านที่นี่ค่ะ
http://www.excelexperttraining.com/blog/archives/z200-eLearning000188.php

ขอบคุณสำหรับคำตอบนะครับ...แต่มันยังไม่ใช่สิ่งที่ผมต้องการครับ
อธิบายใหม่ละกัน...คือว่า ผมทำตารางข้อมูลใว้ที่ Sheet1 ที่ A1-A10
หลังจากนั้นผมสร้าง Link ที่ sheet2 A1 คือ =Sheet1!A1... ที่นี้ถ้าผมต้องการที่จะ Copy สูตรที่ A1 ไปวางใว้ที่ A10, A20, A30...โดยที่ให้ cell นั้นๆ ดึงเอาข้อมูลจาก sheet1 cell A2, A3, A4, A5 ไปเรื่อยๆครับ
.....โดยปกติแล้วมันจะ link ข้าม cell ให้เองครับ เช่น ผม copy A1 ไปวางใว้ที่ A10 สูตรจะได้เป็น =Sheet1!A10 ครับ (แบบนี้ไม่ต้องการครับ)

....กรณีอย่างด้านบนที่ผมอธิบายนี้ผมต้องใช้สูตรอะไรครับ ช่วยแนะนำด้วยครับ

วานิชย์
24 May 2007, 14:06
คุณ jong007 อธิบาย 2 รอบ อ่านแล้วก็ยังไม่เข้าใจอย่างแจ่มแจ้งถึงความหมายที่ต้องการจะสื่ออยู่ดี ก็เลยไม่แน่ใจว่าคุณต้องการแบบไหนนะครับ :confused:

ถ้าต้องการ Link ข้าม Sheet โดยเริ่มจาก Sheet 2 ที่ A10 ให้แสดงข้อมูลของ Sheet 1 A1
Sheet2!A11 ให้แสดงข้อมูลของ Sheet1!A2
Sheet2!A12 ให้แสดงข้อมูลของ Sheet1!A3
Sheet2!A13 ให้แสดงข้อมูลของ Sheet1!A4
Sheet2!A14 ให้แสดงข้อมูลของ Sheet1!A5
ไปเรื่อย ๆ ก็ไม่น่าจะมีปัญหาอะไรนะครับ


แต่ถ้าต้องการคัดลอกสูตรที่ Link อยู่แล้วไปที่ตำแหน่งใหม่ แต่ยังคงต้องการให้สูตรนั้นยังคงตำแหน่ง Cell ต้นทางเหมือนเดิม ไม่เปลี่ยนแปลง ก็สามารถใช้ $ ช่วยได้ครับ

เช่น Sheet 2 ที่ A1 กำหนดการ Link เป็น =Sheet1!A1 จากนั้นมีการคัดลอกไปไว้ที่ A10 สูตรจะเปลี่ยนไปเป็น =Sheet1!A10

แต่ถ้าใช้ $ ช่วย
เช่นเดียวกัน Sheet 2 ที่ A1 กำหนดการ Link เป็น =Sheet1!$A$1 จากนั้นมีการคัดลอกไปไว้ที่ A10 สูตรจะคงเหมือนเดิมไม่เปลี่ยนแปลงคือ =Sheet1!$A$1

แต่ถ้ามีข้อมูลมาก ๆ ซับซ้อนขึ้นก็อาจจะนำ Function Indirect() มาช่วยก็จะสะดวกขึ้นครับ
:)

hs1
8 Jun 2007, 16:16
คือว่าผมต้องการสร้าง Link ข้าม sheet แต่ไม่ข้าม cell ครับ เช่น....
Sheet1 มีข้อมูลตั้งแต่ A1-A10(1-10) ส่วนใน sheet2 ผมสร้าง link ที่ A1 ให้เท่ากับ A1ใน sheet1 (=Sheet1!A1).
.....แต่ใน A3 ของ Sheet2 นั้นผมต้องการให้เท่ากับ A2 ของ Sheet1 ครับ...ต้องทำอย่างไรครับ (โดยใช้วิธีการ copy แบบลากนะครับ ช่วยแนะนำหน่อยครับ:confused: file:///C:/Documents%20and%20Settings/Piroj/My%20Documents/Excel.JPG...ผมแนบรูปมาด้วยครับ
ลองดูตรงกับเงื่อนไขหรือไม่ครับ
ใช้สูตร INDIRECT("'" & $B$1 & "'!" & B3))

jong007
3 Jul 2007, 10:49
ผมก็ไม่รู้ว่าจะอธิบายอย่างไรดีครับ....และผมแนบไฟล์ตัวอย่างมาด้วยครับ
น่าจะดีขึ้นนะครับ:o อย่างไรก็ขอขอบคุณทุกท่านนะครับสำหรับคำตอบ

arunyach
3 Jul 2007, 11:04
ลองดูค่ะ

สมเกียรติ
3 Jul 2007, 11:31
B3
=INDEX( Sheet1!$B$3:$B$102, Sheet2!A3 )

jong007
3 Jul 2007, 11:38
ลองดูค่ะ

ขอบคุณมากครับ...แต่ยังไม่ตรงสักเท่าไรครับ
อธิบายเพิ่มจากไฟล์ที่คุณแนบมานะครับ
....ใน sheet2 ถ้าผม copy จาก cell B3 แล้วไป paste ใว้ใน cell B9(กรณี B9... ยังไม่มีสูตร) ค่าที่ใด้มันก็ยังเป็น Test1 อยู่นะครับ ผมต้องการให้มันใด้ค่า Test2, Test3....จนถึง Test100 ครับ cell ที่มีสีเหลืองทั้งหมดนะครับ

ผมแนบไฟล์มาใหม่ครับ

สมเกียรติ
3 Jul 2007, 11:42
ตัวอย่างคำตอบที่ได้ไปนั้น สามารถดึงค่าได้ถูกต้องแล้วนะครับ ไม่ว่าจะใช้ VLookup หรือ Index ก็ใช้ได้เหมือนกัน เพียงแต่ว่าแฟ้มนั้นกำหนดการคำนวณไว้แบบ Manual ซึ่งเราต้องกดปุ่ม F9 เพื่อสั่งคำนวณ

ให้แก้ Tools > Options > Calculation > กาช่อง Automatic แทน

jong007
3 Jul 2007, 16:24
ตัวอย่างคำตอบที่ได้ไปนั้น สามารถดึงค่าได้ถูกต้องแล้วนะครับ ไม่ว่าจะใช้ VLookup หรือ Index ก็ใช้ได้เหมือนกัน เพียงแต่ว่าแฟ้มนั้นกำหนดการคำนวณไว้แบบ Manual ซึ่งเราต้องกดปุ่ม F9 เพื่อสั่งคำนวณ

ให้แก้ Tools > Options > Calculation > กาช่อง Automatic แทน

แก้ใขแล้ว ได้แล้วครับ
...ขอบคุณ คุณสมเกียรติ ,คุณ arunyach มากครับ และคนอื่นๆที่ช่วยกันตอบด้วยนะครับ :D