:D snasui.com ยินดีต้อนรับ :D
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย :thup: สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ :arrow: ระบุ Version ของ Excel
:!: โปรดทราบ :!:
  1. กรุณาอ่านกฎการใช้บอร์ด (Forum rules) ในตำแหน่งด้านบนของแต่ละบอร์ด
  2. การสมัครสมาชิก การ Login การกู้คืนรหัสผ่าน
    1. สมัครสมาชิกดูขั้นตอนได้ที่ :arrow: สมัครสมาชิก
    2. Login เข้าระบบโดยคลิกปุ่ม Login ตรงมุมขวาบนของหน้านี้ :roll:
    3. การ Login ผ่าน Facebook ดูวิธีที่ :arrow: Login ผ่าน Facebook
    4. ลืมรหัสผ่านสามารถรับรหัสใหม่ได้ที่ :arrow: Reset รหัสผ่าน
  3. มีปัญหาการใช้งาน แจ้งผู้ดูแลระบบได้ที่ :arrow: ติดต่อผู้ดูแลระบบ
  4. กำหนดการตั้งค่าส่วนตัว เช่นตั้งค่าภาษาเป็นไทยหรืออังกฤษดูได้ที่ :arrow: ตั้งค่าส่วนตัว
  5. การตั้งและตอบกระทู้ดูได้ที่ :arrow: วิธีการตั้งและตอบกระทู้
  6. การจัดรูปแบบตัวอักษรด้วย bbcode ในช่องแสดงความคิดเห็นดูได้ที่ :arrow: จัดรูปแบบตัวอักษร
  7. กำหนดขนาดตัวอักษรใน Browser ดูได้ที่ :arrow: กำหนดขนาดตัวอักษรใน Browser

แปลกใจทำไมดึงข้อมูลไม่ยอมมาจากอีกไฟล์

ฟอรัมถาม-ตอบปัญหาการใช้งานสูตรและฟังก์ชัน Excel
Forum rules
  1. ไม่อนุญาตให้ใช้ภาษาแชทในการถามและตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
  2. ห้ามถามโดยระบุชื่อผู้ตอบและต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
  3. กรุณาอธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
  4. กรุณาแนบไฟล์ตัวอย่างพร้อมแสดงคำตอบที่ถูกต้องมาในไฟล์ด้วยเพื่อให้ง่ายต่อการทำความเข้าใจและสะดวกต่อการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่นที่อาจจะถูกลบทิ้งไปโดยต้นทางในภายหลัง นอกจากนี้ไม่ควรแนบไฟล์ที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
  5. กรณีเป็นคำถามเกี่ยวกับ Programming เช่น VBA, VB.Net, C#, SQL ฯลฯ ต้องลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน กรุณาโพสต์ Code ให้แสดงเป็น Code คือเปิดด้วย [code] และปิดด้วย [/code] ตัวอย่างเช่น [code]dim r as range[/code] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
  6. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
yangkodza
Bronze
Bronze
Posts: 372
Joined: Tue Feb 10, 2015 10:37 am
Excel Ver: 2021

แปลกใจทำไมดึงข้อมูลไม่ยอมมาจากอีกไฟล์

#1

Post by yangkodza »

Capture.GIF

Code: Select all

Sub ดึงข้อมูล()
'
' เปลี่ยนห้อง แมโคร

 CurrDir = Application.ActiveWorkbook.Path
    ClassRoom = InputBox("ตัวอย่าง ห้องเรียน ป.1/1 พิมพ์ 1-1")
    'ClassRoom = o6
    Range("b3").Select

    ActiveCell.FormulaR1C1 = "='" & CurrDir & "\[คะแนนประถมเทอม1xlsx]ป." & ClassRoom & "'!R3c2:r52C18"
    Range("b3").Select
    Selection.AutoFill Destination:=Range("b3:R3"), Type:=xlFillDefault
    Range("b3:R3").Select
    Selection.AutoFill Destination:=Range("b3:R52")
    Range("b3:R52").Select
    Range("b3").Select
End Sub
ดึงข้อมูลแล้วงานไม่ยอมมาครับไม่ทราบว่าผิดตรงไหนครับ งงมาก
เพราะว่าผมเทียบกับงานเก่าที่เคยทำแล้วไล่ Code เอาครับ
คะแนนประถมเทอม1.xlsx
ตัวดึงข้อมูล.xlsm
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31258
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: แปลกใจทำไมดึงข้อมูลไม่ยอมมาจากอีกไฟล์

#2

Post by snasui »

:lol: ช่วยแจ้งมาอย่างละเอียดว่าไฟล์อยู่ใน Path ไหนครับ

Current Drive หมายถึง Drive ปัจจุบันที่กำลังทำงาน

ปัจจุบันไฟล์วางอยู่ที่ Paht ไหน ให้เขียนเข้าไปตรง ๆ แทนที่จะใช้ CurrDir เพราะอาจจะผิดพลาด อ้างไม่ตรงกับที่เก็บไฟล์จริงได้ครับ
yangkodza
Bronze
Bronze
Posts: 372
Joined: Tue Feb 10, 2015 10:37 am
Excel Ver: 2021

