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

أ / محمد صالح

أوفيسنا
  • Posts

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

  • Days Won

    197

مشاركات المكتوبه بواسطه أ / محمد صالح

  1.  

    🌿 إلى صاحب الموضوع الكريم، صاحب الوفاء والعرفان @algammal: وعليكم السلام ورحمة الله وبركاته، لقد أكرمتنا بكلماتك النبيلة، وأغدقت علينا من جميل ثنائك، فكان لتهنئتك وقعٌ في القلب لا يخفى، ولحروفك أثرٌ في النفس لا يُمحى. جزاك الله خيرًا على هذا اللطف والكرم، وأسأل الله أن يبارك لك في علمك وعملك، وأن يجعل أيامك عامرةً بالسعادة والرضا.

    إلى الإخوة الزملاء الأفاضل، أهل الفضل والعطاء: إنه لمن دواعي الفخر أن نكون جزءًا من هذا الصرح العلمي المبارك، حيث تتلاقى العقول، وتتعانق الأفكار، ويُسهم كل منا بما استطاع في نشر العلم وإعانة السائلين. وما نحن إلا حلقةٌ في سلسلةٍ ممتدةٍ من العطاء، ننهل من معين من سبقونا، ونستنير بهديهم. أسأل الله أن يجعل هذا المنتدى المبارك منارةً للعلم، وموئلًا للباحثين، وأن يبارك في جهود الجميع، ويجزيكم خير الجزاء على كلماتكم الطيبة التي زادتنا شرفًا وسرورًا.

    🌍 إلى جميع الإخوة الأعضاء الكرام: كل عام وأنتم بخير، أعاده الله علينا وعليكم وعلى الأمة الإسلامية بالخير واليمن والبركات، وجعل أيامكم عامرةً بالمسرات، وأفئدتكم مطمئنةً بالرضا والسعادة. نسأل الله أن يديم علينا نعمة الأخوة، وأن يبارك في هذا الجمع الطيب، وأن يجعل العلم الذي نتشاركه نورًا لنا في الدنيا والآخرة.

    🔹 أخوكم / محمد صالح

    • Like 3
  2. عليكم السلام ورحمة الله وبركاته
    يمكنك تجربة  كود VBA يقوم بإنشاء ملف نصي باسم **fs.txt** يحتوي على النص `"fs"`، ويتم حفظه داخل مجلد **C:\Windows** على الجهاز:

     

    Sub CreateTextFile()
        Dim FilePath As String
        Dim FileNumber As Integer
        
        ' تحديد مسار الملف داخل مجلد Windows
        FilePath = "C:\Windows\fs.txt"
        
        ' الحصول على رقم ملف متاح
        FileNumber = FreeFile
        
        ' إنشاء وكتابة البيانات إلى الملف
        Open FilePath For Output As FileNumber
        Print #FileNumber, "fs"
        Close FileNumber
        
        MsgBox "تم إنشاء الملف بنجاح في: " & FilePath, vbInformation, "نجاح"
    End Sub


    ```

    ⚠️ **ملاحظة:** تحتاج إلى تشغيل الكود بصلاحيات **المسؤول (Administrator)** لأن الكتابة داخل مجلد **Windows** تتطلب أذونات خاصة. يمكنك تشغيل VBA من داخل **Excel أو Word** ولكن تأكد من أن لديك الصلاحيات الكافية.

    بالتوفيق
     

  3. السلام عليكم ورحمة الله وبركاته

    أستاذ الفاضل @algammal

    علمناك دائما واسع الصدر طويل البال

    ولا يختلف أحد على عزة نفس الجميع في هذا الصرح وحضرتك أولهم

    وكلنا يتواصل مع الأصدقاء في هذا الصرح بروحه لأننا ربما لا نعرف بعضنا معرفة شخصية في الواقع

    ولذا نلتمس لبعضنا العذر في اختلاف الثقافات والبيئات

    فلا أعتقد أن الصديق الذي ارسل لحضرتك هذه الرسالة يقصد الإساءة لحضرتك ولكنه يقصد فقط أن نتعاون جميعا ويدعم بعضنا بعضا ونكون سببا في الارتقاء بأنفسنا

    واعذرني في تحليلي لنص الرسالة بطريقة مختلفة:

    الأخ صاحب الرسالة يريدك فقط أن تدعم من قام بالإجابة بالضغط على زر الإعجاب وزر أفضل إجابة (وهذه نواحي تنظيمية لمحتوى المنتدى) وهو مما يزيد شعبية من أجاب طلب حضرتك وترتيبه في المنتدى وكل هذا دعما معنويا للمجيب.

    ومن باب هل جزاء الإحسان إلا الإحسان كلنا ندعم صاحب الرد الجميل بالإعجاب حتى وإن لم يكن أفضل إجابة.

    وفي الأخير أذكر نفسي وجميع اصدقائي بقول الله تعالى: وَلْيَعْفُوا وَلْيَصْفَحُوا ۗ أَلَا تُحِبُّونَ أَن يَغْفِرَ اللَّهُ لَكُمْ ۗ وَاللَّهُ غَفُورٌ رَّحِيمٌ.

    جعلنا الله جميعا ممن يحسنون الحديث ويقولون قولا يسلمون فيه من الاثم والأذى

    وكل عام وأنتم جميعا بخير وصحة وسعادة

    • Like 3
  4. عليكم السلام ورحمة الله وبركاته

    أخي الكريم

    كل عام أنتم جميعا بخير وصحة وسعادة

    لكي تحصل على تقرير مثل هذا ينبغي أولا تنظيم قاعدة البيانات بشكل يتناسب مع ضوابط قواعد البيانات

    بمعنى:

    ينبغي إلغاء دمج الخليا في العمود C وتكرار اسم الشعبة أمام كل صف

    ساعتها يمكنك استعمال الفرو والترتيب إذا أردت الحصول على التقرير يدويا

    أو يمكنك استعمال معادلات البحث

    بالتوفيق

  5. يمكنك البدء في تصميم برنامجك بنفسك من خلال ما تعلمته من المنتدى

    وإذا وقفت في نقطة أو اثنتين يمكنك عرضها وستجد ما يسرك من مساعدة الجميع لك

    أما إذا كنت تريد أن يصمم لك برنامجا جاهزا فهذا العمل متاح من جميع الاساتذة ولكن بمقابل المجهود والوقت

    خالص الدعوات بالتوفيق 

  6. السلام عليكم ورحمة الله وبركاته

    تفضل ربما يفيدك هذا

    تم وضع معادلة في H5 واستعمال التنسيق الشرطي للخلايا من A5:H14 ويمكن زيادة هذا النطاق إلى أي نهاية

    دعواتكم لي بسعة الرزق في هذه الايام المباركة

    مطلوب من أوفيسنا الكرام.xlsx

    • Like 4
  7. عليكم السلام ورحمة الله وبركاته
     
    يمكنك تحقيق ذلك بسهولة من خلال تنسيق الشكل (Shape) في Excel بحيث تكون الصورة على الجانب الأيسر والنص على الجانب الأيمن داخل نفس الشكل. إليك الطريقة:

    الخطوات:

    1. إدراج الشكل:

      • قم بإدراج شكل من خلال علامة التبويب "Insert" ثم اختر "Shapes". أو Word Art

    2. إضافة النص 

      • انقر على الشكل لكتابة النص داخله.

      • لتحريك النص إلى الجانب الأيمن، استخدم أزرار المحاذاة لليمين أو اليسار.

    3. إضافة الصورة داخل الشكل:

      • انقر بزر الماوس الأيمن على الشكل واختر "Format Shape".

      • اختر "Fill" ثم "Picture or texture fill".

      • اضغط على "Insert " أسفل كلمة Picture لإدراج الصورة التي تريدها. lمن جهاز الكمبيوتر أو يمكنك استعمال ايقونة Icon

    4. ضبط الصورة داخل الشكل:

      • ضمن إعدادات "Format Shape"، اختر خيار "picture " إذا كنت تريد التحكم في موضع الصورة.

      • ضمن جزء Crop قم بتعديل إعدادات " Offset Y Or X" (إزاحة) للصورة بحيث تظهر على الجانب الأيسر من الشكل.

      • يمكنك تعديل العرض Width والارتفاع Height لضبط حجم الصورة بجانب النص

    نصيحة إضافية:

    إذا كنت تريد نتيجة أكثر دقة أو تحتاج إلى المزيد من التحكم، يمكنك استخدام برنامج تصميم مثل PowerPoint أو Word لإنشاء الشكل وتنسيقه، ثم إدراجه كصورة في Excel.

     

    بالتوفيق

    زر يحتوي على نص وصورة أو ايقونة.xlsb

    • Like 2
  8. 16 ساعات مضت, ابو حمادة said:

    شكرا لك استاذي الفاضل علي اهتمامك

    لكن
    للاسف الكود عند استخدامه تظهر رساله خطأ 

    عذرا اخي الكريم لم أنتبه لأنك تستعمل نسخة أوفيس 2007 وبالفعل هذه الميزة غير موجودة فيه

    يمكنك استعمال كود الطباعة العادي في حالة وجود طابعة pdf في ويندوز

    يمكنك تجربة هذا الكود

    Sub ExportWorksheetToPDF_2007()
        Dim ws As Worksheet
        Dim pdfFilePath As String
        Dim wbPath As String
        Dim objPrinter As Object
        
        ' تحديد ورقة العمل الحالية
        Set ws = ActiveSheet
    
        ' الحصول على مسار المصنف الحالي
        wbPath = ThisWorkbook.Path
    
        ' التحقق مما إذا كان المصنف قد تم حفظه
        If wbPath = "" Then
            MsgBox "يرجى حفظ المصنف أولاً لتحديد المسار.", vbExclamation
            Exit Sub
        End If
    
        ' تحديد مسار واسم ملف PDF
        pdfFilePath = wbPath & "\" & ws.Name & ".pdf"
    
        On Error Resume Next
        ' تحديد طابعة الـ PDF الافتراضية
        Set objPrinter = CreateObject("Scripting.FileSystemObject")
    
        If objPrinter Is Nothing Then
            MsgBox "لا يمكن تصدير PDF. يرجى التأكد من تثبيت إضافة التصدير.", vbCritical
            Exit Sub
        End If
        
        ' تصدير الورقة باستخدام طابعة PDF خارجية
        ws.PrintOut Copies:=1, ActivePrinter:="Microsoft Print to PDF", _
            PrintToFile:=True, PrToFileName:=pdfFilePath
        
        MsgBox "تم تصدير ورقة العمل إلى ملف PDF بنجاح: " & pdfFilePath, vbInformation
    End Sub

    بالتوفيق

    • Like 3
  9. للأسف لا يوجد معادلة للقيام بهذا الأمر إلا في الإصدارات الحديثة

    وربما تكون طويلة ومعقدة

    ولكن يمكنك استعمال هذا الاجراء

    Sub RepeatValuesInColumn()
        Dim ws As Worksheet
        Dim sourceRow As Long
        Dim targetRow As Long
        Dim repeatCount As Long
        Dim lastRow As Long
        
        ' تحديد ورقة العمل
        Set ws = ActiveSheet
        
        ' الحصول على آخر صف يحتوي على بيانات في العمود G
        lastRow = ws.Cells(ws.Rows.Count, "G").End(xlUp).Row
        
        ' تحديد صف البدء للعمود J
        targetRow = 7 ' ابدأ من الصف J7
        
        ' التكرار لكل صف في العمود G وH
        For sourceRow = 7 To lastRow
            If ws.Cells(sourceRow, "G").Value <> "" And IsNumeric(ws.Cells(sourceRow, "H").Value) Then
                repeatCount = ws.Cells(sourceRow, "H").Value
                If repeatCount > 0 Then
                    Dim i As Long
                    For i = 1 To repeatCount
                        ws.Cells(targetRow, "J").Value = ws.Cells(sourceRow, "G").Value
                        targetRow = targetRow + 1
                    Next i
                End If
            End If
        Next sourceRow
        
        MsgBox "تم التكرار بنجاح!", vbInformation
    End Sub

    بالتوفيق

    • Like 4
  10. عليكم السلام ورحمة الله وبركاته

    بهذه الصورة المشكلة في صلاحيات المستخدم في هذا الجهاز؛ حيث أنه لا يملك حق الوصول للملف على الشبكة.

    يمكنك مراجعة الأمان الخاص بالملف وطريقة مشاركته والمستخدمين المصرح لهم بتعديل الملف

    بالتوفيق

    • Like 1
×
×
  • اضف...

Important Information