اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

Foksh

أوفيسنا
  • Posts

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

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

  • Days Won

    179

Community Answers

  1. Foksh's post in تعيين مكان الميلاد عن طريق نموذج فرعي was marked as the answer   
    في الكومبوبوكس "Wil_Miled" قمت كتجربة بتغيير الحدث بعد التحديث من :-
    Me.Com_Miled.Requery ليصبح في النموذج الفرعي F2_Sub كالتالي ( كتجربة ) :-
    Private Sub Wil_Miled_AfterUpdate() If Not IsNull(Me.Wil_Miled) Then Me.Com_Miled.RowSource = _ "SELECT TblWsub.ID, TblWsub.N_C, TblWsub.Code_W " & _ "FROM TblWsub " & _ "WHERE TblWsub.Code_W = " & Me.Wil_Miled & " " & _ "ORDER BY TblWsub.N_C;" End If End Sub وكانت النتيجة كالتالي :-

     
    إلا أنني غير راضٍ عن الفكرة 😢 . رغم أن أحد التقويض في الحلول هو أن النماذج الفرعية = نماذج مستمرة !!!!
     
  2. Foksh's post in إدراج نص داخل نص بموضع معين من خلال النقر على زر was marked as the answer   
    تمام اخي الكريم ..
    بداية وحتى تتوضح فكرتي بالتنفيذ ، سنعتمد على حدث عند النقر لمربع النص NASSbox . بحيث نتعرف على موقع المؤشر من خلال ما يلي :-
    في مديول ، نقوم بحجز المتغير في بداية المديول مع الدالة الرئيسية :- Public cursorPosition As Long Public Sub InsertAtRememberedCursor(ByVal i As String) Dim ctl As Control Set ctl = Forms!Assaker!NASSbox ctl.SetFocus Dim currentText As String currentText = ctl.Text Dim beforeText As String Dim afterText As String Dim insertText As String insertText = vbCrLf & i & "= " beforeText = Left(currentText, cursorPosition) afterText = Mid(currentText, cursorPosition + 1) ctl.Text = beforeText & insertText & afterText ctl.selStart = cursorPosition + Len(insertText) ctl.SelLength = 0 End Sub  
    الآن في النموذج وفي حدث عند النقر على مربع النص المستهدف :- Private Sub NASSbox_Click() DoEvents cursorPosition = Me.NASSbox.selStart End Sub ثم في حدث عند النقر للأزرار ، كل زر ليقوم بإضافته الخاصة به داخل النص ، من خلال الإستدعاء التالي لها :- Private Sub insert1_Click() Call InsertAtRememberedCursor("1") End Sub Private Sub insert2_Click() Call InsertAtRememberedCursor("2") End Sub Private Sub insert3_Click() Call InsertAtRememberedCursor("3") End Sub وبالتالي ، تكون النهاية كما رأيت في الصورة السابقة .
    المرفق :-
    Assaker.zip
  3. Foksh's post in ⭐ هدية ~ مرسال الواتس أب الجديد 2025⭐ محدّث 4.0 was marked as the answer   
    تحديثات وإضافات جديدة لواجهة الأداة 👍 .

     
     إضافة و تحسين فكرة إضافة الأسماء ، مع التحكم الكامل . بحيث عند الارسال الى رقم غير مسجل مسبقاً في جهات الاتصال فسيتم اضافته الى جهات الإتصال باسم "غير معروف" ، ولك حرية التعديل لاحقاً .

     
     إضافة ميزة الإرسال للمجموعات التي لديك في الواتس اب . من خلال رابط المجموعة فقط  . وطبعاً يمكنك إضافة مجموعاتك من خلال النموذج :-

     
     إضافة ميزة إمكانية تعديل إسم ( في حال الخطأ ) من خلال النقر المزدوج عليه . أو من خلال النموذج الخاص بإضافة جهات الإتصال . وكذلك الأمر للمجموعات .
     تحسين فكرة الأرقام المحلية بحيث عند تحديد البلد الإفتراضي في جدول الإعدادات ( Tbl_SendSettings ) في الحقل السجل "DefaultCountryCode" ستتمكن الأداة من الارسال له دون الحاجة لكتابة مفتاح الدولة .
     في جدول الإعدادات ( Tbl_SendSettings ) ، لك كمبرمج أو مستخدم كامل الصلاحيات بتقييد المستخدم ( لاحقاً ) بأنواع المرفقات ، أو استخدام / منع استخدام التعبيرات أو الإيموجي ؛ أو تقييد حجم الملفات من خلال الجدول وليس من خلال الأكواد . إمكانية التحكم بالفاصل الزمني ( المدة الزمنية للإنتظار بين الرسالة والثانية عند الإرسال الجماعي لجهات اتصال متعددة أو أرقام متعددة ).. إلخ .
     إضافة ميزة حجب رقم أو جهة اتصال / مجموعة من الإرسال لها من خلال التفعيل عند الإضافة كما في الصورة الأخيرة سابقاً لواجهة إضافة مجموعة جديدة .
     
     ملف التحديث بالنسخة الأخيرة له مفتوح المصدر ، ما لم يطرأ أي تعديلات أو إضافات لاحقاً  
     
    WhatsApp Sender - V4.0.accdb.zip
  4. Foksh's post in ⭐ هدية ~ أداة تحويل ملفات PDF متعددة الوظائف 2025⭐ was marked as the answer   
    Converter 64.zip
     

    Converter 32.zip
     
  5. Foksh's post in ⭐ هدية ~ تثبيت لغة لوحة المفاتيح في ويندوز ⭐ was marked as the answer   
    تحديث للفكرة السابقة بحيث تم تحديث معالجة أخطاء التوافق مع بعض إصدارات ويندوز 10 فما فوق .
    attrib +r "%~f0" @echo off title Save My Layout Keyboard. Created By Foksh - 2025 mode con:cols=75 lines=35 setlocal enabledelayedexpansion for /f %%a in ('echo prompt $E^| cmd') do set "ESC=%%a" set "blue=%ESC%[1;34m" set "green=%ESC%[1;32m" set "cyan=%ESC%[1;36m" set "red=%ESC%[1;31m" set "yellow=%ESC%[1;33m" set "magenta=%ESC%[1;35m" set "reset=%ESC%[0m" echo. echo %blue%***************( Officena.Net )***************%reset% echo %green%*** ***%reset% echo %cyan%*** %yellow%FFFFF%red%F %magenta%OOO %blue%KK KK %green%SSSS %cyan%HH HH %cyan%***%reset% echo %yellow%*** %red%FF %magenta%O O %blue%KK KK %green%SS %cyan%HH HH %yellow%***%reset% echo %red%*** %magenta%FFFFF %blue%O O %green%KKK %cyan%SS %yellow%HHHHHH %red%***%reset% echo %magenta%*** %blue%FF %green%O O %cyan%KK KK %yellow%SS %red%HH HH %magenta%***%reset% echo %blue%*** %green%FF %cyan%OOO %yellow%KK KK %red%SSSSS %magenta%HH HH %blue%***%reset% echo %green%*** ***%reset% echo %cyan%********************%yellow%2 %red%0 %magenta%2 %blue%5%cyan%*******************%reset% echo. echo Select the Arabic country to add its keyboard layout: echo 1 - Egypt echo 2 - Saudi Arabia echo 3 - Jordan echo 4 - Iraq echo 5 - Morocco echo 6 - UAE echo 7 - Syria echo 8 - Lebanon echo 9 - Tunisia echo 10 - Algeria echo 11 - Kuwait echo 12 - Bahrain echo 13 - Oman echo 14 - Qatar echo 15 - Libya echo 16 - Sudan echo 17 - Yemen echo X - Remove startup task set /p choice=Enter the number of your choice (1-17) or 'X': if /i "%choice%"=="X" ( echo. echo Removing startup task... schtasks /Delete /TN "KeyboardShutdownFix" /F 2>nul del "%APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup\KeyboardFix.bat" 2>nul del "%APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup\RunHidden.vbs" 2>nul echo Startup task removed successfully! echo. echo Closing automatically in: timeout /t 1 /nobreak >nul & echo 3... timeout /t 1 /nobreak >nul & echo 2.. timeout /t 1 /nobreak >nul & echo 1. exit /b ) set "localeID=" set "localeName=" if "%choice%"=="1" set localeID=00000C01& set localeName=ar-EG if "%choice%"=="2" set localeID=00000401& set localeName=ar-SA if "%choice%"=="3" set localeID=00002C01& set localeName=ar-JO if "%choice%"=="4" set localeID=00000801& set localeName=ar-IQ if "%choice%"=="5" set localeID=00001801& set localeName=ar-MA if "%choice%"=="6" set localeID=00003801& set localeName=ar-AE if "%choice%"=="7" set localeID=00002801& set localeName=ar-SY if "%choice%"=="8" set localeID=00003001& set localeName=ar-LB if "%choice%"=="9" set localeID=00001C01& set localeName=ar-TN if "%choice%"=="10" set localeID=00001401& set localeName=ar-DZ if "%choice%"=="11" set localeID=00003401& set localeName=ar-KW if "%choice%"=="12" set localeID=00003C01& set localeName=ar-BH if "%choice%"=="13" set localeID=00002001& set localeName=ar-OM if "%choice%"=="14" set localeID=00004001& set localeName=ar-QA if "%choice%"=="15" set localeID=00001001& set localeName=ar-LY if "%choice%"=="16" set localeID=00002C01& set localeName=ar-SD if "%choice%"=="17" set localeID=00002401& set localeName=ar-YE if not defined localeID ( echo. echo Invalid selection. Exiting... timeout /t 3 /nobreak >nul exit /b ) echo Applying keyboard settings immediately... reg delete "HKCU\Keyboard Layout\Preload" /f >nul 2>&1 reg delete "HKCU\Keyboard Layout\Substitutes" /f >nul 2>&1 reg add "HKCU\Keyboard Layout\Preload" /v 1 /t REG_SZ /d 00000409 /f >nul 2>&1 reg add "HKCU\Keyboard Layout\Preload" /v 2 /t REG_SZ /d %localeID% /f >nul 2>&1 reg add "HKCU\Keyboard Layout\Substitutes" /v %localeID% /t REG_SZ /d %localeID% /f >nul 2>&1 set psFile=%TEMP%\UpdateLang.ps1 echo $langList = Get-WinUserLanguageList > "%psFile%" echo $langList.Clear() >> "%psFile%" echo $langList.Add("en-US") >> "%psFile%" echo $langList.Add("%localeName%") >> "%psFile%" echo Set-WinUserLanguageList $langList -Force >> "%psFile%" powershell -ExecutionPolicy Bypass -File "%psFile%" >nul 2>&1 set "choiceBat=%APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup\KeyboardFix.bat" set "vbsFile=%APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup\RunHidden.vbs" ( echo @echo off echo mode con:cols=75 lines=12 echo setlocal enabledelayedexpansion echo for /f %%%%a in ^('echo prompt $E^^^| cmd'^) do set "ESC=%%%%a" echo set "blue=%%ESC%%[1;34m" echo set "green=%%ESC%%[1;32m" echo set "cyan=%%ESC%%[1;36m" echo set "red=%%ESC%%[1;31m" echo set "yellow=%%ESC%%[1;33m" echo set "magenta=%%ESC%%[1;35m" echo set "reset=%%ESC%%[0m" echo echo. echo echo %%blue%%**********************************************%%reset%% echo echo %%green%%*** ***%%reset%% echo echo %%cyan%%*** %%yellow%%FFFFF%%red%%F %%magenta%%OOO %%blue%%KK KK %%green%%SSSS %%cyan%%HH HH %%cyan%%***%%reset%% echo echo %%yellow%%*** %%red%%FF %%magenta%%O O %%blue%%KK KK %%green%%SS %%cyan%%HH HH %%yellow%%***%%reset%% echo echo %%red%%*** %%magenta%%FFFFF %%blue%%O O %%green%%KKK %%cyan%%SS %%yellow%%HHHHHH %%red%%***%%reset%% echo echo %%magenta%%*** %%blue%%FF %%green%%O O %%cyan%%KK KK %%yellow%%SS %%red%%HH HH %%magenta%%***%%reset%% echo echo %%blue%%*** %%green%%FF %%cyan%%OOO %%yellow%%KK KK %%red%%SSSSS %%magenta%%HH HH %%blue%%***%%reset%% echo echo %%green%%*** ***%%reset%% echo echo %%cyan%%********************%%yellow%%2 %%red%%0 %%magenta%%2 %%blue%%5%%cyan%%*******************%%reset%% echo echo. echo setlocal enabledelayedexpansion echo setlocal enabledelayedexpansion echo set "localeID=%localeID%" echo set "localeName=%localeName%" echo reg delete "HKCU\Keyboard Layout\Preload" /f ^>nul 2^>^&1 echo reg delete "HKCU\Keyboard Layout\Substitutes" /f ^>nul 2^>^&1 echo reg add "HKCU\Keyboard Layout\Preload" /v 1 /t REG_SZ /d 00000409 /f ^>nul 2^>^&1 echo reg add "HKCU\Keyboard Layout\Preload" /v 2 /t REG_SZ /d !localeID! /f ^>nul 2^>^&1 echo reg add "HKCU\Keyboard Layout\Substitutes" /v !localeID! /t REG_SZ /d !localeID! /f ^>nul 2^>^&1 echo powershell -ExecutionPolicy Bypass -Command ^ "$langList = Get-WinUserLanguageList; $langList.Clear(); $langList.Add('en-US'); $langList.Add('!localeName!'); Set-WinUserLanguageList $langList -Force" ^>nul 2^>^&1 echo exit ) > "%choiceBat%" echo Set WshShell = CreateObject("WScript.Shell") > "%vbsFile%" echo WshShell.Run "cmd /c call ""%choiceBat%""", 0, False >> "%vbsFile%" echo. echo Keyboard settings applied successfully! echo. echo English (US) set as default. echo Arabic layout for selected country added as secondary. echo. echo A silent startup script has been created for your selection. echo. echo Closing automatically in: timeout /t 1 /nobreak >nul & echo 3... timeout /t 1 /nobreak >nul & echo 2.. timeout /t 1 /nobreak >nul & echo 1. exit /b  

     
    Foksh Layout V2.zip
  6. Foksh's post in ⭐ هدية ~ مراقب لوحة المفاتيح ومنع إضافة لغات مدمجة من ملفات اكسيس ⭐ was marked as the answer   
    أخواني وأساتذتي ومعلمينا ( دون استثناء )
    بعد محاولات في فهم المشكلة التي أرّقت الكثيرين من مستخدمي آكسيس ( مطورين ومبرمجين أو مستخدمين عاديين ) ، كنا نلاحظ أنه ومع تحديد لغة إدخال عربية لعناصر مثل مربعات النص أو غيرها . فأن آكسيس يقوم بإجبار الويندوز على إضافة لغة لوحة مفاتيح خاصة بالعربية التي تم إنشاء قاعدة البيانات عليها . وقد قمت بطرح فكرة بسيطة تقليدية مبنية على باتش يعمل بتحديد اللغة العربية التي يريدها المستخدم حسب دولته في هذا الموضوع تثبيت لغة لوحة المفاتيح في ويندوز . إلى أن تم فهم آلية آكسيس وعلاقته المتينة في الذاكرة التي يحجزها عند تشغيله ؛ فيتعامل معها كمساحته الخضراء داخل ويندوز ويفعل بها ما يحلو له .
    ولكن وبفضل الله تم كسر هذه المساحة الخضراء وجعلها مساحة خضراء مزروعة بحصريات منتديات أوفيسنا  . الفكرة أداة تعمل عند حسب رغبتك عزيزي القارئ ( مع الويندوز أو بشكل يدوي ) تقوم على مراقبة تخطيطات لوحات المفاتيح الحالية ، وبالتالي لا تسمح لأي برنامج بأن يقوم بالتعديل عليها كيفما يشاء دون الحاجة إلى الخروج من النظام أو اغلاق آكسيس أو حتى التدخل والتعديل في مشاريع آكسيس الموجودة .
     
    لنتعرف أولاً على شكل و واجهة الأداة :-

     
    شرح ما تفعله الأداة بمكوناتها :-
     :-
    هذا الجزء سيعرض لك لغات لوحات المفاتيح التي تم تثبيتها في جهازك .
       :-
    هذا الزر وظيفته إزالة اي تخطيط تحدده في القائمة السابقة .
       :-
    هذا الزر وظيفته إخفاء مراقب لوحات المفاتيح بجوار الساعة .
       :-
    السماح للتطبيق بالعمل عند تشغيل ويندوز .
       :-
    مساحة مخصصة لعرض الأحداث .  
    ✔ صورة توضيحية لعمل الأداة :-

     
    ✔ لإجراءاتكم في التجربة 
     
    AccessLayoutMonitor.zip
  7. Foksh's post in ⭐ هدية ~ مزيل التكرارات الذكي 2025⭐ - تحديث جديد was marked as the answer   
    تم تحديث الأداة ، بشكل بسيط بإضافة فلترة لإزالة التكرارات بناءً على شرط الأكبر أو الصغر . بحيث يتم إزالة جميع التكرارات وإبقاء القيمة الأكبر أو الأصغر للحقول الرقمية أو حقول التاريخ .
    فقط اختر الجدول ، ثم الحقل المستهدف للفلترة ، ثم قيمة الشرط للحقل الأخير الذي لن يتم حذفه .
     

     
     
     
    Smart Fillter.accdb
  8. Foksh's post in حول الاحصائيات والرسوم البيانية was marked as the answer   
    ماذا لو أضفنا الحقل Mhr_id داخل الإستعلام ، وجعلناه مخفياً غير ظاهر واعتمدنا ترتيب قيمه تصاعدياً ، هكذا !!

     
     
    Database4.zip
  9. Foksh's post in مشكلة في جمع حقول was marked as the answer   
    هل هذا ما تريده ؟؟

     
     
    اوفسنا.zip
  10. Foksh's post in ما سبب ظهور ALike بدلا من like في معيار الاستعلام was marked as the answer   
    وعليكم السلام ورحمة الله وبركاته ..
    معلمنا الفاضل ، أسعد الله مسائك . قد مررت بهذا السؤال مسبقاً وكنت لا أعلم سببه ، ولكني اكتشفت السبب بالصدفة 😅 موضحاً في الصورة التالية :-

     
    وأعتقد أن السبب في هذا يعود الى أن الجداول مرتبطة بـ SQL Server أو قاعدة بيانات خارجية . والمرجح عندي سابقاً لأنني كنت أقوم بتثبيت نسختين من أوفيس ( 64 بلإصدار أعلى = 2019 ، و 32 بإصدار 2010 ) فقد يكون هو أحد الأسباب . مع أنني غير متأكد من الإحتمال الثاني حقيقةً .
     
    هذا والله أعلم 
  11. Foksh's post in رسائل التنبيه لاتظهر اللغة العربية was marked as the answer   
    اقرأ هذه الموضوع
     
     
  12. Foksh's post in توزيع الوقت على الموظفين مابين فتره زمنية محدد was marked as the answer   
    وعليكم السلام ورحمة الله وبركاته ..
    بما أن الأستاذ @منتصر الانسي قد فتح باب المشاركات مع المعلم @ابوخليل ، اسمحولي أشارك بفكرة ثانية ..
    حيث أمكنت المستخدم من التوزيع العشوائي أو المتسلسل 
     
     
    ED.zip
  13. Foksh's post in اريد معادلة تدرج الاسماء في جدول 2 الغير موجودة في الجدول المقابل رقم 1 بالاعتماد على قائمة الاسماء was marked as the answer   
    وعليكم السلام ورحمة الله وبركاته ..
    استخدم هذه المعادلة كفكرة مبدأية في الخلية O3 ، ثم اسحب للتطبيق حتى X3 ( في نطاق الجدول 2 )
    =IFERROR(INDEX($B$3:$B$22,AGGREGATE(15,6,ROW($B$3:$B$22)-ROW($B$3)+1/(COUNTIF($E$3:$N$3,$B$3:$B$22)=0),COLUMNS($O$3:O3))),"")  
    جرب وأخبرنا بالنتيجة 
  14. Foksh's post in استعلام يجمع وقت الحضور ووقت الاتصراف في صف واحد was marked as the answer   
    وعليكم السلام ورحمة الله وبركاته ..
    باعتقادي أن الطريقة التي تم تسجيل فيها وقت الحضور ، و وقت الخروج لكل موظف هي بحد ذاتها غير سليمة ( لم أقل غير صحيحة ) . فالأصل ان يتم تسجيل الحضور والخروج بشرطين . رقم الموظف وتاريخ اليوم . هذا اذا كان الموظف لا يسجل حضور في تاريخ ويسجل خروج في تاريخ اليوم التالي ( كأن يكون هناك شفت أو وردية ليلية ) .
    ولكن لتلبية طلبك ، جرب هذا الاستعلام :-
    SELECT T1.emp_name AS [اسم الموظف], T1.emp_ID AS السجل, T1.StartDate AS التاريخ, T1.StratTime AS [وقت الدخول], (SELECT EndTime FROM Tbl1 WHERE emp_ID = T1.emp_ID AND StartDate = T1.StartDate AND EndTime IS NOT NULL) AS [وقت الخروج], Format(DateDiff("n",T1.StratTime,(SELECT EndTime FROM Tbl1 WHERE emp_ID = T1.emp_ID AND StartDate = T1.StartDate AND EndTime IS NOT NULL))\60,"00") & ":" & Format(DateDiff("n",T1.StratTime,(SELECT EndTime FROM Tbl1 WHERE emp_ID = T1.emp_ID AND StartDate = T1.StartDate AND EndTime IS NOT NULL)) Mod 60,"00") AS [عدد ساعات العمل] FROM Tbl1 AS T1 WHERE (((T1.StratTime) Is Not Null));  
    عذراً ، معلمي الفاضل @ابوخليل ، صدقاً لم أنتبه الى ردك ، حيث كنت في الصفحة ولم ألحظ الإشعار بوجود رد ..
    لكن ما قمت بطرحه وهو جوهر السبيل الصحيح فقد كان تلخيصاً لخبرتك التي نتعلم منها فعلاً ..
  15. Foksh's post in من الرقم القومى مطلوب استعلام تحديث لكتابة تاريخ الميلاد فى حقل آخر was marked as the answer   
    سؤال جميل ..
    بعد الإطلاع على الوحدة النمطية ، جرب هذا الاستعلام باستدعاء الدالة :-
    UPDATE tbl_student1 SET Birth = Date_Sex_Province([National_Nr], 1) WHERE Len([National_Nr]) = 14 AND IsDate(Date_Sex_Province([National_Nr], 1));  
  16. Foksh's post in مساعدة في الذهاب إلى مواضع معينة في القائمة (ListBox) was marked as the answer   
    ولا يهمك ،، الأمر مختلف قليلاً فعلاً ، ولكن ليس بالتعقيد الذي تعتقده
    للإنتقال لأول قيمة في الليست بوكس :-
    If Me.Msaneed_List.ListCount > 0 Then Me.Msaneed_List.Value = Me.Msaneed_List.ItemData(0) End If  
    وللإنتقال لآخر قيمة في الليست بوكس :-
    If Me.Msaneed_List.ListCount > 0 Then Me.Msaneed_List.Value = Me.Msaneed_List.ItemData(Me.Msaneed_List.ListCount - 1) End If  
  17. Foksh's post in تعديل كود حفظ وثائق خارج قاعدة البيانات was marked as the answer   
    في أصل الكود لديك لا يقوم على استخدام الملف مرتين ويقوم بالإستبدال ، ومنطقياً غير مسموح بحفظ ملفن لهم نفس الاسم والامتداد في مكان واحد ، لذا سيتم تمييز الجديد برقم على سبيل المثال . اذا هذا يناسبك أخبرني .
    سنتوجه بفكرة وهي انه عندما تختار لاحقاً ملفات لها نفس الاسم في المجلد سيخبرك انه ملفات قديمة بنفس الاسم هل ترغب بإضافتها أو تخطيها ( ما رأيك ؟)
     
    وهذا أفضل فعلاً بأن تقوم باستعراض المجلد وليس الملفات كما كانت في فكرتك السابقة ..
     
     
    جرب التعديل التالي لما سبق توضيحة ..
    baseA1.zip
  18. Foksh's post in دمج قيم حقل في نموذج مستمر داخل مربع نص was marked as the answer   
    حسناً ..
    سأقدم لك حلين اثنين ، ولربما سيكون هناك حلول أخرى من الأخوة والساتذة والمعلمين ..
    الأول :-
    باستخدام الدالة البسيطة التالية :-
    Public Function Foksh_TXTK1() As String Dim rs As DAO.Recordset Dim result As String Set rs = CurrentDb.OpenRecordset("SELECT TXTK1 FROM Tablek WHERE TXTK1 Is Not Null", dbOpenSnapshot) Do While Not rs.EOF If rs!TXTK1 <> "" Then result = result & rs!TXTK1 & " , " End If rs.MoveNext Loop If Len(result) > 3 Then result = Left(result, Len(result) - 3) End If Foksh_TXTK1 = result rs.Close Set rs = Nothing End Function مع استخدام استعلام ليكون مصدر سجلات النموذج ، كمثال :-
    SELECT Tablek.IDK, Tablek.Emp_Code, Tablek.TXTK1, Foksh_TXTK1() AS at_aziz FROM Tablek; لاحظ ان إسم الحقل الأخير (at_aziz) هو من سيعرض القيم ، وسيكون مصدر بيانات مربع النص TXT1 في نموذجك .
     
     
    الثاني :-
    باستخدام دالةبسيطة مشابهة تقريباً :-
    Private Sub Foksh(frm As Form) Dim rs As DAO.Recordset Dim combinedText As String Set rs = frm.RecordsetClone rs.MoveFirst Do While Not rs.EOF If Not IsNull(rs!TXTK1) And rs!TXTK1 <> "" Then If combinedText <> "" Then combinedText = combinedText & " , " End If combinedText = combinedText & rs!TXTK1 End If rs.MoveNext Loop Me.TXT1.Value = combinedText rs.Close Set rs = Nothing End Sub ونستدعيها في حدث "في الحالي - Form_Current" ، بالشكل التالي :-
    Private Sub Form_Current() Foksh Me End Sub  
     
    مرفق الحلين :-
     
    at_aziz.zip
  19. Foksh's post in ارغب بالمجموع برمجيا الملف بالرابط was marked as the answer   
    وعليكم السلام ورحمة الله وبركاته ,,
    جرب اكتب اي قيم رقمية وانقر كلمة يساوي
     
    test.zip
  20. Foksh's post in تعديل كود تحديد رقم الحجرة عند اختيار القسم was marked as the answer   
    وعليكم السلام ورحمة الله وبركاته ..
    هل هذا هو المطلوب فعلاً ؟؟

    فقط هذا الكود في حدث بعد التحديث للشيك بوكس :-
    Private Sub CHK_AfterUpdate() Dim GradeValue As String If Me.CHK = -1 Then Select Case Me.نص74 Case "أولى" GradeValue = "1" Case "ثانية" GradeValue = "2" Case "ثالثة" GradeValue = "3" Case "رابعة" GradeValue = "4" Case "خامسة" GradeValue = "5" Case "سادسة" GradeValue = "6" Case Else GradeValue = Null End Select Me.نص76 = GradeValue Else Me.نص76 = Null End If End Sub  
    sssssssss.zip
  21. Foksh's post in تعديل استعلام يحتوى الدالة Dcount was marked as the answer   
    وعليكم السلام ورحمة الله وبركاته ..
    جرب هذا الاستعلام إن كان ما فهمته صحيحاً ..
    SELECT [1].[n], [1].[عميل], [1].[شراء], [1].[ثمن], (Len([شراء])-Len(Replace([شراء],"-",""))) AS [عدد العلامات] FROM 1;  
    بهذا الشكل ستكون النتيجة :-
     
      n عميل شراء ثمن عدد العلامات 1 احمد - سجاد - مفرش - نجف 550 3 2 سيد - طقم معلق - طقم شتي - صنية - طقم حلل 1000 4 3 منال - طقم مدهب - بطانية 450 2  
     
     
  22. Foksh's post in عند وضع الوحدة النمطية لاخفاء الاكسس يظهر لي خطأ was marked as the answer   
    وعليكم السلام ورحمة الله وبركاته ,,
    مشكلتك في انك مكرر الدوال في 3 مديولات .. فقط احذف المديولين

    hide form
    fSetAccessWindowMared
     
  23. Foksh's post in تحديد الحقل عند الضغط على الزر was marked as the answer   
    وعليكم السلام ورحمة الله وبركاته ,,,
    أخي بلال أسعد الله مساءكم وصباحكم في بلدنا العزيز الجزائر ..
    استخدامك لكلمة ايقونة يسبب الإرباك لك في توصيل المعلومة الصحيحة .. ففي مثالك الإيقونة الحمراء هي في الواقع اسمها زر أو Button . لذا استخدم مسميات العناصر الصحيحة كي تساعد في توصيل المعلومة الصحيحة ..
    بالنسبة لطلبك الأول فيما يتعلق بالزر الأحمر "إعادة" ، وإن كان ما فهمته صحيح .. استخدم هذا الحدث له
    If Me.نص52 = "لا" Then Me.نص52 = "نعم" Else Me.نص52 = "لا" End If  
    أما الطلب الثاني ، فقط قم بإضافة هذا الاستعلام
     
    DoCmd.RunSQL "UPDATE [tblImportExcel] SET [معيد] = 'نعم' WHERE [السنة] = '" & [Forms]![ملفات التلاميذ]![السنة] & "';" بحيث تصبح الجملة الشرطية للرسالة عند اختيار = نعم :
    If MsgBox(Msg, vbQuestion + vbMsgBoxRight + vbYesNo, "تأكيـــــد الإجــــــراء") = vbYes Then DoCmd.RunSQL "UPDATE [tblImportExcel] SET [معيد] = 'نعم' WHERE [السنة] = '" & [Forms]![ملفات التلاميذ]![السنة] & "';" DoCmd.RunSQL "UPDATE [tblImportExcel] Set [السنة]='" & NewYaer & "' where [السنة]=[forms]![ملفات التلاميذ]![السنة];" DoCmd.Requery End If  
    ملفك بعد التعديل 
    تحديد البرنامج1.zip
  24. Foksh's post in نموذج عرض ملفات الصوت was marked as the answer   
    اخي أسعد ..
    افتح الموذج في وضع التصميم ، واضغط Alt + F11 ليتم فتح محرر الأكواد . وستكون الأكواد أمامك كاملةً
  25. Foksh's post in المساعدة فى تعديل ملف اكسل was marked as the answer   
    المصيبة أعظم 😅
    أعتقد توجهك الى بناء جديد يقوم بتخزين في ورقة منفصل جديدة باستخدام سجلات صفوف أفضل من سجلات الأعمدة ( طريقتك الحالية ) .
×
×
  • اضف...

Important Information