Page 1 of 2
สวัสดีค่ะ รบกวนช่วยแนะนำสูตรที่ถูกต้องหน่อยค่ะ
Posted: Tue Nov 29, 2011 9:50 am
by มัลลิกา
เนื่องจาก มีเซลล์ที่เราค้นหานั้น =VLOOKUP(NO,Register!E2,FALSE) ขึ้น สูตรที่ผิดพลาด คือ #N/A
รบกวนแนะนำหน่อยค่ะ
Re: สวัสดีค่ะ รบกวนช่วยแนะนำสูตรที่ถูกต้องหน่อยค่ะ
Posted: Tue Nov 29, 2011 10:10 am
by bank9597

ลองตามนี้น่ะครับ ที่ F2 คีย์ =VLOOKUP(NO,Register!$B$5:$O$300,2,FALSE)
ที่ F3 คีย์ =Register!$E$2 ที่ C3 คีย์ =VLOOKUP(NO,Register!$B$5:$O$300,2,FALSE) และยังมีอีกหลายที่ ลองดูในไฟล์แนบที่ผมให้ไปน่ะครับ
ต้องปรับการจัดเก็บข้อมูลใหม่อีกครั้งน่ะครับ โดยเฉพาะข้อมูลวันที่ จะไปอยู่ลอยที่หัวตารางแบบนั้นไม่ได้น่ะครับ จะใช้ Vlookup ไม่ได้เลยครับ
ส่วน =VLOOKUP(NO,Register!$
A$5:$O$300,3,FALSE) เป็นสูตรเดิม เราไปอ้างอิงจากลำดับที่ในชีท รีจิสเตอร์ มันเลยแสดงค่าไม่ได้ เลยต้องเปลี่ยนเป็น =VLOOKUP(NO,Register!$
B$5:$O$300,2,FALSE) อักษรสีแดงคือเราอ้างอิงจากรหัสลูกค้าครับ
ค่อยๆปรับไปน่ะครับ

Re: สวัสดีค่ะ รบกวนช่วยแนะนำสูตรที่ถูกต้องหน่อยค่ะ
Posted: Tue Nov 29, 2011 10:50 am
by snoopy1150
สอบถามครับ
วันที่นีคือวันที่ สั่ง print หรือวันที่ อะไรครับ
Re: สวัสดีค่ะ รบกวนช่วยแนะนำสูตรที่ถูกต้องหน่อยค่ะ
Posted: Tue Nov 29, 2011 10:54 am
by มัลลิกา
ขอบคุณที่ช่วยแนะนำค่ะ
ส่วนของ Button ค่ะ ที่ให้กำหนดโค้ดซึ่งตอนนี้ โค้ดยัง Erorr >> compile error syntax error
Code: Select all
Sub print_Click()
Start = Range("Start")
Finish = Range("Finish")
For i = Start To Finish Range("NO") = i Calculate ActiveSheet.Name = "PrintOut"
Next i
MsgBox "Completed!", vbOKOnly, "Print Routing Slip"
End Sub
อ้างอิงจากไฟล์ดังกล่าวค่ะ
Re: สวัสดีค่ะ รบกวนช่วยแนะนำสูตรที่ถูกต้องหน่อยค่ะ
Posted: Tue Nov 29, 2011 10:59 am
by มัลลิกา
วันที่ ปัจจุบัน ค่ะ คุณ snoopy1150
Re: สวัสดีค่ะ รบกวนช่วยแนะนำสูตรที่ถูกต้องหน่อยค่ะ
Posted: Tue Nov 29, 2011 11:07 am
by snasui

