PDA

View Full Version : سوال: حذف داده تکراری



Mohsen0025
چهارشنبه 06 شهریور 1392, 18:58 عصر
سلام
یه سوال دیگه داشتم (VB6)
جستجو کردم چیزایی که پیدا کردم نتونستن مشکل منو حل کنن!!!:افسرده:
دوستان من یه datagride دارم و میخوام داده های تکراری حذف بشن و جمع همشون یه یکیشون اضاف بشه به این صورت:(اگه تو listbox نمایشش بده بهتر)
Ali=10
mohsen=20
ali=5
reza=7
mohsen=5
ali=3
که جواب تو listbox بشه:
Ali=18
mohsen=25
reza=7

این عدد ها تو لیست باکس جدا میرن.

ممنونم :بوس:

vbhamed
پنج شنبه 07 شهریور 1392, 09:59 صبح
سلام
در فايل اكسس ضميمه، جدول و كوئري رو ببينيد و مي‌تونيد كوئري رو مستقيم به ديتا كنترل وصل كنيد

Mohsen0025
پنج شنبه 07 شهریور 1392, 11:19 صبح
سلام و درود بر داش حامد
من قبلاً این داده ها رو تو بانک ذخیره کردم و تو دیتا گرید نمایش میدم و میخوام یه لیست بگیرم که این افراد چه مقدار پول به حسابشون واریز شده!!!!
به این صورت که در form قبلی ثبتشون کرده به فرض 20 نفر حالا تو این 20 نفر 7 نفرشون اسامیشون و شماره حساباشون تکراریه میخوایم اینا رو تو دیتا گرید و یا لیست باکس (که بهتره) بدون اسامی تکراری و جمع مبالغشون نمایش بدیم! به این صورت:(عکس ضمیمه)

109863

vbhamed
یک شنبه 10 شهریور 1392, 09:39 صبح
سلام
ما با جدول اصليتون كاري نداريم، مي‌خواين نمايش بدين يا به گرايد وصلش كنيد مهم نيست
شما با يك ADO ديگه به كوئري گفته شده متصل بشيد و نتايج رو بخونيد و چاپ كنيد
گزارشتون هم اگر با نرم افزار گزارشگر مثل كريستال درست شده كه مي‌تونه به كوئري وصل بشه اگر هم دستي هست كه مقادير رو از ADO بخونيد و توش بنويسيد

Mohsen0025
جمعه 10 آبان 1392, 21:07 عصر
با سلام
شرمنده یه 2 ماهی نبودم
نه از هیچ نرم افزار گزارش گیری استفاده نمی کنم!!!
فقط میخوام اون اسامی که تکرارین تو دیتاگرید نیان اما جمع هاشون بیاد حالا اگه تو بانک دخالت میکنه و باید بانکو دستکاری کنیم نه نمیخواد بانک دست کاری بشه اون اسامی که هستن بدون تکرار تو یه لیست باکس نمایش داده بشن و جمع مبالغشونم تو باکس دیگه
ممنونم
فدات

vbhamed
دوشنبه 20 آبان 1392, 16:56 عصر
سلام
خب تو پست 2 جواب رو براتون گذاشتم و فايل نمونه رو هم ضميمه كردم
جدول Table1 و كوئري qry_Sum رو ببينيد
مي‌تونيد از qry_Sum هرجا خواستيد استفاده كنيد

Mohsen0025
سه شنبه 21 آبان 1392, 10:18 صبح
سلام ، این قسمتی از سورس برنامه هستش ممنون میشم یه نگاه بندازی

هم توبرنامه و هم در بالا مشکل رو توضیح دادم.
ممنون

Mohsen0025
چهارشنبه 07 خرداد 1393, 07:19 صبح
با عرض سلام و خسته نباشید!!
اگه روشی یا راه حلی هست خواهش میکنم دریغ نکنید خواهش میکنم:بوس: لطفاً راهنمایی
(نمیخوام داده ها از اکسس حذف بشن فقط تو گزارش مخفی بشن) تو list box معمولی من میگیرمشون !!!
اینو میدونم که اگه چندین داده تو listbox بودن با کد زیر حذفشون کنم!!!

Private Sub Command1_Click()Dim i As Long
Dim j As Long
With List1
For i = 0 To .ListCount - 1
For j = .ListCount To (i + 1) Step -1
If .List(j) = .List(i) Then
.RemoveItem j
End If
Next
Next
End With


End Sub



اما جمع هاشون چی میشن؟؟؟؟؟؟ ضمیمه رو نگاه کنید!!!:افسرده:

vbhamed
چهارشنبه 07 خرداد 1393, 10:26 صبح
سلام
با روشی هم که به شما گفتم داده های بانک دستکاری نمی‌شد فقط یک کوئری از اونها ساخته می‌شد
در هر حال تو مثال زیر اون کوئری هم در خود برنامه انجام میشه (در Form_Load اضافه شد و کد Form_Activate هم حذف شد)