تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] التعامل مع الداتا جريد
#1
السلام عليكم ورحمة الله وبركاته
ارجو المساعدة
انا مبرمج مبتدئ وصممت برنامج يربط داتا بيس واضفت للجدوال داتا جريد واريد ان اجري بعض العمليات الحسابية داخل الداتا بيس بواسطة الداتا جريد , مثلا عندي جدول بيه مسافات وكل مسافة ترتبط بارتفاع في نفس الجدول في العمود التالي , البرنامج يقوم بحساب المسافة ثم يعرضها في تكست بوكس , اريده ان يعرض الارتفاع ايضا من الجدول بمعلومية المسافة
وجزاكم الله خير
الرد }}}}
تم الشكر بواسطة:
#2
بسم الله الرحمن الرحيم
في الداتا جريد عبارة عن شبكة أو خلايا وكل خلية لها رقم عمود ورقم صف ومنها انت تقدر تبرمج أي عملية تريدها
مثلا في عمود 1 وعمود 2 وعمود 3 يكون ناتج الضرب للعمودين
كود :
DataGridView1(3, 1).Value= DataGridView1(1, 1).Value * DataGridView1(2, 1).Value
أرجو ان تكون الفكرة وضحت لول احتاجت توضيح اكثر ارفق برنامج ويتم التعديل عليه
تحياتي لك
الرد }}}}
تم الشكر بواسطة: tarek , ahmed saba , zepeir
#3
شكرا الخطيب علي الاهتمام
انا برنامجي الان تحت الانشاء ولم يكتمل لارفقه
لكني بمساعدة احد المبرمجين كنت قد بدات في جزء كبير منه بالفيجوال 6 والان اريد ان اعيد صياغته بالدوت نت , فمشكلتي اني كنت استخدم الماتركس لاجراء العمليات الحسابية والان اريد ان استخدم الدات جريد بنفس الطريقة
وهذا جزء من الكود
كود :
Private Sub Command3_Click()
dis = Sqr(((Val(Text1.Text - Text3.Text)) ^ 2) + ((Val(Text2.Text - Text4.Text)) ^ 2))
Text5.Text = dis
If dis + 2000 <= 5350 Then
Text8.Text = "six"
With Adodc6.Recordset
.MoveFirst
For j = 0 To 26
mg6.TextMatrix(j, 0) = .Fields!Distance
mg6.TextMatrix(j, 1) = .Fields!Hieght
mg6.TextMatrix(j, 2) = .Fields!Time
.MoveNext
Next
End With
For i = 0 To 26
If dis = mg6.TextMatrix(i, 0) Then
Text6.Text = mg6.TextMatrix(i, 1)
Text7.Text = mg6.TextMatrix(i, 2)
ElseIf mg6.TextMatrix(i, 0) < dis Then
Text6.Text = (((mg6.TextMatrix(i + 1, 1) - mg6.TextMatrix(i, 1)) / 200) * (dis - mg6.TextMatrix(i, 0))) + mg6.TextMatrix(i, 1)
Text7.Text = (((mg6.TextMatrix(i + 1, 2) - mg6.TextMatrix(i, 2)) / 200) * (dis - mg6.TextMatrix(i, 0))) + mg6.TextMatrix(i, 2)

