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

أ / محمد صالح

أوفيسنا
  • Posts

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

  • Days Won

    198

كل منشورات العضو أ / محمد صالح

  1. بارك الله لك أخي عبد الله والشكر موصول للأخ حسن new4a
  2. بارك الله لكل من ساهم في حل مشكلة أخيه وخلاصة الأمر لجعل الأرقام تظهر باللغة العربية في إكسل يجب توافر شرطين * الأول هو جعل اتجاه النص من اليمين لليسار من خلال الضغط على ctrl+1 لفتح نافذة تنسيق الخلايا * الثاني هو جعل تنسيق الأرقام باللغة العربية من لوحة التحكم control panel ---> ثم خيارات اللغة والمنقطة الإقليمية regional and language options ---> وفي التبويب الأول الخاص بتنسيق الأرقام والتواريخ والوقت وغير ذلك نختار من القائمة العلوية بلدك العربية (أنا أختار مصر) بدون الدخول في تفاصيل يتم تغيير الأرقام والتواريخ وفقنا الله وإياكم لكل ما يحب ويرضى اللهم احفظ مصر وأهلها من كل سوء
  3. اشكركم اخوتي وأتمنى أن نتعاون جميعاً في المطلوب الثاني وهو شرح كل دالة ومثال عليها وأذكركم بالدعاء لوطني الحبيب الذي ينزف دماءً طاهرة اللهم احفظ مصر وأهلها من كل سوء
  4. أخي الكريم سعد أعتقد والله أعلم لا يوجد فصل لاسم الشيت عن باقي المسار للنطاق بمعنى أنه يمكنك وضع اسم الشيت والنطاق الخاص به في خلية ثم قراءته كمدى من خلال الدالة indirect جرب مثلا أن تضع في الخلية b9 هذه القيمة 1!$B$8:$B$100 ثم عدل المعادلة التي في الخلية c9 إلى =SUMPRODUCT(--(INDIRECT(B9)<=$H$5), --(INDIRECT(B9)>=$C$5),INDIRECT(B9)) أتمنى أن أكون وفقت في الوصول معك لحل لهذا المطلوب
  5. بسم الله الرحمن الرحيم الحمد لله رب العالمين كثيرا ما يشغل بالي ولا أدري أيشغل هذا الأمر بال الإخوة الزملاء أم لا؟ موضوع توافق الدوال بين إصدارات الإكسل حيث أنني أستعمل أوفيس 2010 وأريد أن أعلم : هل هذه الدالة متوافقة مع إصدار 2003 مثلاً أو لا؟ وهل هي متوافقة مع 2007 أم لا؟ وما هي الدوال الجديدة في إكسل 2010؟ والحمد لله قمت بعمل هذا البحث البسيط الذي يضم كل هذه المعلومات وأكثر .............. ومن هنا أعرض على الإخوة أن يعرض كل واحد منا تجربته واستخداماته لكل دالة من هذه الدوال مع مثال حتى نتمكن من جمع كل ما يخص دوال الإكسل من شرح وأمثلة في هذا الموضوع بإذن الله ........... وبهذا المشروع بإذن الله تكتمل دائرة معرفة الإكسل فالإكسل معادلات وأكواد والأكواد وال vba يتم مناقشتها في الدورة وهنا يتم مناقشة المعادلات والدوال ولا تنسوني من صالح دعائكم ولا تنسوا مصر من صالح دعائكم ************** تم حذف المرفق لوجود نسخة أحدث هنا في المشاركة 11# ويمكن التحميل مباشرة من هنا http://www.officena....attach_id=49058
  6. فعلا أخي مجدي موسوعة من المعلومات الرائعة والمفيدة بارك الله لك
  7. بارك الله لك أخي عبد الله مثال رائع حقاً أخي الكريم قصي المثال يصلح لما تريد فقط يلزمك وضع صور للطلاب في مجلد الصور واجعل اسم صورة كل طالب هي رقم مسلسله مثلا ثم اكتب في الخلية الخاصة باسم الصورة رقم الطالب سيتم عرض صورته
  8. شكرا لك أخي الحسين ولكن في رأيي الشخصي أفضل برنامج لتسجيل الشروحات هو camtasia studio 7.1 http://www.techsmith.com/camtasia.html فبه الكثير من الإمكانيات التي لا توجد في غيره أدعوك لتجربته البرنامج المذكور من حضرتك يشبه كثيرا برنامج bb flashback http://www.bbsoftwar...hback/home.aspx وفقنا الله وإياكم لكل ما يحب ويرضى
  9. شكرا لك أخي الكريم عطاء يدل على الكرم وحب الغير بارك الله لك
  10. لعلك تقصد هذا الملف http://www.officena.net/ib/index.php?showtopic=29972 أتمنى تفيدك هذه الأداة وتتخدمها فيما يرضي الله
  11. شكرا جزيلا استاذ محمد برجاء التكرم بأضافة كوذ يعيد الصفحة الى قبل الفرز أخي الكريم استعمل هذا الكود Sub nofilter() ActiveSheet.ShowAllData End Sub
  12. بارك الله لك أخي العيدروس وبناء على طلب أستاذ أحمد تم تعديل الكود ليتم استدعاؤه من صفحة أخرى ولتكن مثلا sheet3 mas_مطلوب فرز ALIDROOS.rar
  13. بارك الله لك أخي أبا نصار استعمال للكود بطريقة تدل على فهم صائب وبارك الله لك أخي أحمد ربط بين المعادلات والكود رائع وأرجو أن يتسع صدرك للتعديل البسيط على الكود (فهوايتي اختصار الأكواد) Sub mSaveAs() If Range("H7") = False Then QQ = Range("J7") MsgBox QQ Exit Sub End If FN = Range("G7") ActiveWorkbook.SaveAs Filename:=FN End Sub للملاحظة تم الاستغناء عن سطري الذهاب إلى السطر رقم 9 والسطر نفسه واستبدالهما ب جملة الخروج من الإجراء
  14. أخي الكريم الطريقة الأخيرة هي الأدق حسابياً ولكن نظام المرتبات يطلب أول رقمين بعد العلامة وهذا يتم بدالة trunc وإذا استعملت الطريقة الأخيرة و الدالة في المجموع فلن تكون النتائج دقيقة كما ينبغي والأفضل والصواب استعمال trunc في الجميع
  15. أخي الكريم الجزيرة كود activeprinter هو الخاص بتنشيط طابعة معينة للطباعة عليها ولا يوجد غيره لعمل ذلك فإما أن يكون الخطأ في اسم الطابعة أو في اتصال الطابعة بالجهاز وتأكد أنه تظهر أسفل رمز الطابعة كلمة ready (جاهز) قبل الطباعة ولمعرفة اسماء الطابعات الموصلة بالجهاز يمكنك استعمال هذا الكود Private Const PRINTER_ENUM_LOCAL = &H2 Private Const PRINTER_ENUM_CONNECTIONS = &H4 Private Declare Function EnumPrinters Lib "winspool.drv" _ Alias "EnumPrintersA" _ (ByVal flags As Long, _ ByVal name As String, _ ByVal Level As Long, _ pPrinterEnum As Any, _ ByVal cdBuf As Long, _ pcbNeeded As Long, _ pcReturned As Long) _ As Long Private Declare Function StrLen Lib "kernel32" _ Alias "lstrlenA" _ (ByVal Ptr As Long) _ As Long Private Declare Function StrCopy Lib "kernel32" _ Alias "lstrcpyA" _ (ByVal RetVal As String, _ ByVal Ptr As Long) _ As Long Private Function CopyStringFromPtr(ByVal pSource As Long) As String CopyStringFromPtr = Space$(StrLen(pSource)) StrCopy CopyStringFromPtr, pSource End Function Public Function GetPrinterNames() As Variant Dim fSuccess As Boolean, lBuflen As Long, lFlags As Long Dim aBuffer() As Long, lEntries As Long Dim iCount As Integer, aPrinters() As String lFlags = PRINTER_ENUM_LOCAL Or PRINTER_ENUM_CONNECTIONS Call EnumPrinters(lFlags, vbNullString, 1, 0, 0, lBuflen, lEntries) ReDim aBuffer(lBuflen \ 4) fSuccess = EnumPrinters( _ lFlags, _ vbNullString, _ 1, _ aBuffer(0), _ lBuflen, _ lBuflen, _ lEntries) <> 0 If fSuccess And lEntries > 0 Then ReDim aPrinters(lEntries - 1) For iCount = 0 To lEntries - 1 aPrinters(iCount) = CopyStringFromPtr(aBuffer(iCount * 4 + 2)) Next GetPrinterNames = aPrinters End If End Function Public Sub GetPrinterList() Dim aPrinters As Variant, i As Integer aPrinters = GetPrinterNames If IsArray(aPrinters) Then For i = 0 To UBound(aPrinters) Debug.Print aPrinters(i) Next End If End Sub لذلك يجب أولا التأكد من توصيل الطابعة وجاهزيتها وثانيا اسمها الصحيح ثم تستعمل activeprinter وفقنا الله وإياكم لكل خير
  16. إذا كان الأمر كذلك فيمكنك استعمال الدالة trunc =trunc(a1*10%,2) حيث a1 هو الرقم المراد ضربه في 10% و ال 2 هو عدد الأرقام على يمين العلامة العشرية
  17. أخي الكريم مجدي يونس في أي خلية بالضبط صادفت ذلك؟؟!! ففي الملف المرسل مني يتم قص أول رقمين بعد العلامة العشرية بدون تقريب في نسبة ال 10% وال 30% ومن الطبيعي ألا ينتج رقم به ثلاثة أرقام على يمين العلامة العشرية من حاصل جمع أرقام هي في الأصل رقمين على يمين العلامة ............. لا تقلق الآلية التي يمشي بها الملف صحيحة وإن صادفت ذلك فأين وجدته للوصول للحل وفقنا الله وإياكم لكل ما يحب ويرضى
  18. جرب أن تستعمل المسار الكامل Application.ActivePrinter="EPSON LQ-690"
  19. ما نص رسالة الخطأ؟ أو يمكنك تصويرها بزر print screen
  20. أخي الكريم الجزيرة تتم الطباعة على الطابعة الافتراضية لا على طابعة أخرى مهما يكون عدد الطابعات الموصل بالجهاز ولا ستعمال طابعة غير الافتراضية يجب تنشيطها أولا باستعمال ActivePrinter = "EPSON LQ-690" ثم أمر الطباعة
  21. بارك الله لك أخي يحياوي على اجتهادك وبحث وحرصك على إفادة إخوانك ولمن لا يجيد الإنجليزية هذا رابط لترجمة الكتاب http://translate.google.com.eg/translate?sl=auto&tl=ar&js=n&prev=_t&hl=ar&ie=UTF-8&layout=2&eotf=1&u=http%3A%2F%2Fwww.xlpert.com%2Ftoc.htm أتمنى أن يفيدنا جميعاً
  22. الحمد لله على عمل البرنامج مع جميع الإخوة اللهم علمنا ما ينفعنا وانفعنا بما علمتنا
  23. بالفعل أخي الكريم مجدي الدالة int تجبر ما فوق النصف إلى واحد صحيح الصواب الدالة floor شاهد المرفق mas_splitnum3.rar
  24. تفضل أخي مجدي وكنت أتمنى أن تستنتجها أنت بحكم خبرتك معنا في أوفيسنا ولكن يبدو أنك لم تحاول mas_splitnum2.rar
  25. تفضل أخي الكريم تم إضافية عمود وتم تطبيق المطلوب على عمودين وطبعاً يمكنك التطبيق على باقي الأعمدة أتمنى أن تكون الفكرة وضحت mas_splitnum.rar
×
×
  • اضف...

Important Information