اذهب الي المحتوي
أوفيسنا

هادى محمد المامون سالم

المشرفين السابقين
  • Posts

    1376
  • تاريخ الانضمام

  • تاريخ اخر زياره

  • Days Won

    1

كل منشورات العضو هادى محمد المامون سالم

  1. بسم الله الرحمن الرحيم لم اجد مواضيع عن Class فسأقوم بالقاء الضوء بشكل بسيط كما ذكرت فى عنوان الموضوع ان Class هو مخزن الشفرات و الاستفاده المثلى منه حينما تريد تكرار الكود فى اكثر من ورقه عمل فما عليك سوى ان تقوم بانشاء Class جديد ثم تقوم بادراج الكود مره واحده ثم تقوم باستدعاءه و تسميته من اى مكان بالملف 0 تعالوا نحاول ان نفهم اكثر بهذا المثال الهدف : انشاء مسلسل من 1 : 10 لاى ورقه عمل الخطوات : الخطوه الاولى انشاء Class : ادخال الى صفحه vba عن طريق Alt + F4 ادراج Class هذا هو كود التسلسل Public Function To_10() For i = 1 To 10 Cells(i, 1) = i Next End Function اكتبه داخل ورقه Class لاحظ اننا قد قمنا بتسميه كود التسلسل ب To_10 الخطوه الثانيه استدعاء Class : انت لا تزال فى ورقه vba نقرنان على ورقه العمل التى تريد تطبيق المسلسل عليها الكود التالى يقوم بتعريف Class السابق انشاءه باسم clas ثم نقوم باستدعاء كود التسلسل(To_10) الموجود داخل clas Sub DOIT() Dim clas As New Class1 clas.To_10 End Sub و بذلك تستطيع نسخ هذا الكود و وضعه فى اى ورقه عمل و انشاء مفتاح أو Auto_Open فيتم الترقيم من 1: 10 تلقائيا هذا مثال بسيط لاستخدام Class طبعا كما ذكرت اذا كان حجم الكود كبير و البيانات كثيره تستطيع باستخدام Class استدعاءه عن طريق سطران فقط 0 السلام عليكم Class.rar
  2. بسم الله الرحمن الرحيم هذا برنامج صغير تستطيع من خلاله متابعه اسعار البورصه خلال فتره زمنيه و بالرسم البيانى الملف مرفق للنصف الثانى من شهر مارس 2007 السلام عليكم BRS.rar
  3. بسم الله الرحمن الرحيم جرب هذه المشاركه http://www.officena.net/ib/index.php?showtopic=13962&hl= السلام عليكم
  4. بسم الله الرحمن الرحيم و هذه طريقه اخرى لجمع قيم الخلايا A1 فى اوراق العمل من الورقه الثانيه الى اى عدد من اوراق العمل سواء حذفت أو أضفت ورقه عمل و وضع النتيجه فى الخليهA1 بالورقه الاولى Sub mCount() Sheet1.Range("A1").ClearContents For i = 2 To Sheets.Count h = Sheets(i).Cells(1, 1) Sheet1.Range("A1") = Sheet1.Range("A1") + h Next End Sub مرفق ملف السلام عليكم Count.rar
  5. بسم الله الرحمن الرحيم اخى محمد عسكر فعلا ما أشرت اليه هو المقصود واليك الملف بعد التطبيق ستجد المعادلات تم سحبها تلقائيا بعد الترحيل و لكن يجب اعاده تنسيق العناوين السلام عليكم School_02.rar
  6. بسم الله الرحمن الرحيم اخى bahraini بصراحه موضوع عظيم و به افاده كبيره ولكن لى اقتراح اعتقد انه فى صالح الجميع أعداد مشاركه منفصله بعنوان شرح لبعض دوال الاكسيل باللغة العربية أو أى عنوان تريده و هذه المشاركه تعتبر الصفحه الرئيسيه أو المرجع الرئيسى و يتم فهرسه جميع الدوال التى تقوم باضافتها باسم الداله فمن يريد الوصول الى داله الوقت مثلا يستطيع اختيارها من القائمه فيصل اليها عن طريق وصله مباشره و هكذا... اما التقسيم و الدمج استطيع اعداده بصلاحيات الاشراف طبعا بعد التنسيق معا السلام عليكم
  7. بسم الله الرحمن الرحيم لقد قمت بالرد قبل مشاهده اضافتك أعتقد ان مشاركتنا كانت فى وقت واحد او فرق ثوانى جرب List ليتم سحب المعادلات تلقائيا و لكن اعد تنظيم البيانات بحيث لا تجعل هناك خلايا مدمجه السلام عليكم
  8. بسم الله الرحمن الرحيم اخى محمد عسكر للترحيل بطريقه CurrentRegion يجب عدم وجود بيانات بعد اخر سطر تريد ترحيله و فى حاله وجود معادلات تريد تطبيقها تلقائيا استخدم البيانات بطريقه List فيتم ترحيل المعادلات تلقائيا ارفقت الملف بعد التعديل هل تعرف ما هو التعدليل ؟ لقد قمت بألغاء جميع الصفوف بعد السطر رقم 144 فتم الترحيل بشكل جيد السلام عليكم School_01.rar
  9. بسم الله الرحمن الرحيم شكرا على الموضوع الموضوع لفت انظار الجميع انظر الى اعداد التحميل و لكن كالعاده ........................ السلام عليكم
  10. بسم الله الرحمن الرحيم مشكور اخى محمد عسكر على المجهود لقد فعلت اقصى مايمكن لاستخدام الدوال انا على الاستعداد للمساعده(مع ضيق وقتى الحالى) اذا احتجت شيئا فى الاكواد السلام عليكم
  11. بسم الله الرحمن الرحيم ستجد فى هذه المشاركه ما تريد http://www.officena.net/ib/index.php?showt...0سريعه&st=0 و قد قام اخى و استاذى على السحيب باستخدام النماذج لادخال البيانات فى نفس المشاركه موضوع رقم (16) السلام عليكم
  12. بسم الله الرحمن الرحيم أخى ابو اسامة العينبوسي هذه المشاركه بها معلومات مقاربه لما تريد http://www.officena.net/ib/index.php?showtopic=13962&hl= السلام عليكم
  13. بسم الله الرحمن الرحيم أخى GHMN7174 السلام عليكم
  14. بسم الله الرحمن الرحيم لقد قرات هذه المشاركه من قبل و لا اريدها ان تاخذ اكثر من حجمها بعد أعتذار GHMN7174 و لكنى اريد المصدقيه و عدم أدخال أسمى الا بالحقيقه هذه هى مشاركتى لقد انسحبت من المشاركه بسبب الأستعجال أين الاشاره الى المعرفه او عدم المعرفه و فى حاله عدم المعرفه سوف أذكرها صريحه . السلام عليكم
  15. بسم الله الرحمن الرحيم و هذا كود مفتاح Insert لأضافه سجل جديد Private Sub btnInsert_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnInsert.Click If Valid() = True Then Dim InsertString As String InsertString = " Insert Into T_ID " & _ " ( ID_ID , ID_Name ) " & _ " Values " & _ " (" & txtID.Text & " , '" & txtName.Text & "' ) " Dim Cmd As New OleDb.OleDbCommand(InsertString, conn) conn.Open() Cmd.ExecuteNonQuery() conn.Close() FillData() End If End Sub و هذا كود مفتاح Update لتعديل السجل بناء على الرقم Private Sub btnUpdate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnUpdate.Click If Valid() = True Then Dim UpdateString As String UpdateString = "Update T_ID Set " & _ " ID_Name = '" & txtName.Text & "' Where " & _ " ID_ID = " & txtID.Text & " " Dim Cmd As New OleDb.OleDbCommand(UpdateString, conn) conn.Open() Try Cmd.ExecuteNonQuery() Catch zx As SqlClient.SqlException MessageBox.Show(zx.Message) End Try conn.Close() FillData() End If End Sub السلام عليكم 03.rar
  16. بسم الله الرحمن الرحيم أساسا الفرق بين الطلب و الاستعجال ساعات معدوده قد يفيدك احد الزملاء أعتذر عن الاستمرار فى المشاركه السلام عليكم
  17. بسم الله الرحمن الرحيم عند قيامنا بالترحيل من ورقه الى اخرى نحتاج دائما للتاكد من وجود البيانات فى الخلايا قبل الترحيل و عاده نكرر شرط وجود البيانات مع And أو Or و ندخل فى شروط طويله و يزداد التعقيد عند محاوله الترحيل لأكثر من صفحه 0 الكود التالى تستطيع كتابته مره واحده (Private Function) ثم تقوم باستدعاءه فقط قبل اى عمليه الترحيل Private Function Valid() As Boolean Valid = True If Sheets("Post").Range("B1") = "" Then Valid = False MsgBox "No Data In B1" End If If Sheets("Post").Range("B2") = "" Then Valid = False MsgBox "No Data In B2" End If If Sheets("Post").Range("B3") = "" Then Valid = False MsgBox "No Data In B3" End If End Function مرفق ملف مع الترحيل لأكثر من ورقه فى نفس الوقت السلام عليكم Valid_Post.rar
  18. بسم الله الرحمن الرحيم Sub mSaveAs() Dim strSave As String strSave = [F7] ActiveWorkbook.SaveAs (strSave) End Sub مرفق ملف السلام عليكم SaveAs.rar
  19. بسم الله الرحمن الرحيم جرب الملف المرفق السلام عليكم Count_Sum_If.rar
  20. بسم الله الرحمن الرحيم جرب الملف المرفق لعمود "C" بالكامل مع ملاحظه ان التاريخ هولتاريخ اليوم (متغير) السلام عليكم Cells_Date_Now.rar
  21. بسم الله الرحمن الرحيم للموضوع بقيه تعالوا تقوم بالاعداد لاضافه بيانات فى الجدول سأكتفى الان بالاعداد فقط سنقوم ياضافه عدد 2 TextBox و سنقوم بتعديل الاسم (Name) الى txtID للاول txtName للثانى و مفتاح لاضافه البيانات نعدل اسمه(Name) الى btnInsert و نعدل( Text) الى Insert الان نريد التاكد ان البيانات لن تضاف الا اذا كانت TextBoxes يوجد بهما بيانات بهذا الكود ل Function سوف نقوم بتسميتها Valid Private Function Valid() As Boolean Valid = True If txtID.Text = "" Then MessageBox.Show("لم يتم ادخال بيانات هنا ") txtID.Focus() Valid = False Exit Function End If If txtName.Text = "" Then MessageBox.Show("لم يتم ادخال بيانات هنا ") txtName.Focus() Valid = False Exit Function End If End Function و فى مقتاح Insert سنقوم بمناده Valid قبل التنفيذ للتاكد ان البيانات تم ادخالها ثم FillData (كود المشاركه الاولى) لتحديث البانات بهذا الكود Private Sub btnInsert_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnInsert.Click If Valid() = True Then FillData() End If End Sub السلام عليكم 02.rar
  22. بسم الله الرحمن الرحيم تم عمل اللازم بالملف المرفق و لكن لى رجاء ان يكون عنوان الموضوع له علاقه بمحتوى المشاركه مع شرح المطلوب بالمشاركه والملف و ليس داخل الملف فقط حتى يستفيد الجميع 0 السلام عليكم Bld.rar
  23. بسم الله الرحمن الرحيم اخى عمر الحمد لله انك بخير السلام عليكم
  24. بسم الله الرحمن الرحيم بخصوص سؤالك الاول تستطيع فرز البيانات عن طريق تحديد المجال ثم بيانات ثم فرز والسؤال الثانى طالما ان الرقم يجب ان يكون 4 ارقام يمكن استخدام الكود التالى الذى يقوم بعد رقمين من اليسار ثم يضع نقطان ثم يقوم بعد رقمان من اليسار 0 =LEFT(A1;2)&":"&RIGHT(A1;2) مرفق الملف بعد التعديل السلام عليكم Q_A_01.rar
×
×
  • اضف...

Important Information