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

فتح اخر صفحة في التقرير


husseinharby
إذهب إلى أفضل إجابة Solved by jjafferr,

الردود الموصى بها

السلام عليكم

اريد عند فتح التقرير الذهاب الي اخر صفحة

استخدمت كود sendkeys لكنه يتسبب في مشكلة انه يقفل زرار numlock

هل يوجد بديل لكود sendkeys

تم تعديل بواسطه husseinharby
رابط هذا التعليق
شارك

جرب إضافة سطر ثاني لأمر sendkeys بعد أمر الذهاب إلى آخر صفحة كالتالي:

SendKeys "{NUMLOCK 2}", True

ويمكنك كذلك "اللعب" في رقم 2 بالزيادة أو النقصان فربما تحل المشكلة .. يعني جرب 1 ، 2 أو 3 

رابط هذا التعليق
شارك

  • أفضل إجابة

وعليكم السلام 🙂

 

بحثت ووجدت هذا الكود

    DoCmd.OpenReport "rpt_SalesReportBO_Ar", acViewPreview
    
    'goto last page
    Dim WshShell As Object
    Set WshShell = CreateObject("WScript.Shell")
    WshShell.SendKeys "{End}", True

 

جعفر

  • Like 5
  • Thanks 1
رابط هذا التعليق
شارك

23 ساعات مضت, jjafferr said:

بحثت ووجدت هذا الكود

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

تفاديا لتكرار هذه السطور يفضل تحويلها إلى إجراء يستدعى كما الإجراء الأصل كالتالي:
 

Sub mySendKeys(String_ As String, Optional Wait As Boolean = False)
    Dim WshShell As Object
       
    Set WshShell = CreateObject("WScript.Shell")
    WshShell.SendKeys String_, Wait
    Set WshShell = Nothing
End Sub

وتستدعى كالتالي:
 

mySendKeys "{End}", True

 

تم تعديل بواسطه AbuuAhmed
تعديل في كود الإجراء
  • Like 4
رابط هذا التعليق
شارك

وهذا كود لفتح التقرير على صفحة معينة:
 

Private Sub Report_Open(Cancel As Integer)
    PageNo = 5  'required page
    
    If PageNo > 1 Then
        String_ = "{PGDN " & PageNo - 1 & "}"
        mySendKeys String_, True
    End If
  End If
End Sub

 

  • Like 4
رابط هذا التعليق
شارك

السلام عليكم 🙂

18 ساعات مضت, AbuuAhmed said:

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

 

ووالديك ان شاء الله 🙂

ولجعل الهدية تتناسب مع مناسبة العيد الوطني لبلادنا ، اود ان تقوموا بتجربة اللمسات التي لم تكن موجودة في SendKeys 🙂
 

 

SendKeys.gif.5c6bbf6c755e911e8488d34b72d80b84.gif

 

جعفر

 

SendKeys_mySendKeys.zip

تم تعديل بواسطه jjafferr
تم حذف النسخة 2 ، واستبدالها بالمشاركة التالية
  • Like 3
  • Thanks 1
رابط هذا التعليق
شارك

السلام عليكم 🙂

 

في النسخة 3 ، جعلت الاختيار الاول اختياري :

Function mySendKeys(Optional ByVal v As sk_SendKeys, Optional ByVal op_value As String = "", Optional ByVal Wait As Boolean = True) As String

.

هذا يسمح لنا بمرونة اكثر ، فمثال اخوي ابو احمد عن الانتقال الى الصفحة رقم 6 (في الواقع هي 6-1=5) مثلا :

SendKeys.gif.06566dfac9b00d72b793dbbdf366ef75.gif

وبعدني مو راضي ، اكيد فيه مجال للتحسين :rol:

 

جعفر

SendKeys_mySendKeys_3.zip

  • Like 3
رابط هذا التعليق
شارك

ما شاء الله ، توسعت كثيرا ، عساك ع القوة أخي العزيز.


لم أجرب المثال الأخير ، بس كان في اعتقادي أنه لا بد للمعامل/المعطى/المدخل الأول يكون مطلوبا/إجباريا، ربما خلطت مع لغة أخرى.

 

ولا أنسى أن أهنئكم بالعيد الوطني لبلادكم ، وكل عام وأنتم بخير وبلادكم إلى المزيد من التقدم والرقي.

تم تعديل بواسطه AbuuAhmed
رابط هذا التعليق
شارك

كنت خائف ان تكون بعض المتغيرات محجوزة في الاكسس ، ولكن التغيير سهل ، تغيير الكل مرة واحدة 🙂

بس لازلت غير راضي عن 3 متغيرات للدالة ، لازم ارجعها الى متغيرين اثنين كما الدالة السابقة ، انا مشغول لخشمي ، فمحتاج شوية وقت ، إلا اذا احد الخبراء اراد ان يساهم 🙂

 

جعفر

  • Like 1
رابط هذا التعليق
شارك

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information