Re: แปลกใจทำไมดึงข้อมูลไม่ยอมมาจากอีกไฟล์

#3

Post by yangkodza »

snasui wrote::lol: ช่วยแจ้งมาอย่างละเอียดว่าไฟล์อยู่ใน Path ไหนครับ

Current Drive หมายถึง Drive ปัจจุบันที่กำลังทำงาน

ปัจจุบันไฟล์วางอยู่ที่ Paht ไหน ให้เขียนเข้าไปตรง ๆ แทนที่จะใช้ CurrDir เพราะอาจจะผิดพลาด อ้างไม่ตรงกับที่เก็บไฟล์จริงได้ครับ
ไฟล์ทั้ง 2 ไฟล์ อยู่ในโฟลเดอร์เดียวกันครับผม :shock:
User avatar
snasui
Site Admin
Site Admin
Posts: 31258
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: แปลกใจทำไมดึงข้อมูลไม่ยอมมาจากอีกไฟล์

#4

Post by snasui »

:D สังเกตว่าชื่อไฟล์ใน Code ผิดพลาดอยู่ครับ ไม่มี . (จุด)
yangkodza
Bronze
Bronze
Posts: 372
Joined: Tue Feb 10, 2015 10:37 am
Excel Ver: 2021

Re: แปลกใจทำไมดึงข้อมูลไม่ยอมมาจากอีกไฟล์

#5

Post by yangkodza »

snasui wrote::D สังเกตว่าชื่อไฟล์ใน Code ผิดพลาดอยู่ครับ ไม่มี . (จุด)
อาจารย์ครับ ใส่จุดแล้วครับยังไม่ยอมออก
ฟ้องชื่อไฟล์ผิดทั้งๆที่ เราเปลี่ยนชื่อแล้ว งงครับ ดังภาพ

ไฟล์งานอยู่บนหน้าจอ ในโฟลเดอร์ Test ครับ
Capture.GIF
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31258
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: แปลกใจทำไมดึงข้อมูลไม่ยอมมาจากอีกไฟล์

#6

Post by snasui »

:D ผมลองทดสอบ Code แล้วโดยไฟล์อยู่ใน Folder เดียวกัน ไม่พบกว่าติดปัญหาใดครับ
yangkodza
Bronze
Bronze
Posts: 372
Joined: Tue Feb 10, 2015 10:37 am
Excel Ver: 2021

Re: แปลกใจทำไมดึงข้อมูลไม่ยอมมาจากอีกไฟล์

#7

Post by yangkodza »

snasui wrote::D ผมลองทดสอบ Code แล้วโดยไฟล์อยู่ใน Folder เดียวกัน ไม่พบกว่าติดปัญหาใดครับ
ขอบคุณมากครับ
พอดีออกไปธุระเลยปิดคอม
กลับมาเปิดงานได้ปกติ งงเลยครับ

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

Code: Select all

Sub เปลี่ยนห้อง()
' เปลี่ยนห้อง แมโคร
 CurrDir = Application.ActiveWorkbook.Path
    ClassRoom = InputBox("ตัวอย่าง ห้องเรียน ป.1/1 พิมพ์ 1-1")
    Range("b3").Select
    ActiveCell.FormulaR1C1 = "='" & CurrDir & "\[รายชื่อประถม.xlsx]ป." & ClassRoom & "'!R3c2:r52C5"
    Range("b3").Select
    Selection.AutoFill Destination:=Range("b3:E3"), Type:=xlFillDefault
    Range("b3:E3").Select
    Selection.AutoFill Destination:=Range("b3:E52")
    Range("b3:E52").Select
    Range("b3").Select
    ' ดึงคะแนน
           Sheets("คะแนนเทอม1").Select
          ActiveCell.FormulaR1C1 = "='" & CurrDir & "\[คะแนนประถมเทอม1.xlsx]ป." & ClassRoom & "'!R2c1:r52C18"
    Range("A2").Select
    Selection.AutoFill Destination:=Range("A2:R2"), Type:=xlFillDefault
    Range("A2:R2").Select
    Selection.AutoFill Destination:=Range("A2:R52")
    Range("A2:R52").Select
    Range("A2").Select
           'Call Module14.คะแนน
              '  Sheets("รวม 12 วิชา").Select
              '  ActiveSheet.Protect DrawingObjects:=Flase, Contents:=True, Scenarios:=Flase, Password:="2500"
           '     Sheets("รายชื่อนักเรียน").Select
End Sub
รบกวนอาจารย์ช่วยปรับสูตรให้หน่อยครับ

และอีกอย่าง คะแนนเทอม1 ชอบมี Error แปลกๆ
ดังภาพ
ในภาพแจ้ง Error ที่ U10,T15 ครับ
กดเปลี่ยนห้องครั้งนึงก็จะ Error ทีนึงครับ
Capture.GIF
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31258
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: แปลกใจทำไมดึงข้อมูลไม่ยอมมาจากอีกไฟล์

#8

