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

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

قام بنشر


السلام عليكم ورحمة الله 
كما في العنوان  أريد كود يقوم بإفراغ الحافظة بحيث مثلا لو قمت بعملية نسخ ولصق في البرنامج أريد إفراغ الحافظة بحيث لا يمكن اللصق مرة ثانية ،
وجزاكم الله خيرا

قام بنشر (معدل)

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

في مديول جديد ، الصق الكود التالي :-


Private Declare PtrSafe Function OpenClipboard Lib "user32" (ByVal hwnd As LongPtr) As Long
Private Declare PtrSafe Function EmptyClipboard Lib "user32" () As Long
Private Declare PtrSafe Function CloseClipboard Lib "user32" () As Long

Sub ClearClipboard()
    If OpenClipboard(0) Then
        EmptyClipboard
        CloseClipboard
    End If
End Sub

ويتم الاستدعاء باسم الصب ClearClipboard

 

تم تعديل بواسطه Foksh
حذف الدالة بالاقتراح الثاني = لا تعمل بعد التجربة
  • Like 1
  • Thanks 1
  • تمت الإجابة
قام بنشر

مشاركة

Sub ClearClipboardAndFreeMemory()
    ' تحرير محتوى الحافظة
    On Error Resume Next
    Dim DataObject As Object
    Set DataObject = CreateObject("MSForms.DataObject")
    DataObject.SetText ""
    DataObject.PutInClipboard
    Set DataObject = Nothing
    On Error GoTo 0
    
    ' تحرير الذاكرة
    DoEvents
    Application.Echo True, "Memory cleared"
End Sub

 

  • Like 1
  • Thanks 1
قام بنشر

أعتذر من الأستاذ @ناقل ، ولكن الأخ العزيز @abofayez1 ، هل قمت بتجربة الكود الذي اخترته كأفضل إجابة :blink: ؟؟؟

هل لديك المكتبة أو قمت بإضافتها Microsoft Forms 2.0 Object Library (MSForms) ؟؟؟؟؟

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