Code น่าจะเป็นตามด้านล่างครับ
Code: Select all
Sub print_Click()
Start = Range("Start")
Finish = Range("Finish")
For i = Start To Finish
Range("NO") = i
ActiveSheet.Range("A1:G17").PrintOut
Next i
MsgBox "Completed!", vbOKOnly, "Print Routing Slip"
End Sub
Re: สวัสดีค่ะ รบกวนช่วยแนะนำสูตรที่ถูกต้องหน่อยค่ะ
Posted: Tue Nov 29, 2011 11:21 am
by มัลลิกา
ขอบคุณสำหรับโค้ดที่แนะนำค่ะ
และ
ส่วนของวันที่ ที่แนะนำมา มีตัวอย่างการจัดวางวันที่ที่ถูกต้องไหมคะ
ส่วนของตัวเลข อยากทราบว่า สัญลักษณ์สีเขียว ที่ อยู่มุมบนซ้ายของเซลล์ มีการกำหนดค่าผิดไปหรือป่าวค่ะ ในทุกๆๆชีตเลยค่ะ
Re: สวัสดีค่ะ รบกวนช่วยแนะนำสูตรที่ถูกต้องหน่อยค่ะ
Posted: Tue Nov 29, 2011 11:29 am
by snasui
snoopy1150 wrote:สอบถามครับ
วันที่นีคือวันที่ สั่ง print หรือวันที่ อะไรครับ
มัลลิกา wrote:วันที่ ปัจจุบัน ค่ะ คุณ snoopy1150
เมื่อเป็นวันที่ปัจจุบันก็สามารถใส่สูตร
=Today() ในเซลล์ที่ต้องการให้แสดงวันที่ได้เลยครับ
Re: สวัสดีค่ะ รบกวนช่วยแนะนำสูตรที่ถูกต้องหน่อยค่ะ
Posted: Tue Nov 29, 2011 11:31 am
by bank9597

จากชีท Register นั้น ผมว่าเป็นฟอร์มที่ใช้กรอกข้อมูลประจำวัน เราเลยใส่วันที่ไว้บนหัวตาราง หากต้องการแบบนั้น ก็ย่อมไม่บัญหาอะไรครับ
แต่ทีนี้ หากคุณต้องการจะเอาข้อมูลที่ทำไว้ใน register ไปเก็บไว้ด้วย ผมแนะนำให้ สร้างขึ้นมาอีกชีท ชื่อว่า Record หรือ Database ใช้เพื่อเก็บข้อมูลการทำรายการโดยเฉพาะ เวลาจะใช้ข้อมูลอะไร ก็จะดึงมาจากส่วนนั้น นั่นเอง

ตัวอย่างตารางการเก็บข้อมูลไม่ยากน่ะครับ ทำความเข้าใจที่ผมแนะนำก่อน แล้วจะทำได้เองอัตโนมัติครับ

ส่วนที่ถามเรื่องสีเขียวบนมุมเซลล์นั้น เกิดจากอะไร ผมขอตอบว่าเกิดจากที่เราไปเปลี่ยนรูปแบบข้อมูล เช่น ข้อมูลเป็นตัวเลข แต่คุณเก็บเป็นข้อความ เพื่อให้สามารถใช้เลข 000 นำหน้าจำนวนเต็มได้นั่นเอง
ถามว่าผิดไหม ตรงนี้ต้องให้อาจารย์เป็นผู้ตอบน่ะครับ ผมยังไม่เชี่ยวชาญพอ

