กระทู้เก่าบอร์ด อ.Yeadram
        
           1,239   5		  
          
					  
		    URL.หัวข้อ / 
		    URL
        
        Tala      
    
      เรามีข้อมูล 
ID X1 X2 X3 X4 XMax
1 12 15 14 80 ?
2 15 45 48 52 ?
3 45 25 80 10 ?
4 45 80 20 40 ?
ข้อมูลนี้ในคิวรี่ แต่จะนำมาแสดงบนฟอร์มคอนที่นิวฟร์อม
รบกวนมี code vba หรือวิธีใหนรู้คำตอบได้หรือป่าวครับ อาจารย์ และพี่ๆ
    
    
  ID X1 X2 X3 X4 XMax
1 12 15 14 80 ?
2 15 45 48 52 ?
3 45 25 80 10 ?
4 45 80 20 40 ?
ข้อมูลนี้ในคิวรี่ แต่จะนำมาแสดงบนฟอร์มคอนที่นิวฟร์อม
รบกวนมี code vba หรือวิธีใหนรู้คำตอบได้หรือป่าวครับ อาจารย์ และพี่ๆ
				5 Reply in this Topic. Dispaly 1  pages and you are on page number 1 
				
        
    1 @R05820    
        
  
      ถ้าเข้าใจไม่ผิด คืออยากจะเอามาแสดงใน Continuous Form ใช่ไหม ถ้าใช่ ก็แค่ใส่ชื่อของคิวรี่ใน RecordSource property ของฟอร์มครับ แล้วก็เลือกชื่อคอลัมน์ (ID, X1, X2, ...) จาก Control Source ของเท็กส์บ็อกซ์  หรือจะใช้ Form Wizard สร้างก็ได้โดยเลือกชื่อของคิวรี่แทนชื่อของเทเบิลครับ    
    
  
        
    2 @R05821    
        
  
      อยากหาค่า ของ xMax ในรูปแบบ Continuous Form ครับ แต่มันไม่มีฟังก์ชั่น Max(X1,X2,...) อะครับ ทำไงดีรบกวนด้วยนะครับ
ID X1 X2 X3 X4 XMax
1 12 15 14 80 80
2 15 45 48 52 52
3 45 25 80 10 80
4 45 80 20 40 80
    
  ID X1 X2 X3 X4 XMax
1 12 15 14 80 80
2 15 45 48 52 52
3 45 25 80 10 80
4 45 80 20 40 80
        
    3 @R05822    
        
  
      สมมุติว่า data type เป็นประเภท Long Integer คุณก็ไปสร้างโค้ดนี้ในส่วนของ Module 
Public Function Max(X as Long, Y as Long) as Long
if X > Y then Max = X else Max = Y
End Function
แล้วกำหนด Control Source property ของเท็กส์บ็อกซ์ XMax ให้เป็น = Max( Max(X1,X2) , Max(X3,X4) ) ต้องมีเครื่องหมาย = ด้วยนะครับ
    
  Public Function Max(X as Long, Y as Long) as Long
if X > Y then Max = X else Max = Y
End Function
แล้วกำหนด Control Source property ของเท็กส์บ็อกซ์ XMax ให้เป็น = Max( Max(X1,X2) , Max(X3,X4) ) ต้องมีเครื่องหมาย = ด้วยนะครับ
        
    4 @R05824    
        
  
      เอามาให้อีกสูตรครับ
Function Mc(ParamArray Args())
Dim Mx As Integer
Mx = Args(0)
For I = 1 To UBound(Args)
If Mx < Args(I) Then Mx = Args(I)
Next
Mc = Mx
End Function
แล้วสร้าง Field ใหม่ใน Query ได้เลย
xMax:Mc(X1,X2,X3,X4)
    
    
  Function Mc(ParamArray Args())
Dim Mx As Integer
Mx = Args(0)
For I = 1 To UBound(Args)
If Mx < Args(I) Then Mx = Args(I)
Next
Mc = Mx
End Function
แล้วสร้าง Field ใหม่ใน Query ได้เลย
xMax:Mc(X1,X2,X3,X4)
        
    5 @R05850    
        
    
      ได้แล้วครับ  ขอบคุณ คุณสันติสุขและคุณแดน มากนะครับ    
    
  
      Time: 0.3291s
    
      
		