بحث مخصص من جوجل فى أوفيسنا
Custom Search
|
-
Posts
2,065 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
51
نوع المحتوي
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو Moosak
-
المساعدة فى جعل مجموعة حقول تعرض قائمة باسماء النماذج
Moosak replied to elghoultk's topic in قسم الأكسيس Access
-
شوقتنا نعرف تفاصيل أكثر عن البرنامج ؟ 😊
-
طريقة الفرز بحروف الأبجدية في الجدول وفي النموذج الفرعي
Moosak replied to سامي سامي الجزائر's topic in قسم الأكسيس Access
وعليكم السلام ورحمة الله وبركاته .. 🙂 في خصائص النموذج .. والنتيجة : وفي خصائص التقرير كذلك .. والنتيجة : ترتيب حسب اللقب.accdb -
هل من الممكن ان اضع نموذج مستمر داخل نموذج مستمر
Moosak replied to Elsayed A Eldiasty's topic in قسم الأكسيس Access
حسب تجربتي خلي النموذج المستمر الفرعي في الفوتر Footer للنموذج المستمر الأب .. واربط بينهم بحقل ال ID مثلا .. وبتلقى أنه النموذج المستمر الفرعي تتغير بياناته كلما انتقلت من سجل لآخر في النموذج المستمر الأب .. 🙂 -
الحل الأسهل ممكن تمد حقل العنوان على عرض التقرير وتنسق النص على (توسيط) .. بيجي معاك في النص دائما 🙂
-
يمكنك التحايل على هذه المشكلة بزرع ملف نصي في الجهاز يكتب فيه تاريخ التنصيب مثلا .. وتكتب أكواد لقراءته والبحث عنه 🙂
-
وعليكم السلام ورحمة الله وبركاته 🙂 لا أعلم طريقة لتكبير الخط .. ولكن كمقترح يمكنك بناء نموذج خاص بك لعرض الرسائل وتتحكم فيه بالحجم والشكل والألوان كما تحب 🙂
-
كود او طريقة لتغيير شكل زوايا مربع النص في تقرير أكسس
Moosak replied to rashed7's topic in قسم الأكسيس Access
وهذا درس يشرح طريقة عمل الشكل البيضاوي في التقرير 🙂 -
دوال برمجية تظليل كلمات البحث في النص الغني Rich Text
Moosak replied to AbuuAhmed's topic in قسم الأكسيس Access
بوركت @AbuuAhmed بقي لك أن تتخلص من رسائل التحديث المزعجة عند كل تحديث يحصل 🙂 وتغيرر هاتين من Long إلى LongPtr لكي تعمل الدالة على النواة 64 بت :- 18 replies
-
- 1
-
كود او طريقة لتغيير شكل زوايا مربع النص في تقرير أكسس
Moosak replied to rashed7's topic in قسم الأكسيس Access
لا تثريب عليك أخي العزيز @أبو إبراهيم الغامدي 😄✋🏻 بالعكس استفدت من طريقتك وتعلمت أسلوب جديد 👍🏼😁 -
دوال برمجية تظليل كلمات البحث في النص الغني Rich Text
Moosak replied to AbuuAhmed's topic in قسم الأكسيس Access
سلمت يمناك أبو أحمد 🙂 استوقفتني هذه الجملة وقد مررت سابقا بموقف مشابه ، والآن مع وجود الذكاء الاصطناعي سألته يعطيني دالتين للتحويل بين أكواد ال RGB وال Hex فما قصر وأعطاني التالي ( بدون تجربة ) 🙂 : '=================== (To convert RGB to Hex:) Function RGBToHex(ByVal red As Integer, ByVal green As Integer, ByVal blue As Integer) As String RGBToHex = "#" & Right("0" & Hex(red), 2) & Right("0" & Hex(green), 2) & Right("0" & Hex(blue), 2) End Function '=================== (To convert Hex to RGB:) Function HexToRGB(ByVal hexCode As String) As Variant Dim red As Integer, green As Integer, blue As Integer If Left(hexCode, 1) = "#" Then hexCode = Right(hexCode, Len(hexCode) - 1) End If red = Val("&H" & Mid(hexCode, 1, 2)) green = Val("&H" & Mid(hexCode, 3, 2)) blue = Val("&H" & Mid(hexCode, 5, 2)) HexToRGB = Array(red, green, blue) End Function '=================== (Here's an example of how you can use these functions:) Sub TestColorConversion() Dim red As Integer, green As Integer, blue As Integer Dim hexCode As String Dim rgbResult As Variant ' Convert RGB to Hex red = 255 green = 0 blue = 128 hexCode = RGBToHex(red, green, blue) Debug.Print "Hex Code: " & hexCode ' Convert Hex to RGB hexCode = "#00FF00" rgbResult = HexToRGB(hexCode) red = rgbResult(0) green = rgbResult(1) blue = rgbResult(2) Debug.Print "RGB: (" & red & ", " & green & ", " & blue & ")" End Sub- 18 replies
-
- 2
-
كود او طريقة لتغيير شكل زوايا مربع النص في تقرير أكسس
Moosak replied to rashed7's topic in قسم الأكسيس Access
لم أجد .. ولم يمر علي سابقا 🙂 حتى الذكاء الاصطناعي عجز عنها 😅 -
كود او طريقة لتغيير شكل زوايا مربع النص في تقرير أكسس
Moosak replied to rashed7's topic in قسم الأكسيس Access
-
تفضل أخي العزيز .. ولزيادة الخير وضعت لك أكواد جميع الإجراءات الأساسية : الإجراءات الإعتيادية للسجلات ( حفظ - جديد - حذف - إضافة - تكرار - التالي - السابق - الأول - الأخير - .....) '===================================== حفظ السجل والذهاب لسجل جديد Private Sub SaveRecBtn_Click() On Error GoTo Err_SaveRecBtn_Click DoCmd.RunCommand acCmdSaveRecord DoCmd.GoToRecord , , acNewRec Exit_SaveRecBtn_Click: Exit Sub Err_SaveRecBtn_Click: MsgBox Err.Description Resume Exit_SaveRecBtn_Click End Sub '===================================== حذف السجل Private Sub DeleteBtn_Click() On Error GoTo Err_DeleteBtn_Click DoCmd.RunCommand acCmdSelectRecord DoCmd.RunCommand acCmdDeleteRecord Exit_DeleteBtn_Click: Exit Sub Err_DeleteBtn_Click: MsgBox Err.Description Resume Exit_DeleteBtn_Click End Sub '===================================== إضافة سجل جديد Private Sub AddNewBtn_Click() On Error GoTo Err_AddNewBtn_Click DoCmd.GoToRecord , , acNewRec Exit_AddNewBtn_Click: Exit Sub Err_AddNewBtn_Click: MsgBox Err.Description Resume Exit_AddNewBtn_Click End Sub '===================================== السجل التالي Private Sub NextBtn_Click() On Error GoTo Err_NextBtn_Click DoCmd.GoToRecord , , acNext Exit_NextBtn_Click: Exit Sub Err_NextBtn_Click: MsgBox Err.Description Resume Exit_NextBtn_Click End Sub '===================================== السجل السابق Private Sub PreviousBtn_Click() On Error GoTo Err_PreviousBtn_Click DoCmd.GoToRecord , , acPrevious Exit_PreviousBtn_Click: Exit Sub Err_PreviousBtn_Click: MsgBox Err.Description Resume Exit_PreviousBtn_Click End Sub '===================================== السجل الأول Private Sub FirstBtn_Click() On Error GoTo Err_FirstBtn_Click DoCmd.GoToRecord , , acFirst Exit_FirstBtn_Click: Exit Sub Err_FirstBtn_Click: MsgBox Err.Description Resume Exit_FirstBtn_Click End Sub '===================================== السجل الأخير Private Sub LastBtn_Click() On Error GoTo Err_LastBtn_Click DoCmd.GoToRecord , , acLast Exit_LastBtn_Click: Exit Sub Err_LastBtn_Click: MsgBox Err.Description Resume Exit_LastBtn_Click End Sub '===================================== البحث عن سجل Private Sub FinedRecBtn_Click() On Error GoTo Err_FinedRecBtn_Click Screen.PreviousControl.SetFocus DoCmd.RunCommand acCmdFind Exit_FinedRecBtn_Click: Exit Sub Err_FinedRecBtn_Click: MsgBox Err.Description Resume Exit_FinedRecBtn_Click End Sub '===================================== تكرار السجل Private Sub DublicateRecBtn_Click() On Error GoTo Err_DublicateRecBtn_Click DoCmd.RunCommand acCmdSelectRecord DoCmd.RunCommand acCmdCopy DoCmd.RunCommand acCmdRecordsGoToNew DoCmd.RunCommand acCmdSelectRecord DoCmd.RunCommand acCmdPaste Exit_DublicateRecBtn_Click: Exit Sub Err_DublicateRecBtn_Click: MsgBox Err.Description Resume Exit_DublicateRecBtn_Click End Sub '===================================== حفظ السجل Private Sub SaveRecBtn_Click() On Error GoTo Err_SaveRecBtn_Click DoCmd.RunCommand acCmdSaveRecord Exit_SaveRecBtn_Click: Exit Sub Err_SaveRecBtn_Click: MsgBox Err.Description Resume Exit_SaveRecBtn_Click End Sub '===================================== طباعة السجل الحالي Private Sub PrintRecBtn_Click() On Error GoTo Err_PrintRecBtn_Click DoCmd.RunCommand acCmdSelectRecord DoCmd.PrintOut acSelection Exit_PrintRecBtn_Click: Exit Sub Err_PrintRecBtn_Click: MsgBox Err.Description Resume Exit_PrintRecBtn_Click End Sub '===================================== التراجع عن التسجيل Private Sub UndoRecBtn_Click() On Error GoTo Err_UndoRecBtn_Click DoCmd.RunCommand acCmdUndo Exit_UndoRecBtn_Click: Exit Sub Err_UndoRecBtn_Click: MsgBox Err.Description Resume Exit_UndoRecBtn_Click End Sub '===================================== فتح التقرير وطباعة السجل المحدد بدلالة الرقم التسلسلي Private Sub Print_Click() On Error GoTo Err_OpenReportBtn_Click Dim stDocName As String stDocName = "ReportName" DoCmd.OpenReport stDocName, acViewReport, , "ID =" & Me.ID DoCmd.RunCommand acCmdPrintPreview DoCmd.RunCommand acCmdPrint Exit_OpenReportBtn_Click: Exit Sub Err_OpenReportBtn_Click: If Err.Number = 2501 Then Resume Exit_OpenReportBtn_Click 'print cancelled MsgBox Err.Number & vbCr & Err.Description Resume Exit_OpenReportBtn_Click End Sub '===================================== طباعة تقرير Private Sub PrintReportBtn_Click() On Error GoTo Err_PrintReportBtn_Click Dim stDocName As String stDocName = "ReportName" DoCmd.OpenReport stDocName, acNormal Exit_PrintReportBtn_Click: Exit Sub Err_PrintReportBtn_Click: MsgBox Err.Description Resume Exit_PrintReportBtn_Click End Sub '===================================== معاينة تقرير Private Sub VeiwReportBtn_Click() On Error GoTo Err_VeiwReportBtn_Click Dim stDocName As String stDocName = "ReportName" DoCmd.OpenReport stDocName, acPreview Exit_VeiwReportBtn_Click: Exit Sub Err_VeiwReportBtn_Click: MsgBox Err.Description Resume Exit_VeiwReportBtn_Click End Sub '===================================== فتح تقرير Private Sub OpenReportBtn_Click() On Error GoTo Err_OpenReportBtn_Click Dim stDocName As String stDocName = "ReportName" DoCmd.OpenReport stDocName, acViewReport Exit_OpenReportBtn_Click: Exit Sub Err_OpenReportBtn_Click: MsgBox Err.Description Resume Exit_OpenReportBtn_Click End Sub '===================================== حفظ تقرير بصيغة Private Sub SendReportToBtn_Click() On Error GoTo Err_SendReportToBtn_Click Dim stDocName As String stDocName = "ReportName" DoCmd.OutputTo acReport, stDocName Exit_SendReportToBtn_Click: Exit Sub Err_SendReportToBtn_Click: MsgBox Err.Description Resume Exit_SendReportToBtn_Click End Sub
-
دروب مبرمج أهلا بك في فريق الخبراء..
Moosak replied to أبو إبراهيم الغامدي's topic in قسم الأكسيس Access
أهلا بك أخي @دروب مبرمج في قائمة الخبراء ، تستحقها بجدارة 🙂 🌹 أنت البركة وحلت عليك البركات تلو البركات ☺️ -
وعليكم السلام ورحمة الله وبركاته أخي حسين 🙂 تفضل : If t = b Then msgbox "القيمة الرقمية الموجود في حقل t تساوي القيمة التي في حقل b " ' "ثم تكتب هنا ما تريد من البنامج فعله لو تحقق الشرط" End If
-
وعليكم السلام ورحمة الله وبركاته 🙂 تفضل أخي جمال .. [order_code] & "." & [report_No] & "." & Format([Received_date];"mm") & "." & Format([Received_date];"yy")
-
كما قال المهندس @Eng.Qassim .. تم فقد الاتصال بقاعدة البيانات الخلفية .. وإليك هذا الكود لفحص إذا كانت الجداول المرتبطة متصلة أم لا .. عندما يكون البرنامج مقسم لنسختين FE و BE وضيفة الكود أن تعطيه اسم أحد الجداول المرتبطة فيفحصه إذا كان متصل أم لا ويعطيك النتيجة True / False .. وبعدها يمكنك إعطاء أي أمر في حال تم فقد الإتصال كغلق البرنامج مثلا .. Private Function TableLinkOkay(strTableName As String) As Boolean 'Function accepts a table name and tests first to determine if linked 'table, then tests link by performing refresh link. 'Error causes TableLinkOkay = False, else TableLinkOkay = True Dim CurDB As dao.Database Dim tdf As TableDef Dim strFieldName As String On Error GoTo TableLinkOkayError Set CurDB = DBEngine.Workspaces(0).Databases(0) Set tdf = CurDB.TableDefs(strTableName) TableLinkOkay = True If tdf.Connect <> "" Then '#BGC updated to be more thorough in checking the link by opening a recordset 'ACS 10/31/2013 Added brackets to support spaces in table and field names strFieldName = CurDB.OpenRecordset("SELECT TOP 1 [" & tdf.Fields(0).Name & "] FROM [" & tdf.Name & "];", dbOpenSnapshot, dbReadOnly).Fields(0).Name 'Do not test if nonlinked table End If TableLinkOkay = True TableLinkOkayExit: Exit Function TableLinkOkayError: TableLinkOkay = False GoTo TableLinkOkayExit End Function '==========================================(مجربة تمام)==(وهذي دالة ثانية تقوم بنفس الوظيفة) Public Function IsConnectedToBE(strLinkedTable As String) As Boolean Dim db As DAO.Database Dim rs As DAO.Recordset Set db = CurrentDb On Error Resume Next Set rs = db.TableDefs(strLinkedTable).OpenRecordset IsConnectedToBE = (Err = 0) Set rs = Nothing Set db = Nothing End Function طريقة الاستدعاء : TableLinkOkay("strTableName")
-
هل يجوز مع شرط قاعدة if استخدام معيار Between
Moosak replied to Mohamed Abo Elala's topic in قسم الأكسيس Access
جرب بنفسك وأخبرنا عن تجربتك .. هذا كان تكملة الجملة وهي القاعدة التي ساعدتنا في التعلم .. 🙂 -
هل يجوز مع شرط قاعدة if استخدام معيار Between
Moosak replied to Mohamed Abo Elala's topic in قسم الأكسيس Access
جرب 🙂 -
هذا كود لتنصيب الخطوط المضمنة في البرنامج إلى مجلد بجانب البرنامج وضيفة الكود هو استخراج الخطوط المخزنة في جدول الخطوط FontsT إلى مجلد Fonts بجانب قاعدة البيانات ثم يضيفها لبرنامج الأكسس بدون تنصيبها على الجهاز .. وذلك لكي تعمل معك الخطوط التي صممت بها البرنامج. لكي يعمل الكود معك : 1- قم بإنشاء جدول في برنامجك واسمه FontsT وبه حقل مرفقات اسمه Fonts ويتم تخزين الخطوط داخله 2 - قم بإضافة المكتبة التالية : Microsoft Scripting Runtime 3 - قم بمناداة الدالة التي تقوم بالمهمة AddFonts() من أي مكان تريده ( هنا أنا وضعتها في ماكرو Autoexec) Option Compare Database Option Explicit 'Designed By: Moosa AlKalbani Private Declare PtrSafe Function AddFontResource Lib "gdi32.dll" Alias "AddFontResourceA" ( _ ByVal lpFileName As String) As Long Public Function AddFonts() Dim ExtractPath As String Dim FontPath As String Dim FSO As Object Dim File As File Dim FontFolder As Folder Set FSO = CreateObject("Scripting.FileSystemObject") ' إنشاء مجلد للخطوط بجانب قاعدة البيانات ExtractPath = CurrentProject.Path & "\fonts" If Not FSO.FolderExists(ExtractPath) Then FSO.CreateFolder (ExtractPath) ' استخراج جميع الخطوط من الجدول إلى مجلد الخطوط ExtractAllAttachments "FontsT", "Fonts", ExtractPath Set FontFolder = FSO.GetFolder(ExtractPath) For Each File In FontFolder.Files If Right(File.Name, 3) = "TTF" Or Right(File.Name, 3) = "OTF" Then FontPath = ExtractPath & "\" & File.Name Debug.Print vbCr & FontPath AddOneFont FontPath Debug.Print File.Name, "Added" End If Next Set FSO = Nothing End Function Public Function AddOneFont(Font_Name_Path As String) Dim result As Long result = AddFontResource(Font_Name_Path) ' MsgBox result & " fonts added" End Function Public Function ExtractAllAttachments(ByVal TableName As String, ByVal AttchmentColumnName As String, ByVal ExtractToFolder As String) ' TableName : اسم الجدول ' AttchmentColumnName : اسم حقل المرفقات ' ExtractToFolder: المكان المراد استخراج الملفات إليه مثال : "C:\ExtractHere" Dim RsMainrecords As dao.Recordset2 Dim RsAttachments As dao.Recordset2 Set RsMainrecords = CurrentDb.OpenRecordset("select " & AttchmentColumnName & _ " from " & TableName & _ " where " & AttchmentColumnName & ".FileName is not Null") Do Until RsMainrecords.EOF Set RsAttachments = RsMainrecords.Fields(AttchmentColumnName).Value Do Until RsAttachments.EOF Dim OutputFileName As String OutputFileName = RsAttachments.Fields("FileName").Value OutputFileName = ExtractToFolder & "\" & OutputFileName If Len(Dir(OutputFileName, vbDirectory)) = 0 Then On Error Resume Next Debug.Print OutputFileName RsAttachments.Fields("FileData").SaveToFile OutputFileName End If RsAttachments.MoveNext Loop RsAttachments.Close RsMainrecords.MoveNext Loop RsMainrecords.Close Set RsMainrecords = Nothing Set RsAttachments = Nothing End Function ويمكنك استدعائه عن طريق مناداة الدالة باسمها : AddFonts() مثال : Add Fonts.accdb
-
وعليكم السلام .. ضع المرفق
-
وعليكم السلام 🙂 هذا كود لحفظ أو استخراج المرفقات من حقل نوع مرفق إلى جهاز الكمبيوتر .. الدالة الأولى هي دالة استخراج المرفقات .. الدالة الثانية هي دالة الحصول على مسارات المجلدات الخاصة ( سطح المكتب مثلا ..) Public Sub AttachmentToDisk(strTableName As String, _ strAttachmentField As String, strPrimaryKeyFieldName As String) Dim strFileName As String Dim db As DAO.Database Dim rsParent As DAO.Recordset2 Dim rsChild As DAO.Recordset2 Dim fld As DAO.Field2 Dim strPath As String On Error Resume Next strPath = SpecialFolderPath("MyDocuments") & "\" & Form_Main.TB1.Value & "\" ' مكان حفظ المرفقات ' strPath = " Application.CurrentProject.Path" & " \ " & Form_Main.TB1.Value & "\" Set db = CurrentDb Set rsParent = db.OpenRecordset(strTableName, dbOpenSnapshot) With rsParent If .RecordCount > 0 Then .MoveFirst While Not .EOF ' our picture is in the field "pics" Set rsChild = rsParent(strAttachmentField).Value If rsChild.RecordCount > 0 Then rsChild.MoveFirst While Not rsChild.EOF ' this is the actual image content Set fld = rsChild("FileData") ' create full path and filename strFileName = strPath & .Fields(strPrimaryKeyFieldName) & "\" & rsChild("FileName") ' create directory if it does not exists If Len(Dir(strPath & .Fields(strPrimaryKeyFieldName), vbDirectory)) = 0 Then VBA.MkDir strPath & .Fields(strPrimaryKeyFieldName) ' remove any previous picture from disk it there is any If Len(Dir(strFileName)) <> 0 Then Kill strFileName ' save our picture to disk fld.SaveToFile strFileName ' move to next attachment rsChild.MoveNext Wend ' move record pointer of parent .MoveNext Wend End With Set fld = Nothing Set rsChild = Nothing Set rsParent = Nothing Set db = Nothing End Sub Public Function SpecialFolderPath(strFolder As String) As String ' Find out the path to the passed special folder. User on of the following arguments: ' Options For specical folders ' AllUsersDesktop ' AllUsersStartMenu ' AllUsersPrograms ' AllUsersStartup ' Desktop ' Favorites ' Fonts ' MyDocuments ' NetHood ' PrintHood ' Programs ' Recent ' SendTo ' StartMenu ' Startup ' Templates On Error GoTo ErrorHandler 'Create a Windows Script Host Object Dim objWSHShell As Object Set objWSHShell = CreateObject("WScript.Shell") 'Retrieve path SpecialFolderPath = objWSHShell.SpecialFolders(strFolder & "") CleanUp: ' Clean up Set objWSHShell = Nothing Exit Function '************************************** '* Error Handler '************************************** ErrorHandler: MsgBox "Error finding " & strFolder, vbCritical + vbOKOnly, "Error" Resume CleanUp End Function
-
ضع مرفق أخي سامر .. 🙂