Хэрэв та мэдээллийн сангийнхаа бусад мэдээллийн хамт талбар/асуултын утгуудын хязгаарлагдмал жагсаалтыг гаргах шаардлагатай байсан бол энэ нь хамгийн сайндаа хэцүү байж болохыг мэдэх болно - мөн ихэнх хүмүүс энэ даалгаврыг биелүүлэх боломжгүй гэж боддог. Жишээлбэл, хэрэв танаас жилийн сар бүрийн шилдэг 5 борлуулалтын ажилтан хэн байсан тухай тайланг (буурах дарааллаар) эсвэл үйлчлүүлэгч бүрт хамгийн ойр байрлах 3 дэлгүүрийн тайланг гаргахыг хүссэн бол та хөндлөн табын асуулгатай маргалдах эсвэл Access-ээс гадуур үр дүнг гараар нэгтгэх шаардлагатай болно. Гэхдээ бага зэрэг VBA кодын тусламжтайгаар та хэдхэн минутын дотор дараах үр дүнг гаргах болно...
| сарын | Жон, Сэлли, Билл |
| сарын | Салли, Адам, Жон |
| Нийтэлсэн | Адам, Салли, Билл |
Илүү их асуултын нэг хэсэг болох үр дүнгийн хязгаарлагдсан жагсаалтыг харуулах нь ашигтай байх тохиолдол олон байдаг - борлуулалтын төлөөлөгч бүрийн хамгийн том 3 үйлчлүүлэгчийн жагсаалт, таны хамгийн их мөнгө зарцуулдаг үйлчлүүлэгч тус бүрт хамгийн ойр байрлах 5 дэлгүүр , жагсаалт үргэлжлэх болно.
Тайлангаа хамт оёхоо боль
Ийм төрлийн тайлан үүсгэх дэлгэрэнгүй мэдээллийг авах нь илүү дээр боловч та хүснэгтийг Access-ээс гадуур хүснэгт эсвэл тайлангийн хэсэг болгон гараар оёх хэрэгтэй болдог.
Дараах код нь Access-ээс гадуурхи хайлтын үр дүнг хуурдах хэрэгцээг хасч, дээр дурдсан үр дүнг хялбархан гаргах боломжийг танд олгоно.
Нэгдүгээрт, кодыг юу хийхийг хүсч байгаагаа тоймлоё.
“Асуулгыг өгөөд, x-ийн үр дүнг буцааж нэг мөрөнд нэгтгэ."
Эхлэхээсээ өмнө
Кодыг үзэхийн өмнө илүү нийтлэг бөгөөд аливаа асуулгын хослолыг зохицуулах чадвартай VBA функцийг бий болгох боломжтой боловч ингэснээр нэлээд урт код гарах болно гэдгийг анхаарах хэрэгтэй. жишээ тохиолдлыг тодорхойлж, тухайн хэргийг шийдвэрлэх функцийг бичих явдал юм. Ийм байдлаар хийснээр та өөрийн хэрэгцээ шаардлагад нийцүүлэн кодыг дахин бүтээхэд илүү хялбар болно.
Түүврийн хэрэг
Бидэнд худалдан авагчдын харьяалагдах бүтээгдэхүүний ангиллын хамт хэрэглэгчийн худалдан авалтын дэлгэрэнгүй мэдээллийг хадгалах борлуулалтын мэдээллийн сан бий. Бид сараар, топ 3 ангиллыг буурах дарааллаар харуулсан тайлан гаргахыг хүсч байна.
Энгийн байхын тулд бид жишээг нэг хүснэгтэнд хадгалах болно, гэхдээ таны тохиргооноос үл хамааран захирал ажиллах болно. Бидний ашиглах хүснэгтийг дараах байдлаар тохируулав.
| Борлуулалтын |
| Хэрэглэгчийн нэр |
| Гүйлгээ хийх огноо |
| Гүйлгээний утга |
| Ангилал |
Мэдээжийн хэрэг энэ нь хэт хялбаршуулсан тохиргоо юм, гэхдээ та санаагаа олж авна.
Одоо код
Public Function CategoryList(Month As String, NumResults As Integer, SortAscending As Boolean, Delimiter As String) As String
Dim sSql, resultString As String
Dim rst As Recordset
Dim firstLine As Boolean
'Create our SQL string using the supplied parameters
sSql = "SELECT TOP " & NumResults & " [category] FROM sales GROUP BY Format([TransactionDate],""mmm""), sales.Category HAVING (((Format([TransactionDate], ""mmm"")) = """ & Month & """))"
If SortAscending Then sSql = sSql & " ORDER BY Sum(sales.TransactionValue) DESC;"
Set rst = CurrentDb.OpenRecordset(sSql)
firstLine = True
'Loop through the results, and create the string to return
With rst
Do While Not .EOF
If Not firstLine Then
resultString = resultString & Delimiter & .Fields("category")
Else
resultString = resultString & .Fields("category")
firstLine = False
End If
.MoveNext
Loop
End With
Set rs = Nothing
CategoryList = resultString
End Function
Код - тайлбарласан

Бид мөрөнд зааглагч нэмэх үү үгүй юу гэдгийг шалгаж байгааг анзаарах болно.Энэ шалгалтгүйгээр та муу форматлагдсан үр дүнгийн мөрийг оруулах эсвэл хүсээгүй зааглагчийг арилгахын тулд код нэмэх шаардлагатай болно. ингэснээр аливаа зүйлийг эхнээс нь сайхан, цэмцгэр байлгадаг.
Мэдээжийн хэрэг функцийг өөрөө асуулга, тайлан эсвэл Access-ээс хүссэн газраасаа дуудаж болно.
Гэмтсэн хандалтын мэдээллийн санг засах
Хэрэв та тулгарвал эвдэрсэн хандалтын мэдээллийн сан Хэрэв та дээрх кодыг ажиллуулах юм бол тэдгээрийг засахын тулд зарим тусгай хэрэгслийг ашиглаж, бүх хүснэгтийг гэмтсэн мэдээллийн сангаас сэргээх нь дээр.
Зохиогчийн танилцуулга:
Митчелл Цөөрөм бол мэдээлэл сэргээх мэргэжилтэн юм DataNumen, Үүнд мэдээлэл сэргээх технологиор дэлхийд тэргүүлэгч, Inc. SQL асуудлыг засах болон excel сэргээх програм хангамжийн бүтээгдэхүүнүүд. Дэлгэрэнгүй мэдээллийг авна уу WWW.datanumen.com