สุ่มคำศัพท์15คำเพื่อฟังการอ่านออกเสียง10คนเนื้อหาไม่ซ้ำสั่งพิมพ์ทีเดียวได้10หน้า


0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้

22 ก.ค. 65 , 13:35:57
อ่าน 206 ครั้ง

SakDa

ไฟล์ตัวอย่างคือ ได้จำนวนชุดที่ต้องการ แต่เนื้อหาซ้ำกัน อยากสั่งพิมพ์ที่มันสามารถสร้างไฟล์ pdf ไฟล์เดียว หรือ สั่งพิมพ์รายงานครั้งเดียวแล้วได้ 10 คน 10 หน้า เนื้อหาเรียกมาจากคิวรีที่เรามีแล้วก็ได้ โดยที่เราไม่ต้องคลิกเมาส์เลือกพิมพ์ทีละครั้งๆ จนครบ 10 ครั้ง

 

25 ก.ค. 65 , 10:45:36
ตอบกลับ #1

SakDa

วันนี้มาดูคำตอบ คิดว่าทำอีกวิธีหนึ่งคือสร้างเป็นคิวรี แล้วกดปุ่มรันคิวรี append to table แล้วค่อยนำไปทำเป็นรายงาน แต่ก็อยากได้โค้ดที่ว่า จะสุ่มแล้วappend กี่ครั้งกดตู้มเดียวแล้วเสร็จสรรพเลย ค้นหาเพิ่มเติมเจออันนี้แต่นำไปใช้ไม่เข้าใจ ครับตรงการนำไปใช้ในส่วนล่าง
    

Queries: Create a query that returns Random records
   Author(s)
Joe Foster

(Q) How can I return Random records from a table?

(A) Paste the following function in a new module.

'************ Code Begin ***********
'Code courtesy of
'Joe Foster
Function Randomizer () As Integer   
Static AlreadyDone As Integer
       If AlreadyDone = False Then Randomize : AlreadyDone = True   
   Randomizer = 0
End Function
'************ Code End *************

Now to get 100 questions picked at random:

select top 100 mytableชื่อตาราง.*from mytableชื่อตาราง
where randomizer() = 0
order by rnd(isnull(mytableชื่อตาราง.questionน่าจะเป็นชื่อฟิลด์ในตารางไหมครับ) * 0 + 1)

 

25 ก.ค. 65 , 10:54:05
ตอบกลับ #2

SakDa

น่าจะคล้ายๆ อันนี้ เผื่อมีคนถนัดแวะมาตอบครับ
It needs to be a function not a Sub. So it should be:

Public Function RandNo() AS Integer
Dim iRNumber As Integer
Randomize
RandNo = Int((200 - 100 + 1) * Rnd + 100)
End Function

This will return the random number you want.

To add this to a table you could use code like:

Dim SQL As String
Dim i as Integer

For i = 1 to 5
strSQL = "INSERT INTO table (Field1, Field2, Filed3) " & _
"VALUES(" & RandNo() & ", " & RandNo() & ", " & RandNo() & ");"
CurrentDB.Execute strSQL, dbFailOnError
Next i

If you need further clarification on this feel free to ask.

 


บอร์ดเรียนรู้ Access สำหรับคนไทย