Page 1 of 1

ขอความช่วยเหลือแก้ไข VBA ในการขัามบรรทัดถัดไป

Posted: Tue Dec 08, 2015 9:24 pm
by akekorn
สวัสดีครับเพื่อนสมาชิกทุกท่าน
วันนี้ผมมีปัญหา เกี่ยวกับ VBA ในการข้ามบรรทัดถัดไป กล่าวคือในตัวอย่างที่ได้แนบมาผมจะมีให้ระบุวันที่เริ่มต้นถึงวันที่สิ้นสุด
ซึ่งเมื่อระบุวันที่แล้วใน cell c5 จะเริ่มระบุวันที่เริ่มต้น และ cell c6 จะระบุวันที่ต่อมา และใน cell c7 ก็จะระบุวันที่ต่อมาเรื่อยๆ
จนถึงวันสิ้นสุด แต่ปัญหาของผมคือ ผมไม่สามารถให้ cell ที่ระบุแต่ละวันลงมาทีละบรรทัดจนถึงวันสิ้นสุดได้ หากแต่มันกับอยู่ที่
cell เดิมจนถึงวันสิ้นสุด จึงขอความช่วยเหลือจากเพื่อนสมาชิกมา ณ โอกาสนี้ด้วยครับ
ผมได้แนบ file มาด้วยครับ

อีกคำถามคือ สูตร countif ที่ผมใส่ตั้งแต่ cell d5 จนถึง d11 ผมรบกวนเพื่อนสมาชิกว่ามีสูตรที่ยืดหยุ่นกว่านี้ไหมกรณีที่วันที่
ที่เริ่มต้นและสิ้นสุดมีหลายวันหรือวันเดืยวควรใช้สูตรแบบนี้หรือมีแบบอื่นที่ดีกว่าครับ

ขอบคุณครับ

Re: ขอความช่วยเหลือแก้ไข VBA ในการขัามบรรทัดถัดไป

Posted: Tue Dec 08, 2015 9:46 pm
by snasui
:D ปรับ For...Next เป็นตามด้านล่างครับ

Code: Select all

For i = 1 To Range("D2").Value - Range("c2").Value + 1
        ActiveCell.Offset(i, 0).Value = Range("c2").Value + i - 1
Next i
ส่วน Countif ให้ปรับเป็น Countifs กรณีที่ต้องการนับเป็นช่วง และกรณีเช่นนี้ควรเขียนไว้ที่เซลล์ใดเซลล์หนึ่ง ไม่จำเป็นต้องเขียนกำกับแต่ละวันที่ครับ

เช่น เซลล์ E2 คีย์

=COUNTIFS(Sheet1!B:B,">="&Sheet2!C2,Sheet1!B:B,"<="&Sheet2!D2)

Enter

Re: ขอความช่วยเหลือแก้ไข VBA ในการขัามบรรทัดถัดไป

Posted: Tue Dec 08, 2015 9:50 pm
by akekorn
ขอบคุณครับผม

Re: ขอความช่วยเหลือแก้ไข VBA ในการขัามบรรทัดถัดไป

Posted: Tue Dec 08, 2015 10:09 pm
by akekorn
ผมรบกวนอีกนิดนะครับกรณีที่่นำ file นี้ไปวางไว้ที่เครือ่งอื่น แต่ไม่มี date time picker และลองหาจาก reference แล้วไม่พบ
ไม่ทราบว่าผมจะหาจากที่ไหน และชื่ออะไรครับ
ขอบคุณครับ

Re: ขอความช่วยเหลือแก้ไข VBA ในการขัามบรรทัดถัดไป

Posted: Tue Dec 08, 2015 10:19 pm
by snasui
:D ไม่มีให้หาในเครื่อง ต้องติดตั้งเพิ่ม ลองดูที่นี่ครับ viewtopic.php?f=9&t=2994&p=49869

Re: ขอความช่วยเหลือแก้ไข VBA ในการขัามบรรทัดถัดไป

Posted: Tue Dec 08, 2015 10:27 pm
by akekorn
ขอบคุณมากครับผม

Re: ขอความช่วยเหลือแก้ไข VBA ในการขัามบรรทัดถัดไป

Posted: Thu Dec 10, 2015 7:37 am
by akekorn
สวัสดีครับ ผมอยากขอความช่วยเหลือเพิ่มครับคือผมได้เพิ่มการวนหาข้อมูลเพื่อลบข้อมูลเดิมออก่ก่อนแต่ปรากฏว่า มันวนหาแบบข้ามบรรทัดจึงอยาก
รบกวนช่วยแก้ไขให้ด้วยครับผม
อีกปัญหาคือ บางครั้งเวลา run program ข้อมูลวันที่ บางทีติด เวลามาให้ทั้งใน cell B2,C2 รวมถึงตั้งแต่ cell B7 ลงมา บางทีก็ไม่ติดเวลา มีแต่วันที่เฉยๆ ซึ่งผมต้องการให้แสดงเฉพาะเวลาจะได้หาจำนวน app เจอ
ซึ่งผมได้ใช้ function Cvdate ไปแล้วแต่ทำไมยังพบปัญหาเดิมคือติดเวลามาให้ จึงรบกวนสอบถามและขอความช่วยเหลือโดยผมได้แนบ file มาครับ

Re: ขอความช่วยเหลือแก้ไข VBA ในการขัามบรรทัดถัดไป

Posted: Thu Dec 10, 2015 11:31 am
by logic
Clear ข้อมูลใช้ Range("B7:B1000").ClearContents ได้ เผือช่วงเซลล์ไปตามต้องการครับ

ส่วนที่ติดเวลามาด้วยก็อยู่ที่เวลากรอกข้อมูลใน B2, C2 มากกว่า เพราะการบวกเวลาเป็นการนำค่านั้นไปใช้นี่ครับ :)