กระทู้เก่าบอร์ด อ.Yeadram
        
           1,549   9		  
          
					  
		    URL.หัวข้อ / 
		    URL
        
        คิวรี่ แบบ Between ไม่ต้องมี and ได้ไหมครับ      
    
      หารายจ่ายประจำเดือนโดยใช้คิวรี่ Between [วันที่เริ่ม] And [ถึงวันที่]
เรียนถามว่าจะมีวิธีอย่างไรบ้างไหมครับว่า ให้กรอกเฉพาะ "วันที่เริ่ม" อย่างเดียว แล้วให้โปรแกรมคิดให้เองว่า "ถึงวันที่" หมายถึงวันสิ้นเดือนนั้น ๆ
    
  เรียนถามว่าจะมีวิธีอย่างไรบ้างไหมครับว่า ให้กรอกเฉพาะ "วันที่เริ่ม" อย่างเดียว แล้วให้โปรแกรมคิดให้เองว่า "ถึงวันที่" หมายถึงวันสิ้นเดือนนั้น ๆ
				9 Reply in this Topic. Dispaly 1  pages and you are on page number 1 
				
        
    2 @R08544    
        
  
      ตรงตามที่ต้องการ  สุดยอดมาก  ขอบพระคุณท่าน "แดน" เป็นอย่างสูงครับ    
    
  
        
    3 @R08546    
        
  
      อิอิ วันที่ 0  
คิดได้ไง แจ่มครับ ขอลอก ๆ
เอาไว้ไปใช้บ้าง
    
  คิดได้ไง แจ่มครับ ขอลอก ๆ
เอาไว้ไปใช้บ้าง
        
    4 @R08548    
        
  
      วันที่ 0 สุดยอด  555    
    
  
        
    5 @R08555    
        
  
      ขอถามเพิ่มครับแล้ว จะหารายการนัดชำระของลูกค้าวันนี้ถึงสิ้นเดือนอะครับ โดยไม่ใช้ Between Date() And #31/03/2011#  ตอนนี้ใช้อย่างนี้อยู่ คือไม่อยากมาแก้วันสิ้นเดือนแต่ะละเดือนครับ 
    
    
  
        
    6 @R08556    
        
  
      ให้คุณเด็กดีนำฟังก์ชั่นนี้ไปวางใน Module ก่อนครับ
Public Function MonthEnd() As Date
MonthEnd = DateValue(("01" + "/" + CStr(IIf(Month(Now()) = 12, 1, Month(Now()) + 1)) + "/" + CStr(IIf(Month(Now()) = 12, Year(Now()) + 1, Year(Now()) + 543)))) - 1
Debug.Print MonthEnd
End Function
จากนั้นให้นำฟังก์ชั่นนี้ไปใช้ในคิวรี่ครับ ต.ย. เช่น
Between Now() And MonthEnd()
ลองดูครับ
    
  Public Function MonthEnd() As Date
MonthEnd = DateValue(("01" + "/" + CStr(IIf(Month(Now()) = 12, 1, Month(Now()) + 1)) + "/" + CStr(IIf(Month(Now()) = 12, Year(Now()) + 1, Year(Now()) + 543)))) - 1
Debug.Print MonthEnd
End Function
จากนั้นให้นำฟังก์ชั่นนี้ไปใช้ในคิวรี่ครับ ต.ย. เช่น
Between Now() And MonthEnd()
ลองดูครับ
        
    7 @R08557    
        
  
      ก็อย่างนี้งัยครับ 
Between Date() And DateSerial (Year(Date())month(Date())+1,0)
    
  Between Date() And DateSerial (Year(Date())month(Date())+1,0)
        
    8 @R08558    
        
  
      ขออนุญาตครับของคุณ Un ต้องใส่ , เพิ่มด้วยครับ 
Between Date() And DateSerial(Year(Date()),Month(Date())+1,0)
ส่วนตัวอย่างของผมที่ให้ไว้เป็นฟังก์ชั่นสำหรับหาวันที่สิ้นเดือนของเดือนนั้นๆ ครับ ผมลืมดูไปว่าให้หาเป็นปี ค.ศ. ดังนั้น ในฟังก์ชั่นไม่ต้องบวก 543 ครับ
Public Function MonthEnd() As Date
MonthEnd = DateValue(("01" + "/" + CStr(IIf(Month(Now()) = 12, 1, Month(Now()) + 1)) + "/" + CStr(IIf(Month(Now()) = 12, Year(Now()) + 1, Year(Now()))))) - 1
Debug.Print MonthEnd
End Function
    
  Between Date() And DateSerial(Year(Date()),Month(Date())+1,0)
ส่วนตัวอย่างของผมที่ให้ไว้เป็นฟังก์ชั่นสำหรับหาวันที่สิ้นเดือนของเดือนนั้นๆ ครับ ผมลืมดูไปว่าให้หาเป็นปี ค.ศ. ดังนั้น ในฟังก์ชั่นไม่ต้องบวก 543 ครับ
Public Function MonthEnd() As Date
MonthEnd = DateValue(("01" + "/" + CStr(IIf(Month(Now()) = 12, 1, Month(Now()) + 1)) + "/" + CStr(IIf(Month(Now()) = 12, Year(Now()) + 1, Year(Now()))))) - 1
Debug.Print MonthEnd
End Function
        
    9 @R08559    
        
    
      ขอบพระคุณ คุณ Sak และุคุณ UN อย่างแรงครับ  
    
    
   
    
      Time: 0.7032s
    
      
		
DateSerial (Year([วันที่เริ่ม]), month([วันที่เริ่ม])+1,0)