snasui.com ยินดีต้อนรับ
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ ระบุ Version ของ Excel
คำแสดงเจตนา
ขอผลแห่งการให้ความรู้นี้ จงกลับไปยังผู้ที่เป็นเจ้าของเดิม แม้ข้าพเจ้าจะไม่รู้จักท่านก็ตาม ขอให้แสงแห่งปัญญาที่ท่านเคยจุดไว้ ได้กลับไปเติมเต็มชีวิตของท่านอีกครั้ง และขอให้เจตนาของข้าพเจ้าเป็นการคืนความดีอย่างสงบ
ฟอรัมถาม-ตอบปัญหาการใช้งาน MS Excel and VBA
Forum rules
ไม่อนุญาตให้ใช้ภาษาแชทในการถามและตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
ห้ามถามโดยระบุชื่อผู้ตอบและต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
กรุณาอธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
กรุณาแนบไฟล์ตัวอย่างพร้อมแสดงคำตอบที่ถูกต้องมาในไฟล์ด้วยเพื่อให้ง่ายต่อการทำความเข้าใจและสะดวกต่อการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่นที่อาจจะถูกลบทิ้งไปโดยต้นทางในภายหลัง นอกจากนี้ไม่ควรแนบไฟล์ที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
กรณีเป็นคำถามเกี่ยวกับ Programming เช่น VBA, VB.Net, C#, SQL ฯลฯ ต้องลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน กรุณาโพสต์ Code ให้แสดงเป็น Code คือเปิดด้วย [code] และปิดด้วย [/code] ตัวอย่างเช่น [code]dim r as range[/code] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
liveday
Bronze
Posts: 286 Joined: Fri Mar 25, 2011 2:24 pm
Excel Ver: 2007
#1
Post
by liveday » Mon Oct 10, 2011 12:00 pm
เรียน อาจารย์
พอจะมีวิธีก็อบปี้สูตรลงด้านล่าง เปลี่ยน ='01'!$E$2 เป็น ='02'!$E$2 ใด้ไหมครับ
ตามไฟล์เเนบครับ
รบกวนอาจาร์ยด้วยนะครับ
ขอบคุณมากครับ
You do not have the required permissions to view the files attached to this post.
snasui
Site Admin
Posts: 31176 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#2
Post
by snasui » Mon Oct 10, 2011 12:06 pm
ลองตามนี้ครับ
ที่ชีท Database เซลล์ A3 คีย์
=INDIRECT("
' 0"&ROWS(A$3:A3)&"
' !E2")
Enter > Copy ลงด้านล่าง ลองประยุกต์ใช้กับเซลลอื่น ๆ ครับ
liveday
Bronze
Posts: 286 Joined: Fri Mar 25, 2011 2:24 pm
Excel Ver: 2007
#3
Post
by liveday » Mon Oct 10, 2011 12:49 pm
ใด้ลองใช้เป็นไปอย่างที่ต้องการครับ
ขอบคุณมากครับ
liveday
Bronze
Posts: 286 Joined: Fri Mar 25, 2011 2:24 pm
Excel Ver: 2007
#4
Post
by liveday » Wed Oct 12, 2011 3:24 pm
รบกวนอาจารย์อีกครับ
กรณีนี้ทำยังไงให้ข้าม Work Book ใด้ครับ
ขอบคุณครับ
snasui
Site Admin
Posts: 31176 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#5
Post
by snasui » Wed Oct 12, 2011 4:42 pm
liveday
Bronze
Posts: 286 Joined: Fri Mar 25, 2011 2:24 pm
Excel Ver: 2007
#6
Post
by liveday » Thu Oct 13, 2011 12:37 pm
เบื้องต้นใด้ลองทำดูเเล้ว เเต่ Copy ลงด้านล่างไม่ใด้ครับ ต้องปรับตรงไหนบ้างครับ รบกวนอาจารย์อีกครั้งครับ
You do not have the required permissions to view the files attached to this post.
snasui
Site Admin
Posts: 31176 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#7
Post
by snasui » Thu Oct 13, 2011 1:47 pm
ไม่เข้าใจครับ ช่วยอธิบายว่าต้องการแสดงข้อมูลในที่ใด จากแหล่งข้อมูลใดเพื่อจะได้เข้าใจได้ตรงกันครับ
liveday
Bronze
Posts: 286 Joined: Fri Mar 25, 2011 2:24 pm
Excel Ver: 2007
#8
Post
by liveday » Thu Oct 13, 2011 1:58 pm
คือจะ Copy ลงด้านล่าง คล้ายสูตร =INDIRECT("'0"&ROWS(A$3:A3)&"'!E2") โดยกำหนดการ Copy ลงด้านล่างให้เปลี่ยนเฉพาะชีทเท่านั้น ครับ
จากฟอร์มข้อมูล A1 ไปแสดงที่ Database
สูตรนี้ ='C:\Users\128service\Desktop\TEST BILL\[A1.xls]01'!B5 ต้องการ จะ Copy ลงด้านล่างให้เปลี่ยนเฉพาะชีทเท่านั้นครับ
ขอบคุณครับ
snasui
Site Admin
Posts: 31176 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#9
Post
by snasui » Thu Oct 13, 2011 3:08 pm
อืม...ตอนแรกเข้าใจว่าต้องการรวมจากหลายไฟล์
หากเป็นไฟล์อื่นเพียงไฟล์เดียวกันแต่หลายชีทสามารถปรับสูตรเป็นตามด้านล่าง โดย
เปิดไฟล์ A1.xls ไว้ด้วยครับ
=INDIRECT("'[A1.xls]"&0&ROWS(A$3:A3)&"'!E2")
Last edited by
snasui on Tue Oct 18, 2011 4:17 pm, edited 1 time in total.
Reason: เปลี่ยนจาก 0" เป็น 0
liveday
Bronze
Posts: 286 Joined: Fri Mar 25, 2011 2:24 pm
Excel Ver: 2007
#10
Post
by liveday » Tue Oct 18, 2011 3:58 pm
รบกวนอาจารย์ครับ
ใส่สูตรตามอาจารย์แล้วมัน Error ครับ ตามภาพ
You do not have the required permissions to view the files attached to this post.
snasui
Site Admin
Posts: 31176 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#11
Post
by snasui » Tue Oct 18, 2011 4:01 pm
แนบไฟล์ตัวอย่างมาด้วยครับ จะได้ตรวจสอบว่ามีการคีย์ตกอักขระใดไปหรือไม่ อย่างไร
liveday
Bronze
Posts: 286 Joined: Fri Mar 25, 2011 2:24 pm
Excel Ver: 2007
#12
Post
by liveday » Tue Oct 18, 2011 4:06 pm
ตามไฟล์เเนบนี้ครับ ต้องการข้อมูลของ A1 มาเก็บใว้ที่ DATABASE
ขอบคุณอาจารย์มากครับกับทุกคำตอบ
You do not have the required permissions to view the files attached to this post.
snasui
Site Admin
Posts: 31176 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#13
Post
by snasui » Tue Oct 18, 2011 4:15 pm
เปลี่ยนสูตรใหม่เป็นตามด้านล่างครับ
=INDIRECT("'[A1.
xlsx ]"&
0 &ROWS(A$3:A3)&"'!E2")
เนื่องจากเป็นไฟล์ Version 2007 ขึ้นไป และให้ลบเครื่องหมาย
" หลังเลข 0 ทิ้งไปด้วยซึ่งผมคีย์เกินมาจากการตอบในคราวที่แล้ว
liveday
Bronze
Posts: 286 Joined: Fri Mar 25, 2011 2:24 pm
Excel Ver: 2007
#14
Post
by liveday » Wed Oct 19, 2011 12:58 pm
อาจารย์ครับพอจะมีวิธีให้ ข้อความ #REF! ไม่ขึ้นใด้ไหมครับ เนื่องจากว่าผมทำสูตรล่วงหน้าใว้ทำให้ข้อความนี้ขึ้นมาครับ
รบกวนอาจารย์ด้วยนะครับ
ขอบคุณครับ
snasui
Site Admin
Posts: 31176 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#15
Post
by snasui » Wed Oct 19, 2011 1:08 pm
ฟังก์ชั่น Indirect นั้น ถ้าหากไฟล์ต้นทางไม่ได้เปิดขึ้นมาพร้อมกับไฟล์ปลายทางก็จะเกิดค่าผิดพลาดเป็น #Ref! ครับ
หากไม่ต้องการจะเห็นค่าผิดพลาด สามารถใช้ฟังก์ชั่น If ไปดัก เช่นตามด้านล่างครับ
=If(Iserr(INDIRECT("'[A1.xlsx]"&0&ROWS(A$3:A3)&"'!E2"))),"",INDIRECT("'[A1.xlsx]"&0&ROWS(A$3:A3)&"'!E2"))
liveday
Bronze
Posts: 286 Joined: Fri Mar 25, 2011 2:24 pm
Excel Ver: 2007
#16
Post
by liveday » Wed Oct 19, 2011 1:31 pm
ขอบคุณอาจารย์กับทุกคำตอบมากครับ
ขอบคุณครับ
liveday
Bronze
Posts: 286 Joined: Fri Mar 25, 2011 2:24 pm
Excel Ver: 2007
#17
Post
by liveday » Thu Oct 20, 2011 9:49 am
เรียน อาจารย์
จะตั้งค่า หน้ากระดาษเเบบตัวอย่าง เซ็ตอย่างไรบ้างครับ
ขอบคุณครับ
You do not have the required permissions to view the files attached to this post.
snasui
Site Admin
Posts: 31176 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#18
Post
by snasui » Thu Oct 20, 2011 9:57 am
หากเป็นเรื่องใหม่ควรตั้งกระทู้ใหม่ครับ