Re: สวัสดีค่ะ รบกวนช่วยแนะนำสูตรที่ถูกต้องหน่อยค่ะ
Posted: Tue Nov 29, 2011 11:47 am
by snasui
bank9597 wrote:ส่วนที่ถามเรื่องสีเขียวบนมุมเซลล์นั้น เกิดจากอะไร ผมขอตอบว่าเกิดจากที่เราไปเปลี่ยนรูปแบบข้อมูล เช่น ข้อมูลเป็นตัวเลข แต่คุณเก็บเป็นข้อความ เพื่อให้สามารถใช้เลข 000 นำหน้าจำนวนเต็มได้นั่นเอง
ถามว่าผิดไหม ตรงนี้ต้องให้อาจารย์เป็นผู้ตอบน่ะครับ ผมยังไม่เชี่ยวชาญพอ
การกำหนดรูปแบบตัวเลขให้เป็น Text นั้นขึ้นอยู่กับวัตถุประสงค์การใช้งาน บางงานก็ใช้ตัวเลขในแบบ Text แต่หากต้องการให้เป็นตัวเลขแล้วไปคีย์เป็น Text ก็ต้องเปลี่ยนกลับมาให้เป็นตัวเลข วิธีการดูตาม Link นี้ครับ
http://snasui.blogspot.com/2008/11/text-number.html
Re: สวัสดีค่ะ รบกวนช่วยแนะนำสูตรที่ถูกต้องหน่อยค่ะ
Posted: Tue Nov 29, 2011 12:28 pm
by snoopy1150
พอดีผมติดงานเลยเพิ่งทำเสร็จสำฟอร์มข้อมูล
ผมลองทำ " เลขที่ " ให้เป็น List แล้วพูกด้วย Vlookup ครับ
ไม่ทราบว่าตรงที่ต้องการหรือไม่
Re: สวัสดีค่ะ รบกวนช่วยแนะนำสูตรที่ถูกต้องหน่อยค่ะ
Posted: Tue Nov 29, 2011 1:14 pm
by snoopy1150
snasui wrote:
Code น่าจะเป็นตามด้านล่างครับ
Code: Select all
Sub print_Click()
Start = Range("Start")
Finish = Range("Finish")
For i = Start To Finish
Range("NO") = i
ActiveSheet.Range("A1:G17").PrintOut
Next i
MsgBox "Completed!", vbOKOnly, "Print Routing Slip"
End Sub

เรียน อ. ครับ
รบกวนสอบถามครับ
ใน Code นี้สามารถ ระบุจำนวนชุดที่จะพิมพ์ได้หรือไม่ครับ แล้วถ้าได้ต้องใส่ข้อมูลยังไงครับ
Re: สวัสดีค่ะ รบกวนช่วยแนะนำสูตรที่ถูกต้องหน่อยค่ะ
Posted: Tue Nov 29, 2011 1:25 pm
by มัลลิกา
ถึงคุณ snoopy1150
ขอบคุณสำหรับความรู้ค่ะ
แต่ไม่เข้าใจการผูกค่ะ " เลขที่ " ให้เป็น List แล้วพูกด้วย Vlookup
และเนื่องจาำก ชีต Register ต้องเก็บค่าเลขที่ใบเสร็จอยู่แล้ว ส่วนชีส PrintOut จึงทำการดึงข้อมูลจาำก ชีต Registe ไปโชว์ค่ะ
ควรแก้ไขหรือเพิ่มเติมตรงไหนหรือป่าวคะทำอย่างไรคะ
Re: สวัสดีค่ะ รบกวนช่วยแนะนำสูตรที่ถูกต้องหน่อยค่ะ
Posted: Tue Nov 29, 2011 1:31 pm
by snasui
snoopy1150 wrote:
เรียน อ. ครับ
รบกวนสอบถามครับ
ใน Code นี้สามารถ ระบุจำนวนชุดที่จะพิมพ์ได้หรือไม่ครับ แล้วถ้าได้ต้องใส่ข้อมูลยังไงครับ
สมมุติจำนวนชุดอยู่ที่ Z1 ปรับ Code ตรง ActiveSheet.Range("A1:G17").PrintOut เป็นตามด้านล่างครับ
Code: Select all
ActiveSheet.Range("A1:G17").PrintOut Copies:=Range("Z1")
Re: สวัสดีค่ะ รบกวนช่วยแนะนำสูตรที่ถูกต้องหน่อยค่ะ
Posted: Tue Nov 29, 2011 2:01 pm
by มัลลิกา
อาจารย์คะ รบกวนสอบถามค่ะ
การที่เราจะเอาข้อมูลที่ทำไว้ใน register ไปเก็บเป็นหลักฐานรายวัน โดยเราจะเรียกใช้ผ่านวันที่ต้องทำอย่างไรคะ
Re: สวัสดีค่ะ รบกวนช่วยแนะนำสูตรที่ถูกต้องหน่อยค่ะ
Posted: Tue Nov 29, 2011 2:21 pm
by snasui

