تقييم الموضوع :
  • 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
وحاولت التغير كثيرا في الجملة الشرطية ولكن بدون جدوي
ارجوا المساعدة في كتابة الكود الصحيح
وجزاكم الله خير
الرد }}}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  ظهور خطا عند سحب البيانات وعرضها في الداتا كريد باستخدم الـــ Threading HATEM KAREM 0 85 06-05-17, 04:45 PM
آخر رد: HATEM KAREM
  كيف اقارن بين قيمه سابقه وقمه لاحقة في خليه في الداتا جريد فيو samawi 2 62 15-04-17, 02:52 AM
آخر رد: samawi
  [سؤال] شباب كيفية انقاص او طرح الكمية الموضوعة فى الداتا جريد من الجدول احمد عبد الحكيم 2 619 04-10-16, 11:37 PM
آخر رد: benomar
  احتاج مساعدة في الداتا جريد فيو Mo_rb 8 624 18-06-16, 04:28 PM
آخر رد: boudyonline
  مشكلة الترقيم التلقائي للعمود الاول في الداتا جريد فيو kofa 31 1,477 18-06-16, 03:53 AM
آخر رد: khodor1985
  أريد منع المستخدم من تعديل خلية معينة في داتا جريد ؟؟؟ Abdh111 3 374 05-06-16, 09:28 PM
آخر رد: khodor1985
  الي كل من يجيد التعامل مع قواعد البيانات السندباد المصري 2 1,077 02-06-16, 12:40 PM
آخر رد: CLARO
  حفظ من سطر جريد فيو له قيمة شيك بوكس djelloul 3 433 02-04-16, 07:18 AM
آخر رد: khodor1985
  إنشاء جريد فيو من جدولين djelloul 4 460 01-04-16, 11:33 PM
آخر رد: djelloul
  كود عدم تكرار البيانات بالداتا جريد فيو ِAbou Sama 3 1,174 29-12-15, 09:09 PM
آخر رد: العواد الصغير

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


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