Post by snasui »

:D แนบตัวอย่างไฟล์ที่เกี่ยวข้องทั้งหมดมาด้วยครับ
yangkodza
Bronze
Bronze
Posts: 372
Joined: Tue Feb 10, 2015 10:37 am
Excel Ver: 2021

Re: แปลกใจทำไมดึงข้อมูลไม่ยอมมาจากอีกไฟล์

#9

Post by yangkodza »

snasui wrote::D แนบตัวอย่างไฟล์ที่เกี่ยวข้องทั้งหมดมาด้วยครับ
ได้ครับ ผมตัดส่วนไม่จำเป็นออกหมดแล้วครับ

ตัวรันคือ 01 ครูประจำชั้นT2
จากการสังเกตุ ถ้าชีต คะแนนเทอม1 ยังไม่มีข้อมูลมา
เวลาสั่งเปลี่ยนห้องครั้งแรกจะยังเปลี่ยนไม่ได้ ต้องเปลี่ยน 2 ครั้งครับ
การขึ้น Error จะขึ้น บางครั้ง ครับแปลกๆ
ในที่นี้ผมมี ป.1 4 ห้อง ครั้ง
Tset.rar
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31258
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: แปลกใจทำไมดึงข้อมูลไม่ยอมมาจากอีกไฟล์

#10

Post by snasui »

:D ตัวอย่างการปรับ Code ครับ

Code: Select all

Sub เปลี่ยนห้อง()
    ' เปลี่ยนห้อง แมโคร
    CurrDir = Application.ActiveWorkbook.Path
    ClassRoom = InputBox("ตัวอย่าง ห้องเรียน ป.1/1 พิมพ์ 1-1")
    Range("b3").FormulaR1C1 = "='" & CurrDir & "\[รายชื่อประถม.xlsx]ป." & ClassRoom & "'!R3c2:r52C5"
    
    Range("b3").AutoFill Destination:=Range("b3:E3"), Type:=xlFillDefault
    Range("b3:E3").AutoFill Destination:=Range("b3:E52")
    
    ' ดึงคะแนน
    Sheets("คะแนนเทอม1").Select
    Range("a2").FormulaR1C1 = "='" & CurrDir & "\[คะแนนประถมเทอม1.xlsx]ป." & ClassRoom & "'!R2c1:r52C18"
    
    Range("a2").AutoFill Destination:=Range("A2:R2"), Type:=xlFillDefault
    Range("A2:R2").AutoFill Destination:=Range("A2:R52")
End Sub
yangkodza
Bronze
Bronze
Posts: 372
Joined: Tue Feb 10, 2015 10:37 am
Excel Ver: 2021

Re: แปลกใจทำไมดึงข้อมูลไม่ยอมมาจากอีกไฟล์

#11

Post by yangkodza »

snasui wrote::D ตัวอย่างการปรับ Code ครับ

Code: Select all

Sub เปลี่ยนห้อง()
    ' เปลี่ยนห้อง แมโคร
    CurrDir = Application.ActiveWorkbook.Path
    ClassRoom = InputBox("ตัวอย่าง ห้องเรียน ป.1/1 พิมพ์ 1-1")
    Range("b3").FormulaR1C1 = "='" & CurrDir & "\[รายชื่อประถม.xlsx]ป." & ClassRoom & "'!R3c2:r52C5"
    
    Range("b3").AutoFill Destination:=Range("b3:E3"), Type:=xlFillDefault
    Range("b3:E3").AutoFill Destination:=Range("b3:E52")
    
    ' ดึงคะแนน
    Sheets("คะแนนเทอม1").Select
    Range("a2").FormulaR1C1 = "='" & CurrDir & "\[คะแนนประถมเทอม1.xlsx]ป." & ClassRoom & "'!R2c1:r52C18"
    
    Range("a2").AutoFill Destination:=Range("A2:R2"), Type:=xlFillDefault
    Range("A2:R2").AutoFill Destination:=Range("A2:R52")
End Sub
ผ่านแล้วครับ
รบกวนอาจารย์ช่วยอธิบายทีว่าเป็นที่อะไรของผมถึงไม่ผ่านครับ :D
User avatar
snasui
Site Admin
Site Admin
Posts: 31258
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: แปลกใจทำไมดึงข้อมูลไม่ยอมมาจากอีกไฟล์

#12

Post by snasui »

:D เกิดจากการเลือก (Select) เซลล์ไม่เป็นไปตามลำดับ ทำให้โปรแกรมทำงานไม่ถูกต้องครับ
yangkodza
Bronze
Bronze
Posts: 372
Joined: Tue Feb 10, 2015 10:37 am
Excel Ver: 2021

Re: แปลกใจทำไมดึงข้อมูลไม่ยอมมาจากอีกไฟล์

#13

Post by yangkodza »

snasui wrote::D เกิดจากการเลือก (Select) เซลล์ไม่เป็นไปตามลำดับ ทำให้โปรแกรมทำงานไม่ถูกต้องครับ
เข้าใจแล้วครับ ขอบคุณมากๆครับ :D
Post Reply