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
:D ลองตามนี้น่ะครับ ที่ 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) อักษรสีแดงคือเราอ้างอิงจากรหัสลูกค้าครับ :D :D

ค่อยๆปรับไปน่ะครับ :D

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
:D 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
:lol: จากชีท Register นั้น ผมว่าเป็นฟอร์มที่ใช้กรอกข้อมูลประจำวัน เราเลยใส่วันที่ไว้บนหัวตาราง หากต้องการแบบนั้น ก็ย่อมไม่บัญหาอะไรครับ

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

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

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

Re: สวัสดีค่ะ รบกวนช่วยแนะนำสูตรที่ถูกต้องหน่อยค่ะ

Posted: Tue Nov 29, 2011 11:47 am
by snasui
bank9597 wrote:ส่วนที่ถามเรื่องสีเขียวบนมุมเซลล์นั้น เกิดจากอะไร ผมขอตอบว่าเกิดจากที่เราไปเปลี่ยนรูปแบบข้อมูล เช่น ข้อมูลเป็นตัวเลข แต่คุณเก็บเป็นข้อความ เพื่อให้สามารถใช้เลข 000 นำหน้าจำนวนเต็มได้นั่นเอง
ถามว่าผิดไหม ตรงนี้ต้องให้อาจารย์เป็นผู้ตอบน่ะครับ ผมยังไม่เชี่ยวชาญพอ
การกำหนดรูปแบบตัวเลขให้เป็น Text นั้นขึ้นอยู่กับวัตถุประสงค์การใช้งาน บางงานก็ใช้ตัวเลขในแบบ Text แต่หากต้องการให้เป็นตัวเลขแล้วไปคีย์เป็น Text ก็ต้องเปลี่ยนกลับมาให้เป็นตัวเลข วิธีการดูตาม Link นี้ครับ :arrow: 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::D 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
:P เรียน อ. ครับ
รบกวนสอบถามครับ
ใน 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
:D ควรทำชีท Register ให้เป็นฐานข้อมูล ข้อมูลจะถูกเรียงลงด้านล่าง ไม่ใช่เป็นลักษณะรายงานที่เรียงไปทางด้านขวาตามที่แนบมา โดยจะมีลักษณะเช่นด้านล่าง
  1. หัว Field มีเพียงบรรทัดเดียวไม่ใช่แยกเป็น 2 บรรทัดตามที่ทำมา
  2. แทรกคอลัมน์ที่ระบุว่ารายการนั้น ๆ เป็นของวันไหน เพื่อจะดึงข้อมูลไปสรุปตามวันที่ได้
  3. เพิ่มคอลัมน์ที่ระบุว่าเป็นค่าอะไร (ค่าพื้นที่, ค่าไฟฟ้า)

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")

:roll: :roll: ขอบคุณครับ

Re: สวัสดีค่ะ รบกวนช่วยแนะนำสูตรที่ถูกต้องหน่อยค่ะ

Posted: Tue Nov 29, 2011 4:29 pm
by มัลลิกา
:D :D ขอบคุณทุกคนเลยค่ะ ที่ช่วยตอบคำถามและแนะนำความรู้ใหม่ๆให้

ขอบคุณ :D :D :D :D :D

Re: สวัสดีค่ะ รบกวนช่วยแนะนำสูตรที่ถูกต้องหน่อยค่ะ

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