ควรทำชีท Register ให้เป็นฐานข้อมูล ข้อมูลจะถูกเรียงลงด้านล่าง ไม่ใช่เป็นลักษณะรายงานที่เรียงไปทางด้านขวาตามที่แนบมา โดยจะมีลักษณะเช่นด้านล่าง
- หัว Field มีเพียงบรรทัดเดียวไม่ใช่แยกเป็น 2 บรรทัดตามที่ทำมา
- แทรกคอลัมน์ที่ระบุว่ารายการนั้น ๆ เป็นของวันไหน เพื่อจะดึงข้อมูลไปสรุปตามวันที่ได้
- เพิ่มคอลัมน์ที่ระบุว่าเป็นค่าอะไร (ค่าพื้นที่, ค่าไฟฟ้า)
Re: สวัสดีค่ะ รบกวนช่วยแนะนำสูตรที่ถูกต้องหน่อยค่ะ
Posted: Tue Nov 29, 2011 2:47 pm
by snoopy1150
มัลลิกา wrote:ถึงคุณ snoopy1150
ขอบคุณสำหรับความรู้ค่ะ
แต่ไม่เข้าใจการผูกค่ะ " เลขที่ " ให้เป็น List แล้วพูกด้วย Vlookup
และเนื่องจาำก ชีต Register ต้องเก็บค่าเลขที่ใบเสร็จอยู่แล้ว ส่วนชีส PrintOut จึงทำการดึงข้อมูลจาำก ชีต Registe ไปโชว์ค่ะ
ควรแก้ไขหรือเพิ่มเติมตรงไหนหรือป่าวคะทำอย่างไรคะ
เนื่องจากช่อง "เลขที่" ดึงข้อมูลมาจาก I2 ผมเลยเปลี่ยนให้เป็น List โดยข้อมูลอยู่ที่ sheet "Register" รหัสลูกค้า ลองดูการทำ List
http://snasui.blogspot.com/2010/07/validation.html ครับ
ส่วนที่คุณทำ vlookup ก็เหมือนเดิม โดยหาข้อมูลจากรหัสลูกค้าที่ช่อง "เลขที่" ครับ
Re: สวัสดีค่ะ รบกวนช่วยแนะนำสูตรที่ถูกต้องหน่อยค่ะ
Posted: Tue Nov 29, 2011 2:51 pm
by snoopy1150
snasui wrote:snoopy1150 wrote:
เรียน อ. ครับ
รบกวนสอบถามครับ
ใน Code นี้สามารถ ระบุจำนวนชุดที่จะพิมพ์ได้หรือไม่ครับ แล้วถ้าได้ต้องใส่ข้อมูลยังไงครับ
สมมุติจำนวนชุดอยู่ที่ Z1 ปรับ Code ตรง ActiveSheet.Range("A1:G17").PrintOut เป็นตามด้านล่างครับ
Code: Select all
ActiveSheet.Range("A1:G17").PrintOut Copies:=Range("Z1")

ขอบคุณครับ
Re: สวัสดีค่ะ รบกวนช่วยแนะนำสูตรที่ถูกต้องหน่อยค่ะ
Posted: Tue Nov 29, 2011 4:29 pm
by มัลลิกา
Re: สวัสดีค่ะ รบกวนช่วยแนะนำสูตรที่ถูกต้องหน่อยค่ะ
Posted: Mon Mar 26, 2012 10:12 am
by farcyber
snasui wrote:=Today() ในเซลล์ที่ต้องการให้แสดงวันที่ได้เลยครับ
จากคำถามนี้นะคะอาจารย์ ถ้า =Today() = วันที่ปัจจุบัน
แล้วถ้าจะเอาแค่เดือน กับ ปี ต้องใส่สูตร์ว่าอย่างไรค่ะ
พอดีลองเดาคำสั่ง =MONTH,YEAR() แล้วมันไม่ใช่น่ะคะ