Else: End If
حيث يقوم البرنامج بحساب المسافة
ثم يقوم بالبحث في الجدول عن المسافة فاذا وجدها يقوم باظهار الارتفاع والزمن علي تكست خاصة حسب المسافة
واذا كانت المسافة غير موجوده او اكبر يقوم بعملية حسابية بين المسافتين الموجدتين في الجدول ويستخرج الارتفاع والزمن
اسف البرنامج معقد ويصعب شرحه لكن اريد بنفس طريقة الماتركس ان اغير الي الداتا جريد
ارجو ان تكون الفكرة وضحت
وشكرا لكل من شاهد وكل من علق
الرد }}}}
تم الشكر بواسطة:
#4
السلام عيكم ورحمة الله وبركاتة
اسف جدا انا كنت عاوز اعمل لك مثال لكن مشكلة الوقت الموضوع بسيط جدا بعون الله
انت فقط لما تكتب الكود هيكون عنوان الخلية كالتالي
كود :
DataGridView1(0, i).Value
وهتلاحظ ان رقم العمود يأتي أولا ثم رقم الخلية عكس الفلكس جريد
كود :
mg6.TextMatrix(i, 0)
الرد }}}}
تم الشكر بواسطة: zepeir
#5
وعليكم السلام ورحمة الله
شكرا اخي الخطيب علي الاهتمام
واشهد الله اني قد استفدت من معلوماتك القيمة جعلها الله في ميزان حسناتك
لقد قمت بتغير الكود وهو يعمل جيدا في الجزء الاول من الجملة الشرطية
ولكنه يرسل رسالة خطا في الجزء الثاني من الجملة الشرطية
كود :
Dim i As Integer
        For i = 0 To 54
            If TextBox1.Text = DataGridView1(0, i).Value Then
                TextBox2.Text = DataGridView1(1, i).Value
                TextBox3.Text = DataGridView1(2, i).Value
            ElseIf TextBox1.Text > DataGridView1(0, i).Value Then
                TextBox2.Text = (((DataGridView1(1, i + 1).Value - DataGridView1(1, i).Value) / 200) * (Val(TextBox1.Text) - DataGridView1(0, i).Value)) + DataGridView1(1, i).Value
                TextBox3.Text = (((DataGridView1(2, i + 1).Value - DataGridView1(2, i).Value) / 200) * (Val(TextBox1.Text) - DataGridView1(0, i).Value)) + DataGridView1(2, i).Value
                

            End If
        Next
رسالة الخطا كالاتي
Index was out of range. Must be non-negative and less than the size of the collection.
Parameter(Name) : index
وتاتي عند تنفيز البرنامج لهذا الجزء
كود :
TextBox2.Text = (((DataGridView1(1, i + 1).Value - DataGridView1(1, i).Value) / 200) * (Val(TextBox1.Text) - DataGridView1(0, i).Value)) + DataGridView1(1, i).Value
                TextBox3.Text = (((DataGridView1(2, i + 1).Value - DataGridView1(2, i).Value) / 200) * (Val(TextBox1.Text) - DataGridView1(0, i).Value)) + DataGridView1(2, i).Value
وحاولت التغير كثيرا في الجملة الشرطية ولكن بدون جدوي
ارجوا المساعدة في كتابة الكود الصحيح
وجزاكم الله خير
الرد }}}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [سؤال] شباب كيفية انقاص او طرح الكمية الموضوعة فى الداتا جريد من الجدول احمد عبد الحكيم 2 310 04-10-16, 11:37 PM
آخر رد: benomar
  احتاج مساعدة في الداتا جريد فيو Mo_rb 8 304 18-06-16, 04:28 PM
آخر رد: boudyonline
  مشكلة الترقيم التلقائي للعمود الاول في الداتا جريد فيو kofa 31 730 18-06-16, 03:53 AM
آخر رد: khodor1985
  أريد منع المستخدم من تعديل خلية معينة في داتا جريد ؟؟؟ Abdh111 3 162 05-06-16, 09:28 PM
آخر رد: khodor1985
  الي كل من يجيد التعامل مع قواعد البيانات السندباد المصري 2 946 02-06-16, 12:40 PM
آخر رد: CLARO
  حفظ من سطر جريد فيو له قيمة شيك بوكس djelloul 3 255 02-04-16, 07:18 AM
آخر رد: khodor1985
  إنشاء جريد فيو من جدولين djelloul 4 300 01-04-16, 11:33 PM
آخر رد: djelloul
  كود عدم تكرار البيانات بالداتا جريد فيو ِAbou Sama 3 764 29-12-15, 09:09 PM
آخر رد: العواد الصغير
  [سؤال] في حالة حذف او اضافة صف جديد بالداتا جريد فيو عند التعديل لا تتأثر قاعدة البيانات ِAbou Sama 0 502 26-12-15, 03:52 AM
آخر رد: ِAbou Sama
  مساعده في عدم استجابة قاعدة البيانات الي التعديل في الداتا جريد فيو ِAbou Sama 4 413 25-12-15, 08:59 AM
آخر رد: silverlight

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم