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

نجوم المشاركات

  1. ياسر خليل أبو البراء

    ياسر خليل أبو البراء

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


    • نقاط

      22

    • Posts

      13165


  2. jjafferr

    jjafferr

    أوفيسنا


    • نقاط

      20

    • Posts

      10000


  3. سعيد صواب

    سعيد صواب

    الخبراء


    • نقاط

      13

    • Posts

      711


  4. رجب جاويش

    رجب جاويش

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


    • نقاط

      9

    • Posts

      3492


Popular Content

Showing content with the highest reputation on 03/05/16 in مشاركات

  1. السادة / أعضاء منتديات أوفيسنا التعليمية الموقرين السلام عليكم ورحمه الله وبركاته بالمرفقات (( هدية )) بريمج العيادة الطبية الإصدار الأول التجريبى ملف تنفيذى أى بإمتداد exe لا يحتاج الى خفض أمان الماكرو لكى يعمل يرجى تجربتة وإبداء الملاحظات من قبل كل مهتم وتقبلوا منى وافر الاحترام والتقدير بريمج العيادة الطبية الإصدار الأول32 بت.rar
    4 points
  2. السلام عليكم ورحمة وبركاته .. في المرفق يتم استخراج بيانات الجهاز .. المعالج + الماذر بورد + الهارد ديسك اتمنى ان يفيد من يبحث عنه ... ولا نستغني ابدا عن توجيهات خبرائنا الكرام .. ونقاش الأخوة اعضاء المنتدى الحبيب وتبادل وجهات النظر وكذلك من له تجارب مع الموضوع. بالتوفق للجميع MyProtect.rar
    3 points
  3. السلام عليكم تفضل أخى Book123.rar
    3 points
  4. 1. سيبك من ده دلوقتي 2. ميزة الاكسس هو مصمم الاستعلامات ، استفيد منه ، لأنه جدا قوي ، و أحد اسرار الاستعلام ، ما تعمل كل شئ في استعلام واحد ، وانما تهيئ استعلام لإستعلام آخر (كما في مثالك اعلاه ، وكما في المثال التالي): http://www.officena.net/ib/topic/67637-جمع-حقول/?do=findComment&comment=440543 هي قاعدة البيانات ايه؟ 1. ادخال بيانات ، 2. بحث وتصفية البيانات (استعلام) ، 3. إظهار النتائج. فالاستعلام هو اهم شئ تقدر تستفيد منه في الاكسس ، وحتى لما نستعمل الكود ، نستخدم الاستعلام للسجلات اللي نريدها (يعني نجهز السجلات اولا بالاستعلام) ، ثم نكمل الباقي بالكود ، والذي هو أبطأ بكثير في عمله من الاستعلام جعفر
    2 points
  5. تفضل يا باش مهندس الاستعلام: . والنتيجة: . جعفر 308.Tire operation System.mdb.zip
    2 points
  6. شكرا اخوي عبدالرحمن على الملاحظة يبدوا ان هذه هي مشكلة اخونا عبدالله قدور
    2 points
  7. جزاكم الله خيرا اخواني الكرام واخص صاحب الموضوع اخونا سعيد لي تجربة مع رقم اللوحة الام عملت برنامج وجعلت الحماية على اللوحة الام ولكني تفاجأت في يوم ما ان بعض شركات الحواسيب رقم اللوحة الام متشابه في جميع اجهزتها طبعا التجربة كانت على عدة حواسيب من اصدار معين
    2 points
  8. السلام عليكم هذا رابط ومن منتدانا مع اني لم ادخل في تفاصيله ولكن اعتقد انها تجربة بها فائدة تحياتي
    2 points
  9. ايش رأيك في مثال موسع أكثر نستطيع ان نعمل قاعدة التحقق من الصحة في كود ، مثلا: اعمل حقل اسمه int_No ، وعلى حدث "الحالي" للنموذج ، استعمل كود مثل هذا: Private Sub Form_Current() If Day(Date) <= 5 Then Me.int_No.ValidationRule = "is null or <=5" ElseIf Day(Date) <= 10 Then Me.int_No.ValidationRule = "<=10" ElseIf Day(Date) <= 15 Then Me.int_No.ValidationRule = "isnumeric([int_No])=true" ElseIf Day(Date) <= 20 Then Me.int_No.ValidationRule = "isnumeric([int_No])=false" ElseIf Day(Date) <= 25 Then Me.int_No.ValidationRule = "between 15 and 30" Else Me.int_No.ValidationRule = "between 1 and 14" End If End Sub . فحسب يوم الشهر ، تتغير قاعدة التحقق من الصحة مرونة تامّه ، مو مثل الجدول جعفر
    2 points
  10. أخي الحبيب رجب جاويش بارك الله فيك وجزتي خيراً على حلولك الجميلة مجرد سؤال : لما قمت بكتابة أكواد في حدث كل ورقة عمل على حدا .. ما رأيك بإزالة كل الأكواد في حدث كل أوراق العمل ووضع الكود التالي في حدث المصنف Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range) If Target.Address = [B4].Address Then Application.EnableEvents = False Sheets("1").[B4] = Target.Value Sheets("2").[B4] = Target.Value Sheets("3").[B4] = Target.Value Application.EnableEvents = True End If End Sub تقبل وافر تقديري واحترامي
    2 points
  11. أخى الحبيب ياسر بالعكس أنا أسعد كثيرا بهذه النوعية من النقاش لانها تثرى الموضوع ويستفيد منها الجميع أولا : النقطة الخاصة بتحديد الأعمدة ثم كليك يمين على رؤوس الأعمدة ثم يختار الأمر Hide يكون سهل فعلا فى حالة الاخفاء ولكن فى هذه الحالة أنت تريد تحديد الأعمدة المراد اظهارها وليس اخفاءها وبالتالى لا يمكن تنفيذ ذلك الا من خلال الكود والا كان الأمر فى منتهى الصعوبة بدون الكود
    2 points
  12. السلام عليكم أفضل تحية لأخى الحبيب ياسر على فتح موضوعات تفيد الجميع وتفتح نقاشات جميلة تعود بالنفع على جميع الأعضاء بالنسبة لهذ الموضوع ( اخفاء جميع الأعمدة ما عدا أعمدة محددة ) الكود الذى قدمه أخى المبدع سليم هو أبسط كود يقوم بعمل المطلوب فعلا ولكن لاثراء الموضوع هذه فكرة أخرى وفيها يتم تحديد الأعمدة المراد عدم اخفاءها عن طريق الماوس داخل inputBox وفى حالة تحديد أعمدة غير متجاورة يستخدم مفتاح CTRL أثناء التحديد Sub ragab() Dim Rng As Range On Error Resume Next Application.DisplayAlerts = False Set Rng = Application.InputBox(Prompt:="قم بتحديد الأعمدة التى لا تريد اخفاءها عن طريق الماوس وعند اختيار أعمدة غير متجاورة اضغط مفتاح Ctrl أثناء التحديد", Title:="اخفاء مخصص", Type:=8) Application.DisplayAlerts = True If Rng Is Nothing Then Exit Sub Columns.Hidden = True Rng.EntireColumn.Hidden = False End Sub
    2 points
  13. حياك الله اخي الكريم شاهد المرفق شاهد حدث في الحالي للنموذج وحدث بعد التحديث لحقل birthdate بإمكانك اخفاء حقل calculate فيما بعد بالتوفيق Tccst.rar
    2 points
  14. وعليكم السلام اخي الاستاذ عبد العزيز احسن الله عزاكم في فقيدكم ، ولا اراكم الله مكروها فيما تحبون ، وازال عنكم وبلدكم العزيز الهم والغم ، وابدلكم بها الخير والامن والاستقرار ، انه على كل شئ قدير ، ونعم بالله. لوسمحت تعطيني مثالين بالتفصيل على الذي تريد ، من واقع بياناتك (سواء على ملف اكسل او صورة او حتى كتابة يد) ، حتى استطيع مقارنة نتائجي به. جعفر
    2 points
  15. يمكن استخدام طريقة تغيير خاصية قابل للتعديل وبالقيمة =نعم ! مع افتراض ان الخاصية تاخذ القيمة لا عند تحميل النموذج فعند تحميل النموذج يكون الحدث وعند التحميل للنموذج Me.AllowEdits = False وعند الضغط على الزر يكون الحدث Me.AllowEdits = true وهنا يظهر استفسار : ماذا بعد التعديل في النموذج هل يتم عودة عدم السماح بالتعديل ام يظل التعديل متاح ؟ فاذا يعود الاقفال اكتب الحدث التالي وعند بعد التحديث للنموذج Me.AllowEdits = False هنا اصبح السناريو : عند تحميل النموذج اول مرة غير متاح .... عند النقر على الزر متاح ... بعد التعديل يعود عدم السماح بالتوفيق
    2 points
  16. برنامج المخزون و الفواتير الشامل .... الاصدار الثالث اكسيل 2007 - اكسيل 2010 اليوم بمشيئة الله هو الانطلاق الرسمى لهذة النسخه وبعد انتهاء مرحلة التجربة التى دامت اكثر من شهرين خطوات استخدام البرنامج لأول مره تسجيل البيانات الجديدة داخل البرنامج لعمل فواتير البيع و الشراء و الحركات المالية 1- تسجيل اسماء مناديب البيع وهى خطوه مهمه مطلوبة لتسجيل اسم عميل جديد 2- تسجيل و ادخال العملاء (يتم ربط كل عميل باسم مندوب) 3- تسجيل و ادخال الموردين 4- تسجيل و ادخال اسماء لفئة الصنف وهى خطوه مهمه مطلوبة لتسجيل صنف جديد 5- تسجيل و ادخال الاصناف (ولابد من وجود فئة مدخله مسبقا لكى تستطيع ادخال الصنف) 6- ولا تنسى تسجيل رصيد اول المده فى شاشة البيانات و الجرد الجديد فى هذا الاصدار * واجهة تطبيقية كاملة * برنامج كامل مخزون فواتير ذمم عملاء وموردين واستحقاقات خلال الفترات الزمنية المختلفة * اختصارات سريعة لتنفيذ العمليات و التقارير بسرعة عالية * كشف حساب بطريقة جديدة بمعنى نفترض انه هناك عميل ما علية مديونية بفيمة 15000 فالبرنامج يعطيك كشف حساب تفصيلى للمديونية المستحقة خلال فترات 30 يوم 60 يوم 90 يوم و اكثر من 90 يوم فمثلا فى المثال السابق يكون استحقاق المديونية على حسب فواتير العميل مستحق فى 30 يوم 3000 وفى 60 يوم 6000 وفى 90 يوم 4000 و فى اكثر من 90 يوم 2000 فيكون اجمالى المديونية هم ال 15000 لكن الاستحقاق فى فترات مختلفه وهذا الكشف يفيد كل من يتعامل بالاجل لمعرفة المستحق خلال الفترة التى يريدها وعندما يقوم العميل بسداد جزء من المستحق يتم خصمه من المديونية القديمه بمعنى ان العميل فى المثال السابق قد قام بسداد 1500 فيتم خصمها من ال 2000 وهى مديونية الاكثر من 90 فيصبح كشف حسابة كالتالى مستحق فى 30 يوم 3000 وفى 60 يوم 6000 وفى 90 يوم 4000 وفى اكثر من 90 يوم 1500 فيكون اجمالى المديونية هم ال 13500 * شاشة فواتير جديده تحوى الكثير و الكثير من الاختصارات للعملاء و الاصناف وتوصلك الى عدة تقارير بضغطة زر واحده عرض معلومات عن الصنف و رصيده الحالى داخل المستودع و اخر سعر شراء بمجرد اختيارك للصنف وادخاله داخلة الفاتوره سهولة الغاء وتعديل الصنف داخل الفاتورة عن طريق الدبل كليك ذهاب مباشره الى تقرير صنف معين بمجرد اختياره وضغط تقرير الصنف اكتشف المزيد............ *شاشة لتقرير المديونية خلال الفترات الزمنية المختلفة يجب عليك قراءة ومراجعة شرح البرنامج جيدا حيث توجد العديد و العديد من الاختصارات السريعة التي تنقلك من شاشة الى اخرى بسرعه عالية ولتوفير وقتك داخل البرنامج. كما توفر لك سرعة الحصول على المعلومة المطلوبة. * لتحميل نسخة من الشرح وهى عبارة عن ملف تنفيذي اضغط على الرابط التالى شرح برنامج المخزون و الفواتير الشامل( ملف تنفيذى... 6MB رابط خارجى على موقع ميديا فاير) * او الذهاب الى موضوع شرح البرنامج و مناقشات مشرفى و اعضاء المنتدى داخل المنتدى على الرابط التالى شرح برنامج المخزون و الفواتير الشامل(مشاركة داخل المنتدى) كما احببت ان اقدم مناقشة ونصائح مديري و اعضاء المنتدى للبرنامج لكى يستفيد منها الجميع وهذه المواضيع تم مناقشتها في موضوع شرح البرنامج داخل المنتدى انظر المشاركة التالية لمشاهدة النصائح و المناقشات حول البرنامج واخيرا اقدم لكم البرنامج حجم البرنامج 1.2 MB اختر اسم المستخدم المدير كلمة السر 123 محرر الاكواد 85211 لاتترد فى الاستفسار عن اى شيى داخل البرنامج ضع مشاركتك وسوف يتم الرد عليها كما يمكن مراسلتى على الايميل التالى amroomo@gmail.com اخيرا اتمنى ان يكون هذا البرنامج اضافة الى برامج المخزون و الفواتير وتغيير مسارها على الاكسيل فهذا العمل جديد بكل المقاييس فى افكاره التى اتمنى ان اكون قدمتها بصورة جيدة ويستقيد بها الجميع وَقُلْ رَبِّ زِدْنِي عِلْمًا ========================================================= المرفق المحدث الاخير: SIS 3.152 (Add City).rar
    1 point
  17. السلام عليكم اخوانى وأساتذتى فى المنتدى وكل عام وأنتم بخير بمناسبة عيد الفطر اليوم أقدم لكم كيفية عمل اختصار لملف اكسل به صورتك على سطح المكتب فقد لفت نظرى طلب أحد الأخوة لهذا الموضوع لذلك قررت أن أضع بين أيديكم الطريقة الآتية 1 - فى ملف اكسل أدرج هذا المديول Option Explicit Private Declare Function OpenClipboard Lib "user32" (ByVal hWnd As Long) As Long Private Declare Function GetClipboardData Lib "user32" (ByVal wFormat As Integer) As Long Private Declare Function CloseClipboard Lib "user32" () As Long Private Declare Function GetActiveWindow Lib "user32" () As Integer Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long Private Declare Function FindExecutable Lib "shell32.dll" Alias "FindExecutableA" (ByVal lpFile As String, ByVal lpDirectory As String, ByVal lpResult As String) As Long Private Declare Function ShellAbout Lib "shell32.dll" Alias "ShellAboutA" (ByVal hWnd As Long, ByVal szApp As String, ByVal szOtherStuff As String, ByVal hIcon As Long) As Long Private Declare Function SHGetSpecialFolderLocation Lib "shell32.dll" (ByVal hwndOwner As Long, ByVal nFolder As Long, pidl As ITEMIDLIST) As Long Private Declare Function SHGetPathFromIDList Lib "shell32.dll" Alias "SHGetPathFromIDListA" (ByVal pidl As Long, ByVal pszPath As String) As Long Const CSIDL_PERSONAL = &H5 Private Type SHITEMID cb As Long abID As Byte End Type Private Type ITEMIDLIST mkid As SHITEMID End Type Dim FSO As New FileSystemObject Dim FLD As Folder Function UserNameOffice() As String UserNameOffice = Application.UserName End Function Public Function DesktopAddress() As String DesktopAddress = CreateObject("WScript.Shell").SpecialFolders("Desktop") & Application.PathSeparator End Function Private Function GetSpecialFolder(CSIDL As Long) As String Dim Path As String Dim FolderPath As Object Dim IDL As ITEMIDLIST Dim sh As New Shell32.Shell Set FolderPath = sh.NameSpace(5) If Not FolderPath Is Nothing Then GetSpecialFolder = FolderPath.Self.Path Exit Function End If GetSpecialFolder = "" End Function Function DirExists(strDirectory As String) As Boolean DirExists = (Dir(strDirectory, vbDirectory) <> "") End Function Sub Desktop_Shortcut() Dim WBName As String, Path As String, WB_Link As String, WB_Name As String Dim DesktopPath As String, TargetPath As String, StrSave As String Dim WSHShell As Object, MyShortcut As Object Set WSHShell = CreateObject("WScript.Shell") Dim FSO As Object, Folder As Object, File As Object Set FSO = CreateObject("Scripting.FileSystemObject") Dim WB As Workbook Set WB = ThisWorkbook Dim WSh As Worksheet Set WSh = Sheet1 WBName = WB.Name Path = "MyFile" DesktopPath = WSHShell.SpecialFolders("Desktop") WSh.Range("C2").Value = WB.Name WB_Name = WSh.Range("C3").Value WB_Link = WSh.Range("C4").Value On Error GoTo ErrHandle If Not DirExists("C:\" & WB_Name) Then 'Check C Drive If Not DirExists(GetSpecialFolder(CSIDL_PERSONAL) & "\" & WB_Name) Then 'Check My Documents Set FSO = CreateObject("Scripting.FileSystemObject") 'If not in C Drive or My Documents - then create shortcut FSO.CreateFolder "C:\" & WB_Name ChDir "C:\" & WB_Name SavePicture Sheet1.Image1.Picture, WB_Name & ".ico" 'Picture pasted onto Image1 on Sheet 1 - Link Shortcut Set FSO = CreateObject("Scripting.FileSystemObject") Set MyShortcut = WSHShell.CreateShortcut(DesktopPath & "\" & WB_Link) With MyShortcut .TargetPath = WB.FullName .IconLocation = "C:\" & WB_Name & "\" & WB_Name & ".ico" .WindowStyle = 1 .Description = "EEZIAdmin" .WorkingDirectory = WB.Path .Save End With Else End If End If ErrHandle: Set WSHShell = Nothing End Sub 2 - فى شيت 1 الخلية C3 ضع المعادلة =IF($C$2="";"";IF(MID($C$2;(LEN($C$2)-4);"1")=".";LEFT($C$2;LEN($C$2)-5);IF(MID($C$2;(LEN($C$2)-3);"1")=".";LEFT($C$2;LEN($C$2)-4);""))) وفى الخلية C4 ضع المعادلة الآتية =IF($C$3<>"";$C$3&".lnk";"") 3 - فى شيت 1 ادراج Image وعليها صورة : ندرج الـ Image كالتالى من developet tab ثم insert ثم more controls ثم Microsoft forms 2.0 image ثم ok ارسم الـــــ Image فى الشيت وبعدين كليك يمين عليها واخنر Properties فى قائمة الخصائص التى تظهر دور على الخيار Picture واعمل ادراج لأى صورة من على جهازك على الـ Image واحفظ وشغل الكود لكم كل التحية والتقدير Desktop Shortcut mokhtar.rar
    1 point
  18. حبذا ذكر اصدار الويندوز من الاخوه فهو مهم لانه اعتقد هو الوسيط لجلب البيانات ! مشكور استاذ سعيد
    1 point
  19. السلام عليكم ارفقت لك مثال قمت بالتعديل عليه وهو مشاركة للاخ سعيد صواب وفيه ثلاثة انواع من الحماية ارجو ان يكون هو طلبك والسلام حماية برقم المعالج واللوحة الام والهارد.rar
    1 point
  20. انا شخصيا افضل النماذج المنبثقة وتوسيطها فى الشاشة فعند نقلها الى جهاز اخر تبفى كذلك وارتاح من مسالة دقة الشاشة
    1 point
  21. بارك الله فيكم الموضوع لم يخطر لى على بال او حتى حلم فسبحان الله
    1 point
  22. حياك الله انا شخصيا لا أميل الى تغيير إعدادات جهاز العميل ، ودقة الشاشة هي احد تلك الاعدادات ، فانا مستخدم ، واستعمل مجموعة برامج في نفس الوقت ، ومتأقلم على هذا الوضع ، ويجيني مبرمج يغير اعداداتي ، واويلاه فجدا مهم ان القى بدائل لبرامجي ، عن طريق برامجي ، ولبرامجي فقط ، وبدون تغيير اعدادات الكمبيوتر او الريجستري جعفر
    1 point
  23. اخى سعيد بعد تجربة المرفق الاخير .. رقم المعالج والهارديسك يظهر رقم الماذر بورد لايظهر اوفيس عربى 2010 ــ ويندوز 7 هذ هو المرفق الذي نريده
    1 point
  24. حبيبى بارك الله فيك اعتذر لم احاول فتح الاكواد بصراحه لانه لا تشغل بالى مسالة الحماية بتلك الارقام كما اننى مشغول البال باكثر من مشكله تواجهنى فى عملى وهذا ايضا ما منعنى من فتح الاكواد ولكن اعتقد اننى فهمت الان ما يظهر هو رقم الهارد الماستر الذى يعمل عليه نظام التشغيل جزاكم الله خيرا على التوضيح وبالنسبه للهاردات والله لا تغلى عليك ولا الجهاز اللى به تلك الهاردات يغلى عليك راسلنى بالعنوان وتجدهم عندك مع كل الحب فى اسرع وقت والله انى احبكم جميعا فى الله
    1 point
  25. ليس من عدل كمن أبدع أخي الغالي رجب جاويش فأنت صاحب الكود وكل ما فعلته أنني اختصرت المسافة .. يعني بدل ما آخد أتوبيس أخدت توك توك (وكل السبل تؤدي إلى بلشاي)
    1 point
  26. جزاك الله عنا كل خير أخي سعيد تجربة آكسس 2010 ويندوز 8 مع تقديري ودعائي
    1 point
  27. تم التجربة انا اعمل على نسخة " office 2010 professional plus english " تم تجربة المرفقين وتلك النتيجة المعالج : 178BFBFF00100F42 الماذر بورد : الهارد ديسك : -1163013639 للعلم الجهاز به عدد 3 هارد ديسك 160 جيجا , 500 جيجا , 1000 جيجيا طبعا انا مش فاهم ده رقم انهو هارد ديسك الا اذا فصلتهم وجربت واحد واحد ملاحظة رقم اللوحة الام لم يظهر
    1 point
  28. ممكن تضع سطر في أول الكود ليلغي هذه الرسالة التي تسبب مشكلة Application.DisplayAlerts=False تقبل تحياتي القلبية
    1 point
  29. جزيت خيراً أخي الغالي محمود عند الضغط على زر الأمر إنشاء نسخة مستقلة عن الحالة يحدث خطأ في السطر التالي wbTemp.SaveAs ThisWorkbook.Path & "\" & "اسم الملف.xlsx", 51
    1 point
  30. اعطني اسم النموذج ، وكيف استطيع ان ارى هذه الرسائل؟
    1 point
  31. أحسنت أحسنت أحسنت بالفعل لم أنتبه لتلك النقطة ..لأن الكود يقوم على إخفاء الكل ثم إظهار الأعمدة التي تم تخزينها في نطاق .. أعتذر عن الملاحظة التي لم تكن في محلها .. ولكن تظل صعوبة تحديد الأعمدة المتباعدة قائمة وبعدين إنت ذكرت أولاً .. طيب فين ثانياً ..!! مجرد مزحة تقبل وافر تقديري واجترامي
    1 point
  32. استاذ محمد الق نظرة على الرابط http://www.officena.net/ib/topic/67762-استخراج-رمز-المعالج-والماذر-بورد-ورقم-الهارد-ديسك-للحماية/ بالتوفيق للجميع
    1 point
  33. عزيزي ومع اني اشك ان هناك طريق اقصر لما تريد ولكن كحل لمشكلة ظهور الرسالة في المعيار للاستعلام استبد المعيار السابق بالتالي [Forms]![S1M]![اسم الطالب] بالتوفيق
    1 point
  34. وعليكم السلام أخوي جعفر وين هالغيبة تفضل: Private Sub Form_Current() MyTime = Now() Me.pic.Visible = True Me.نص7.Visible = True Me.نص11.Visible = True End Sub Private Sub t_Change() Dim i As String i = Len(Me.t.Text) If i >= 4 Then DoCmd.Requery Dim db As DAO.Database, rs As DAO.Recordset Set db = CurrentDb Set rs = db.OpenRecordset("t2") rs.AddNew rs("an") = Me.an rs("adate") = Date rs("intime") = Me.LabelDate rs.Update rs.Close t = "" t.SetFocus PauseTime = 20 ' Set duration. Start = Timer ' Set start time. Do While Timer < Start + PauseTime DoEvents ' Yield to other processes. Loop Me.pic.Visible = False Me.نص7.Visible = False Me.نص11.Visible = False End If End Sub تقدر تلعب بسطر التأخير ،بالثوان: PauseTime = 20 جعفر 304.abc.mdb.zip
    1 point
  35. حياك الله اخي الكريم من ورقة الخصائص ...... تنسيق .... اجعل العناصر غير مرئية .. مرئي = لا ثانيا .. في حدث بعد التحديث للقائمة المنسدلة case ضع الكود التالي If Me.case.Value = "follow up" Then Me.mth1.Visible = True Me.mth2.Visible = True Me.mth3.Visible = True Else Me.mth1.Visible = False Me.mth2.Visible = True Me.mth3.Visible = True End If mth1 : هو 1month في مثالك وبإمكانك التطبيق على باقي العناصر بنفس الطريقة ...
    1 point
  36. شكرا اخي جعفر على هذه النوادر الجميلة وتفضل اخي عبدالله يمكنك كتابة اي شيء على الزر Dim resalh As Integer Ok = "أكيد موافق" Cancel = "not agree" MessageBoxH Me.hwnd resalh = MsgBox("تفضل هذه الخلطة في اللغة", vbOKCancel, "رسالة")
    1 point
  37. وعليكم السلام ورحمة الله هذا تحديد زر الأمر.. يمكن معالجة ذلك بالنقر على تفاصيل النموذج بزر الماوس الأيمن واختيار ترتيب الجدولة واختر ترتيب تلقائي أو قم بتأخير ترتيب الزر بحيث لا يكون أول تحديد له عند فتح النموذج وليكن مثلا أول تحديد للنموذج هو مربع نص أو مربع تحرير وسرد انظر الصورة المرفقة
    1 point
  38. بسم الله الرحمن الرحيم 1- المكتبات والادوات DLL & OCX 2- كيفية تسجيل المكتبات والأدوات Dll & OCX في النظام 3- كيفية إضافة المكتبات وأدوات خارجية للفيجوال والعمل عليها ما هي فوائد استخدام ملفات ال DLL او لماذا نستخدم ملفات DLL: ماذا تعني DLL: هي اختصار لمجموعة الكلمات التالية Dynamic link libraries لمحة سريعة عن DLL: هي عبارة عن ملفات مترجمة(Compiled files) شبيهة الى حد بعيد جدا بالملفات التنفيذية و التي تحمل اللاحقةExe, ملفات ال DLL يمكن ان تحتوي على Codes او يمكن ان تحتوي على مصادر resources او ممكن ان تحتوي على بيانات Data و قد تجد DLL يحتوي على كل ما سبق ذكره, و لكن الفرق الجوهري بين DLL و Exe هو أنّ ملفات DLL لا يمكن تنفيذها بشكل مباشر و انما يتم استثمارها من قبل تطبيقات اخرى اي ان ملفات DLL ليست مستقلة بحد ذاتها و تحتاج الى تطبيق دائماً للاستفادة منها مع انها تحتوي على اكواد تنفيذية مثلها مثل exe و لكن لا يمكنها ان تعمل بمفردها و يمكنك تخيل ان ملفات DLL هي ملفات مساعدة للتطبيق للقيام بعمله. الهدف الرئيسي من وجود ملفات DLL هو مشاركة الاكود بين العديد من التطبيقات اي استخدام نفس ال DLL من اكثر من تطبيق سواء بوقت واحد او بشكل منفصل. والادوات ocx تشبه نفس وظائف dll بصورة كبيرة كيفية تسجيل الأدوات نفترض ان لدينا ملف dll او ocx نريد اضافة للنظام للعمل عليه من داخل الفيجوال بطريقة سليمة الطرق كثيرة ولكن نختصر ونضع الخلاصة نفترض انا لدينا اداة اسمها actskin4.ocx نقوم بنسخها لملفات النظام اذا كان 32 لملف c:\windows\system32\actskin4.ocx اما اذا كان النظام 64 bit فلا بأس من نسخ الملف مرتين في المسارات الاتيه c:\windows\system32\actskin4.ocx C:\Windows\SysWOW64\actskin4.ocx ونقوم بعمل نوت باد اذا كان النظام 32 نضع هذا السطر regsvr32 c:\windows\system32\actskin4.ocx ونحفظه بامتداد bat وليكن اسم الملف reg.bat اما نظام ال64 نضع الاسطر التالية regsvr32 c:\windows\system32\actskin4.ocx regsvr32 c:\windows\SysWOW64\actskin4.ocx وتعمل لكلا النظامين ويتم الحفظ ايضا بامتداد bat واسم الملف ليكن هكذا reg.bat وغالبا يتم فتح الملف بعد ذلك كمسئول كليك يمين وRun admin لتظهر نافذة تقول انه تم التسجيل بنجاح ولقد وضعت برنامج في المرفقات للتسهيل علي البعض في تسجيل الاداوت كيفية إضافة المكتبات وأدوات خارجية للفيجوال بعد ان قمنا بنقل الادوات الى ملفات النظام سواء 32bit or 64bit وتم تسجيلها كما بالشرح السابق نقوم بفتح مشروع جديد وبكدا نكون تعلمنا طريقة وضع الادوات علي الفورم ناتي لكيفية التعامل معها برمجيا وكمثال هنعمل علي نفس الاداة المدرجة في اعلاه وهي actskin4.ocx ما فائدة هذه الاداة : تقوم بتغيير المظهر العام لوجهه الفورم والازرار الى واجهات skinمعدة للتعامل مع هذه الاداة وهي من اللمسات الجمالية للبرنامج بتاعنا عيب الاداة : ان الليبل الاصلي لا يظهر عند تشغيل البرنامج ولا اداة image ويأتي مع الأداة ليبل بديل لليبل الاصلي يظهر مع الاداة وتستبدل الimage بال picture نأتي لكيفية التعامل معها برمجيا اولا نقوم بانشاء مشروع جديد واضافة الاداة كما سبق ويتم وضع الكود الخاص بالاداة في حدث تحميل الفورم وممكن وضعه باي حدث نشاء كزر مثلا لتغيير الskin كود التشغيل يجب اولا ان يكون لديك ملفات skin ليتم التطبيق عليها عن طريق الاداة قمت بارفاق بعض ال skin للتطبيق عليها ووضعتها داخل مجلد داخل البرنامج بتاعنا وسميته كمثال skin الكود البرمجي Private Sub Form_Load() ' سطر استدعاء وتحميل ملف الskin من مسار البرنامج داخل المجلد skin اسمه Yasser.skn Skin1.LoadSkin (App.Path & "/skin/yasser.skn") 'سطر تطبق ما تم استدعائه Skin1.ApplySkin Me.hWnd End Sub واحفظ مشروعك وقم بتشغيله لترى هذا شوف الفرق اي استفسارات توضع ف موضوع الردود والاستفسارات الى اللقاء والسلام عليكم مع تحياتي ياسر العربي يتبع مرفق برنامج تسجيل الاداوت والمشروع المنفذ ف الشرح RegOCX.rar مشروع لمسه جمالية.rar
    1 point
  39. أخي وحبيبي في الله حسام عيسى الإكسيلجي المتميز بارك الله فيك وجزيت خيراً على مشاركتك المميزة .. مركز تدريب ودورات وبرنامج محاسبي على أعلى قدر وشغل ومش لاقي وقت (بقر بس) ربنا يزيدك من فضله وبعدين اللي معندكش وقت ليه باصيه لأخوك ..اللعبة خد وهات (ربنا يصلح أمورنا جميعاً) وبالنسبة للـ 10% لا تقلق ممكن خليهم 30% بس اعملي دعاية وليك على كل راس 30% ..نسبة عمولتك تقبل وافر تقديري واحترامي
    1 point
  40. وعليكم السلام Private Sub chk_AfterUpdate() If chk = -1 Then comb1.SetFocus comb1.Dropdown Else comb1.Requery End If End Sub
    1 point
  41. الحلقة الثالثة طبعا واحد هيقولي ارحم نفسك .. كفاية كدا النهاردة ..!! أقولك ايه النهاردة أجازة وبعدين أنا عايز أخلص الشوية اللي دايما بنطول فيهم عشان نبدأ نتعلم جديد .. مش كل اما دورة تبدأ تلاقي الموضوع يبقا زي الفل وياخد وقته في البدايات والأساسيات وفجأة الدورة تتقطع .. هنتكلم شوية في الحلقة دي عن تسجيل الماكرو .. واحد رفع ايده وبيقول أيوا أنا متمكن فيها (أقوله كتر خيرك !) بس أنا مش عايزك متمكن .. إحنا بس هنستفيد من حكاية التسجيل دي في أمور معينة .. واحد تاني هيرفع ايده ويقول طيب أنا أقدر أعمل الكود بالشكل اللي أنا عايزة من غير ما يكون عندي فكرة بالأكواد ووجع الدماغ هقوله إنت صح وغلط .. صح من جهة وغلط من جهة .. بس مش هناقش الموضوع ده المهم نبدأ نشوف ايه حكاية التسجيل دي.. قبل ما نبدأ نتعلم إزاي نخلي نافذة الإكسيل ونافذة محرر الأكواد جبنا إلى جنب خلي عينك ع الاتنين ..!! نفتح الاتنين (بلاش الجمعه عشان أجازة الموظفين) نفتح النافذتين وبعدين نفعل نافذة الإكسيل ونضغط على علامة الويندوز اللي ف لوحة المفاتيح اللي ما بين CTRL و ALT في الناحية الشمال .. لو ملقتهاش يبقا إنت مرجعتش لوحة المفاتيح اللي قلت لك رجعها أو رجعتها بس نصب عليك تاني !! بنضغط على زر الويندوز + سهم شمال مثلا .. ونروح نفعل النافذة التانية ونضغط على زر الويندوز + سهم يمين . بحيث تكون النافذتين جنب بعض عشان نتأمل في جمالهم وهما جنب بعض كدا زي عريس وعروسة .. في محرر الأكواد : هندرج موديول جديد أو مش شرط .. وفي الإكسيل هنروح للتبويب Developer طبعا خلاص عرفنا إزاي نوصله ونضغط على Record Macro قبل ما نضغط منستعجلش نبص الأول على الشكل المرفق مع الأمر هنلاقي علامة دايرة حمرا ولو ركزنا في شريط الحالة اللي في أسفل تطبيق الإكسيل هنلاقي نفس العلامة .. معنى كدا إن تسجيل الماكرو متاح في التبويب وفي شريط الحالة (أضف إلى معلوماتك) لما نضغط عليه هنلاقي نافذة طلعت لنا بنسجل فيها اسم الماكرو واتعرفنا شروط الاسم ..وممكن نعمله اختصار وأنا مش بحب الحركة دي لأن الإكسيل ملياااااااااان اختصارات فممكن يحصل تعارض ما بين اختصارات الإكسيل والاختصار اللي سيادتك هتعمله .. إحنا شوية وهنتعلم إزاي نربط الكود بزر لتشغيله من داخل الإكسيل أو ورقة العمل أفضل. وبعدين بيقولك هتخزنه فين وأنا أفضل تتركه زي ما هو This Workbook لو فتحت القايمة دي هتلاقي فيه مصنف باسم Personal.XLSB ودا بيكون مكانه في البارتشن C: وبيكون مخفي وممكن تظهره عن طريق التبويب View ثم Unhide هتلاقي اسم المصنف موجود ممكن تظهره ..أنا بقا لا أحب أظهره ولا أخفيه أنا بحذفه عشان بيضايقني بظهوره في محرر الأكواد في نافذة المشروع .. دا مجرد ارتياح شخصي وطبعا إنت ليك كامل الحرية في حذفه أو عدم حذفه عشان ممكن شركة مايكروسوفت تزعل مني عموما المصنف دا لزمته ايه .. المصنف معمول إنك تخزن فيه الأكواد الخاصة بك عشان تقدر تنفذها في أي مصنف مفتوح بدون إدراج الكود مرة أخرى (بس يا سلام بقا لو أكوادك كلها اللي بتستعملها محفوظة فيه ومعندكش منها نسخة تانية وفجأة الكهربا تقطع ودا مبيحصلش كتير في مصر والحمد لله تلاقي الويندوز سقط والحمد لله أكوادك في خبر كان ) عموما هي ميزة بس أنا شايفها مش ميزة .. بالنسبة لمسار المصنف دا بيكون في : C:\Users\Administrator\AppData\Roaming\Microsoft\Excel طبعا Administrator دا اسم المستخدم بيختلف من جهاز للتاني .. روح للمسار ده هتلاقي المصنف احذفه وريح بالك (ليك مطلق الحرية) أنا طبعا شرحته بالتفصيل أهو رغم إني مش بستخدمه بس عشان محدش يقول إني قصرت ... آخر حاجة وصف الكود واللي هتكتبه هنا هيظهر لك على شكل تعليق .. بصراحة دي بقا رغم إن فيه كتير بيطنشها بس أنا شايف إنها مهمة .مهم جدا توثق أكوادك بتعليقات عشان تقدر بعد فترة لو حبيت تعدل على الأكواد تكون الأمور واضحة بالنسبة لك .. هتقولي أنا اللي كاتب الكود وحافظ كل كبيرة وصغيرة فيه ... يتهيأ لك والله أنا ساعات أندمج في كتابة كود بشكل معين وبعد فترة أحتاج للكود تاني أقوم أروح للكود الاقي نفسي تايه رغم إني أنا اللي كاتبه ومطبقه قبل كدا .. التوثيق مهم صدقوني .. المهم بيظهر التعليق في الكود بلون أخضر .. طيب إزاي أعمل تعليق طبعا بيكون بالضغط على ' طبعا اللي نظرهم ضعيف مشافوش .. لما يكون اتجاه الكتابة إنجليزي نضغط حرف الطاء اللي بعد العلامة دي بيتم تجاهله تماما يعني متقلقش مش هيتنفذ الأمر لو كان قبله علامة ' دي .. جمد قلبك واضغط أوك هتبدأ عملية التسجيل (وطبعا مننساش المايك والكاميرا يكونوا راكبين في الجهاز وكله تمام بس المشكلة إننا مش محتاجينهم اخلعهم تاني يا مراد بلاش وجع قلب) اضغط أوك ولاحظ علامة التسجيل اللي قلنا عليها من بدري هنلاقيها اتغيرت لشكل مربع صغير لونه أزرق اللي هو دليل إن التسجيل شغال .. العلامة موجودة زي ما قلنا في التبويب وفي شريط الحالة كمان (بيل جيتس مش حارمنا من حاجة أبداً) طيب واحد هيقولي خلص ابدأ تسجيل عشان الوقت هيتحسب في التسجيل هقوله متقلقش التسجيل بيكون لكل حركة إنت بتعملها ملهاش علاقة بالوقت ... طيب نعمل ايه ؟ فكروا معايا أنا بحاول الاقي فكرة .. قول إنت يا جمال .. جمال رد وقال : حدد الخلية اللي فيها اسمي وخلي المحاذاة لليمين .. الخلية اللي فيها اسم جمال هي A3 مثلا ننقر عليها بزر الماوس الأيسر (تعليم تقليدي) يا عم حدد الخلية بس خلاص وبعدين من التبويب Home نعمل محاذاة لليمين (اللي ميعرفش يسأل اللي جنبه) نسيت أقولكم على أهم حاجة (منك لله يا جمال نسيتني كنت عايز أقول ايه) .. عنينا وإحنا نسجل على محرر الأكواد (إنتو نسيتو إن النافذتين مفتوحتين ولا ايه ) عشان نشوف سعادته شغال إزاي .. نبدأ تاني نحدد الخلية A3 واحد هيقولي مفيش حاجة حصلت هقولك عشان إنت واقف في المكان الغلط .. لما بنيجي نسجل الماكرو بيتم إضافة موديول جديد يعني ارجع تاني خطوة لورا واضغط على موديول 2 اللي تم إدراجه من غير ما تاخد بالك.. دبل كليك عليه عشان تتابع من الأول .. معلش يا جماعة أنا مركز على حكاية المتابعة دي عشان تقدروا تستفيدوا من التسجيل نحدد الخلية A3 هوب اقف عندك Range("A3").Select السطر دا اتكتب لوحده يا سلام سلام دا أحلى كلام ولا في الأحلام .. بيكتب لوحده يا عمر .!! طيب نحدد خلية تانية هنلاقي السطر اللي فات اتغير وأصبح A4 ايه الحكاية هي الأسطر مش بتفضل ثابته .. أقولك آه بتفضل ثابتة لكن الشغل بيكون على خلايا محددة يعني إنت حددت A3 وبعد شوية غيرت رأيك وحددت A4 هتلاقي محرر الأكواد غير رأيه عشان مينفعش يشتغل على اتنين في نفس الوقت إلا إذا حددتهم مع بعض نروح للتبوبيب Home وركز عينك على محرر الأكواد هتلاقي With Selection .HorizontalAlignment = xlRight .VerticalAlignment = xlCenter .WrapText = False .Orientation = 0 .AddIndent = False .IndentLevel = 0 .ShrinkToFit = False .ReadingOrder = xlContext .MergeCells = False End With كل دا تم إضافته لما دوست على محاذاة لليمين .. طيب جرب بقا إنت اعمل شوية تنسيقات هتلاقي الدنيا بقت هيصة .. طبعا دا كله ميلزمناش أقصد الأسطر الكتير دي كلها أنا يهمني المفيد وبس ..يعني ممكن أختصر الكود اللي فات أقولك آه وبسطر واحد بس مش بدا كله بالشكل ده Range("A3").HorizontalAlignment = xlRight شفتوا بقا إني أشطر من التسجيل .. طبعا دا اللي يأكد كلامي في الأول إنه مينفعش نستخدم التسجيل بشكل دائم وبردو منستغناش عنه ..طيب ايه الفايدة إننا بندور على اللي يهمنا ونبدأ نكتبه بطريقتنا .. طبعا اتعلمنا إزاي نشير إلى الكائن Range بنفتح بعديه قوس وعلامة تنصيص ومننساش بردو نفس القفلة بس علامة التنصيص الأول وقفلة القوس ..معلش أصل الجو برد شوية عليه.. بعد كدا بنتبعه بنقطة ونكتب الخاصية Property طبعا خلاص استوعبتوها كويس HorizontalAlignment معناها محاذاة أفقية وطبعا قلنا إن الخاصية بيتحدد ليها قيمة وهنا القيم معروفة المحاذاة بتكون إما لليمين (ربنا يجعلنا من أهل اليمين) XlRight وإما توسيط وإما محاذا لليسار XlCenter (واحد متوقع إني هقول ربنا لا يجعلنا من أهل الشمال .. بس أنا هكسفه ومش هقولها) XlLeft >> أظن كدا بقا الكود واضح .. يعني التسجيل اللي اتعمل في 12 سطر (أراهن فيه ناس هتعد ورايا) عملناه في سطر واحد ..بس أنا استفدت ايه إني أقدر أطلع الكلمات اللي عايزاها وأشكلها زي ما أنا عايز .. يعني خلاصة الكلام في الحلقة دي إحنا اشتغلنا خبازين (خدنا العجينة اللي هي الماكرو المسجل .. وشكلناها بمهارة عشان تقدر تطلع بالشكل اللي إحنا عايزينه ) وإلى لقاء مع رغي جديد .. الواجبات : قم بتسجيل ماكرو حدد فيه النطاق من A1:B10 وخلي نوع الخط أي نوع ترغبه وحجم الخط 14 ولون الخط أزرق بلاش الأحمر عشان واحد هيقولي ايه حكايتك مع اللون الأحمر وخلي عريض Bold يعني وخلي المحاذاة الأفقية توسيط .. وطبعا اللي هيجيب الواجب تسجيل ماكرو مش هقبله منه .. أنا عايزك تختصر الأسطر الكتير اللي هتظهرلك في أسطر قليلة ... في رعاية الله كان معكم أخوكم أبو البراء من فرن أوفيسنا (يلا ورورني مين هياكل العيش طازة)
    1 point
  42. اولا يجب عمل تكامل مرجعي بين الجدولين في خصائص العلاقة وليس هذا سببا في عدم تمكنك من تطبيق الحل وانما السبب هو لا بد من وضع معيار في استعلام المعاهد ( انظر المعيار في استعلام مربع المعاهد ) + تحديث مربع المعاهد بعد كل اختيار في مربع الادارات ( انظر صفحة المحرر ) انظر المرفق التوجيه3.rar
    1 point
  43. السلام عليكم أما بالنسبة لملفك :: إذا أردت أن يتم تنفيذ الماكرو عند الخلية النشطة فقم بتقعيل الخيار Use Relative References قبل تسجيل الماكرو وسيعمل كما تريد إن شاء الله أما بالنسبة لبرنامج تسجيل مايدور على الشاشة فإليك إياه في المرفقات أخوك أبو البراء Screen_EXE.rar
    1 point
  44. عفوا على التأخير إخواني MyWork.rar
    1 point
  45. بالنسبة للواجب السؤال الأول : مساحة الدائرة = ط * نق² Function CircArea(nq) Const t = 3.14159265358979 'or 22/7 CircArea = nq * nq * t End Function حيث nq هى نصف قطر الدائرة و تم تثبيت قيمة "ط" بالقيمة 3.14159265358979 من خلال الثابت t لم أعرف كيف أقوم بعمل التربيع مباشرة دون ضرب القيمة فى نفسها السؤال الثانى : تم تسمية النطاق A1:E10 فى ورقة العمل Sheet1 بالإسم Report تم تحديد النطاق المسمى بـ Report الخلية B1 هى الخلية النشطة أو الخلية المظللة تم إدخال النص Khalil فى الخلية E10 سيتم ظهور مربع حوار يشتمل على القيمة المدخلة فى الخلية E10 والتى تم ربطها بالمتغير X أتمنى أن تكون إجابتى صحيحة هذه أول مرة أقوم بكتابة دالة بنفسى
    1 point
  46. السلام عليكم ورحمة الله وبركاته الأخ الحبيب أيمن بدر جزاكم الله خيراً على هذا التشجيع وأرج أن ينضم إلينا كثير من الأعضاء حتى تعم الفائدة أخي وحبيبي أبو عبد الرحمن المقدسي يبدو أنك من أكثر المواظبين على هذه الدورة ، شكلك ناوي تجيب امتياز أما بالنسبة للبهارات خايف تكون كتير تقوم الناس يجيلها إمساك وساعتها بدل ميدعولي حيدعو عليا أتمنى أن يكون الدرسين نالوا إعجابكم واستفدتم منهما وتكون عملية الاقتحام إلى ذلك العالم الشيق الممتع تمت بسلام إليكم الصاروخ الثالث أقصد الدرس الثالث ( الفصل الأول _ الجزء الثالث ) كان فيه مثال مرفق بس أنا نسيت أحمله على الفلاشة ، وأوعدكم بكرة حيكون المثال معي إن شاء الله ChapterOne_3.rar ChapterOne_C.rar
    1 point
  47. السلام عليكم ورحمة الله أعلم أني قد تأخرت عليكم وها أنا أبدأ معكم دورتنا المتواضعة إليكم الجزء الأول من الفصل الأول ، وأسأل الله أن ينفعنا به ChapterOne_1.rar
    1 point
×
×
  • اضف...

Important Information