عبدالله باقشير قام بنشر يونيو 7, 2008 قام بنشر يونيو 7, 2008 (معدل) السلام عليكم سلسلة دروس الترحيل عبر فورم بطرق بسيطة جدا وبكود مختصر يغنينا عن تسمية العناصر بداخل الفورم تصور لو لديك 100 تكستبوكس داخل الفورم وتريد الترحيل منه الى ورقة العمل اذا استخدمنا التسميات TextBox سنحتاج الى كود كبير لتعريف هذه التسميات في الكود الدرس الاول : ترحيل عبر الفورم لصف واحد متسلسل يحتوي على 20 عمود Private Sub CommandButton1_Click() On Error Resume Next Dim KH As Integer Dim S As Long, R As Long LastRow = Cells(Rows.Count, "B").End(xlUp).Row + 1 For R = 1 To 20 ' سلسلة الاعمدة Cells(LastRow, R + 1) = Me.Controls.Item(R - 1).Value Next MsgBox "تم الترحيل بنجاح", 524288, "تم الترحيل" End End Sub الخطوة الاولى والهامه: هي عند اضافتك للفورم في البداية قم باضافة العناصر (التاكستبوكس او الكومبكس) التي تريد الترحيل منها في الفورم قبل اضافة اي عناصر اخرى ليكون تسلسلها من الصفر ثم 1 - 2 وهكذا الى آخر عنصر تريده مثلا في مثالنا هذا قمت باضافة عشرين تاكسبوكس بالترتيب الذي اردته ثم اضفت العناصر الاخرى مثل زر الترحيل والليبلات لتعريف موقع الترحيل للاعمدة وقبل الانتقال الى الدرس الثاني منتظرين ردودكم لمعرفة فهمكم للكود المستخدم _______________________________1.rar تم تعديل يونيو 7, 2008 بواسطه خبور خير
احمدزمان قام بنشر يونيو 7, 2008 قام بنشر يونيو 7, 2008 ترحيل عبر الفورم لصف واحد متسلسل يحتوي على 20 عمود Private Sub CommandButton1_Click() On Error Resume Next Dim KH As Integer Dim S As Long, R As Long LastRow = Cells(Rows.Count, "B").End(xlUp).Row + 1 End Sub الخطوة الاولى والهامه: هي عند اضافتك للفورم في البداية قم باضافة العناصر (التاكستبوكس او الكومبكس) التي تريد الترحيل منها في الفورم قبل اضافة اي عناصر اخرى ليكون تسلسلها من الصفر ثم 1 - 2 وهكذا الى آخر عنصر تريده مثلا في مثالنا هذا قمت باضافة عشرين تاكسبوكس بالترتيب الذي اردته ثم اضفت العناصر الاخرى مثل زر الترحيل والليبلات لتعريف موقع الترحيل للاعمدة وقبل الانتقال الى الدرس الثاني منتظرين ردودكم لمعرفة فهمكم للكود المستخدم السلام عليكم و رحمة الله جزاك الله خيرا استاذنا الفاضل موضوع مهم ونتمنى ان نفهمة بعون الله ثم عونكم
gelani قام بنشر يونيو 7, 2008 قام بنشر يونيو 7, 2008 رائع جداً وفقك الله . كيف استطعت تحديد نطاق ادخال البيانات من الصف الخامس العمود b وهل استطيع دخال البيانات في صفحة أخرى لا أريد أن يراها المستخدم ؟؟ وباقي الأسئلة نؤجلها الى ما بعد الدروس القادمة . أسأل الله أن يزيدك علماً .
عادل حنفي قام بنشر يونيو 7, 2008 قام بنشر يونيو 7, 2008 السلام عليكم بارك الله فيك و الموضوع فعلا مهم و نرجوا التكمله وليكن في ميزان حسناتك ان شاء الله
saad abed قام بنشر يونيو 7, 2008 قام بنشر يونيو 7, 2008 الاخ/خبور الاخ/احمد يعقوب وفقكم الله والله ما محيرنا فى الاكسيل الا الترحيل
asd101960 قام بنشر يونيو 7, 2008 قام بنشر يونيو 7, 2008 اولا شكرا جزيلا موضوع مهم وجميل - واضم صوتى الى الاخ الجيلانى واستفسر عن نفس السؤال ولى سؤال آخر وهو هل من الممكن زيادة الاعمدة مثلا الى عدد 50 مثلا - وكيف ذلك ومرة اخرى ربنا يوفقك
عبدالله باقشير قام بنشر يونيو 7, 2008 الكاتب قام بنشر يونيو 7, 2008 (معدل) السلام عليكم الاخوان جميعا ----------------حفظكم الله نريد ان نمشي في هذا الشرح خطوة خطوة وعدم الانتقال الى الدرس الآخر حتى يفهم ما قبلة بشكل صحيح لان ما بعده سيكون مرتبطا بفهم ما قبله بارك الله فيكم الاخ / جيلاني LastRow = Cells(Rows.Count, "B").End(xlUp).Row + 1 هذا السطر من الكود معناه آخر صف في العمود B زايدا واحد تم تعديل يونيو 7, 2008 بواسطه خبور خير
خبيب الريم قام بنشر يونيو 7, 2008 قام بنشر يونيو 7, 2008 جزاك الله خير استاذي الفاضل خبور بالفعل هذا ما كنا نتمناه في المنتدى دروس مشروحة بشكل مبسط وبالتدريج لتعم الفائدة وننتظر المزيد ولك جزيل الشكر
عبدالله باقشير قام بنشر يونيو 7, 2008 الكاتب قام بنشر يونيو 7, 2008 (معدل) السلام عليكم تابع للدرس الاول ولى سؤال آخر وهو هل من الممكن زيادة الاعمدة مثلا الى عدد 50 مثلا - وكيف ذلك عند انشاءك للفورم هنا تعين ماتريده فتبدا مثل ما اخبرتكم اعلاه باضافة العناصر التي تريد الترحيل منها انت طالب عدد خمسين اضفنا خمسين ابتدأنا من الشق الايمن من الفورم (راي العين) باضافة عشرة بالتوالي تحت بعض ثم عملت لهم تجميع ونسختهم ولصقتهم اربع مرات بالتوالي جنب بعض صار لدينا خمسين تاكست بوكس انظروا ماذا غيرت في الكود Private Sub CommandButton1_Click() On Error Resume Next Dim KH As Integer Dim S As Long, R As Long LastRow = Cells(Rows.Count, "B").End(xlUp).Row + 1 For R = 1 To 50 ' سلسلة الاعمدة Cells(LastRow, R + 1) = Me.Controls.Item(R - 1).Value Next MsgBox "تم الترحيل بنجاح", 524288, "تم الترحيل" End End Sub في السطر الخامس من الكود For R = 1 To 50 ' سلسلة الاعمدة رقم عشرين غيرناه خمسين فقط لا غير وصلت المعلومه والا عاده ________________.rar تم تعديل يونيو 7, 2008 بواسطه خبور خير
عبدالله باقشير قام بنشر يونيو 7, 2008 الكاتب قام بنشر يونيو 7, 2008 السلام عليكم الموضوع ده إن شاء الله انا عازم بتوصيله لكم بقدر استطاعتي رغم انني في الشرح اشوف نفسي ركيك شوية ومش عارف كيف طريقة القائي هل هي مفهومة؟؟ ولقد اضفت في الكودين فيما سبق متغير غير موجود لم يسالني احدكم ايه لزمته ده الا وهو Dim S As Long ده احذفوه ما لهوش داعي لانه غير موجود اساسا هو موجود في الدروس الاخرى
gelani قام بنشر يونيو 8, 2008 قام بنشر يونيو 8, 2008 الأخ الفاضل خبور خير وفقكم الله وزادكم علماً الشرح واضح ومفهوم ونتابع الموضوع بحرص شديد لما له من اهمية . وبدون امر عليكم اتمنى إضافة رساله تنبيه بأنه لم يتم إدراج أي بيانات في حاله عدم إدخال بيانات أو إجبار المستخدم على إدخال عدد محدد من الحقول . منتظرين ومتابعين . الشكر موصول.
احمدزمان قام بنشر يونيو 8, 2008 قام بنشر يونيو 8, 2008 السلام عليكم و رحمة الله وبركاته استاذي الفاضل لو سمحت مامعنى هذا السطر Dim KH As Integer مع التحية شاكر لك حسن صنيعك و اهتمامك جزاك الله خير
سوزي كارم قام بنشر يونيو 8, 2008 قام بنشر يونيو 8, 2008 جزاك الله خيرا وبارك فيك .... اولا : عملت لهم تجميع ونسختهم ولصقتهم ... كيف عملت التجميع ؟ ضغطت على ايه ثانيا : الكود الموجود هنا .... عند الضغط على ALT + F11 لاياتي كيف أجده ؟
beho2000 قام بنشر يونيو 8, 2008 قام بنشر يونيو 8, 2008 شكرا على المرور توجد العديد من الكتب والمشاركات في المنتدى بهذا الخصوص يمكنك البحث في المنتدى سأحاول ايجاد ماتطلب ورفعه فورا
محمدي عبد السميع قام بنشر يونيو 8, 2008 قام بنشر يونيو 8, 2008 (معدل) حقا أنه لكود ذهبييارب اجعل كل دقيقة لا بل كل ثانيه قضاها استاذنا خبور الخير في هذا العمل وكل اعماله الطيبة في كفة حسناته آمين تم تعديل يونيو 8, 2008 بواسطه mohammadey1
محمدي عبد السميع قام بنشر يونيو 8, 2008 قام بنشر يونيو 8, 2008 Cells(LastRow, R + 1) = Me.Controls.Item(R - 1).Value نريد لو تكرمت شرحا لهذا السطر تم الترحيل بنجاح", 524288, "تم الترحيل" الرقم الموجود مافائدته
ابو اسامة العينبوسي قام بنشر يونيو 8, 2008 قام بنشر يونيو 8, 2008 (معدل) السلام عليكم تم الترحيل بنجاح", 524288, "تم الترحيل" هنا ملف فيه لمعانى اللارقام و الرموز التى تستخدم في الاكواد و منها الرقم المشار اليه اعلاه "524288" و هى تعنى ان يكون نص عنوان مربع الحوار الى اليمين باختصار بدل ان تكتتب vbMsgBoxRight تم الترحيل بنجاح", vbMsgBoxRight, "تم الترحيل" و في الملف ايضا الكتير من الرموز و الارقام التى تفيد المستخدم في ال Msgbox L2.rar تم تعديل يونيو 8, 2008 بواسطه ابو اسامة العينبوسي
عبدالله باقشير قام بنشر يونيو 8, 2008 الكاتب قام بنشر يونيو 8, 2008 (معدل) السلام عليكم الاخ جيلاني -----------------------حفظه الله وبدون امر عليكم اتمنى إضافة رساله تنبيه بأنه لم يتم إدراج أي بيانات في حاله عدم إدخال بيانات أو إجبار المستخدم على إدخال عدد محدد من الحقول . الاسئلة الان تكون في اطار الدرس حتى لا تتشتت الافكار بارك الله فيك الاخ احمد يعقوب -----------------حفظه الله نحن عرفنا تابع او متغير باسم kh تكون المتحولات حقه رقم صحيح الاخ/ سوزي كارم -----------------حفظه الله جوابك في المرفق الاخ / محمدي-----------------حفظه الله الشق : Cells(LastRow, R + 1 الخلايا التي نريد وضع البيانات فيها مربوطة بالسلسلة R بالنسب للعمود وLastRow بالنسبة للصف اول عمود نريد وضع البيانات فيه هو B يعني رقم 2 وبداية السلسلة R تبدا بالرقم 1 اضفنا الرقم واحد ليصبح 2 اول صف نريد وضع البيانات فيه هو نهاية صف في العمود B وهو LastRow ما تم شرحه اعلاه الشق : Me.Controls.Item(R - 1).Value نحن باستخدام هذه الطريقة استخدمنا الكنترول للتعريف بالعناصر التي نريده بدلا عن التسميات وهي الخطوة الاساسية في هذه الدروس التي اختصرنا بها الكود ME تستخدم للدلالة على الفورم وممكن تكتب اسم الفورم بدلا عنها المعنى : العناصر او الكائنات للفورم (التاكست بوكس ) التي ستاخذ منها البيانات بدلالة رقم تسلسلي وهو ( رتبة انشاءها مقارنة بباقي العناصر داخل الفورم ) مثال خارج عن الدرس : بما انك مدرسلو عندنا فصل دراسي فاضي وعايزين ندخل الطلبة داخله اول طالب يدخل يكون رقم 1 ثاني طالب يدخل يكون رقم 2 وهكذا بالنسبة ITEM رقم 1 هو صفر رقم 2 هو 1 رقم 3 هو 2 الاخ / ابو اسامة -----------------حفظه الله بارك الله فيك اخي ايوه ساعدنا في الشرح جزاك الله الف خير ايضا لو عندك تفسير اكثر وضوحا لمعنى الكنترول حتى يوضح المعنى بالشكل المطلوب ____________________.rar تم تعديل يونيو 8, 2008 بواسطه خبور خير
سوزي كارم قام بنشر يونيو 8, 2008 قام بنشر يونيو 8, 2008 شكرا للشرح يبارك لك ربنا Me.Controls.Item(R - 1).Value ولماذا ننقص الرقم 1 ؟
عبدالله باقشير قام بنشر يونيو 8, 2008 الكاتب قام بنشر يونيو 8, 2008 السلام عليكم اول قيمة R هي 1 واول عنصر عندنا الايتم حقه = صفر بالنسبة ITEM رقم 1 هو صفر رقم 2 هو 1 رقم 3 هو 2
سوزي كارم قام بنشر يونيو 8, 2008 قام بنشر يونيو 8, 2008 سامحني يا استاذ خبور الخير في هذا السؤال ومامعنى ITEM
عبدالله باقشير قام بنشر يونيو 8, 2008 الكاتب قام بنشر يونيو 8, 2008 السلام عليكم نحن هنا نتكلم عن ماذا ؟؟ عن الكاثنات او العناصر التي بداخل الفورم نريد منها عناصر معينة باستخدام رتبة وجودها بداخل الفورم مقارنة مع باقي العناصر داخل الفورم هذا بالنسبة لموضوعنا وممكن تكون اي شي آخر على حسب الاستخدامات المنوطه اليها وبعدين انا ما اقدرش اعطيك ترجمة لكل شي هناك قواعد مستخدمة وتسميات واغراض وتوابع واشياء كثيرة ترجمتها حرفيا قد لا تعطي المعنى المنوط اليها والله اعلم
عبدالله باقشير قام بنشر يونيو 9, 2008 الكاتب قام بنشر يونيو 9, 2008 (معدل) السلام عليكم اضافات لابد ان تعرف: 1- الغاية التي نريدها هي استخدام ضابط آخر يشير الى العنصر الذي نريد ترحيل البيانات منه الى ورقة العمل بدلا عن التسمية فعملية وضعك لهذه العناصر في بداية الامر سيعطيك حرية استخدامك لاي عناصرآخرى لتكملة شكل الفورم الذي تريدة من ليبلات وازرار وصور وغيره. وهذا لايعني ان هذا شرط ملزم . 2- بالامكان استخدام وعاء آخر لوضع عناصر اخرى قد تحتاجها لترحيل آخر وهو استخدام الفرمة ( سنتكلم عليه فيما بعد) لان الفرمة هي وعاء لمجموعة معينة تاخذ تسلسل كنترولي من الصفر بالاشارة الى هذا الوعاء. بيان ما عرفناه في الدرس السابق: ترحيل بيانات من عناصر (تاكستبوكس او كومبكس) الى صف واحد فقط يتسلسل تباعا الدرس الثاني: لومعنا فاتورة مثلا : نحتاج الى ترحيل عدة صفوف لتحمل بيانات هذه الفاتورة يعني نريد نرحل عدة صفوف الى ورقة العمل وتاخذ هذه الصفوف ترتيب متسلسل داخل الورقة في المرفق: تتم هذه العملية بهذا الكود فقط Private Sub CommandButton1_Click() On Error Resume Next Dim KH As Integer Dim S As Long, R As Long LastRow = Cells(Rows.Count, "B").End(xlUp).Row KH = 0 For S = 1 To 10 For R = 1 To 5 Cells(LastRow + S, R + 1) = Me.Controls.Item(KH + R - 1).Value Next KH = KH + 5 Next MsgBox "تم الترحيل بنجاح", 524288, "تم الترحيل" End End Sub سيتم الشرح من اسئلتكم _______________________________2.rar تم تعديل يونيو 9, 2008 بواسطه خبور خير
hat قام بنشر يونيو 9, 2008 قام بنشر يونيو 9, 2008 ألم أقل لكم إنه ينبوع عطاء لا ينضب إنه الاستاذ خبور خير لو بدأ العرب واستمروا على هذه الطريقة ولم يبخلوا على المعلومة على من سواهم الا بالمقابل المادي لجاوزنا الثريا علماً وتفوقنا على نظرائنا الغربيين اللهم زده علماً وبارك له وعليه وفيه و به واجعل جميع امره يسراً كما ييسر هو على اخوانه بالمنتدى آميييييييييييييييييييييييييييييييييييييييييييييييييييييين
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.