باسلام
ازراهنمایی های که ارایه دادید متشکرم اما نتونستم در کامپیوترهایی که اکسل آپشن اونو (تراست سیتینگ)تغییر ندادم اجرا کنم .
ممنون میشم راهنمایی بفرمایید
عدم کپی شیت و داده های آن در شیت دیگر
Collapse
X
-
-
سلام
یه موضوع دیگه و اون اینه که این کدها رو بخواهیم اجرا بکنیم نیاز به نصب سرویس پک می باشد و اگه اونو نصب نکنیم کدهای بالایی اجرا نمی شوند.
باتوجه به اینکه این فایل رو برای کسانی می فرستم که در دسترس من نیستند و کاربران خارج از محل کار من هستند دو تا مشکل دارم
1-نصب سرویس پک رو بلد نیستند
2-امکان فعال سازی ماکرو ها از آپشن اکسل (ترسات سیتینگ) رو هم بلد نیستن
دوستان می تونین راهنمایی بفرمایینLeave a comment:
-
سلام
یکی از دوستان سایتی معرفی کرد و کدهای مورد نظرم را اونجا پیدا کردم
برای استفاده دوستان این کدها رو اینجام هم قرار میدم
کد PHP:'*** In a standard module ***
Option Explicit
Sub ToggleCutCopyAndPaste(Allow As Boolean)
'Activate/deactivate cut, copy, paste and pastespecial menu items
Call EnableMenuItem(21, Allow) ' cut
Call EnableMenuItem(19, Allow) ' copy
Call EnableMenuItem(22, Allow) ' paste
Call EnableMenuItem(755, Allow) ' pastespecial
'Activate/deactivate drag and drop ability
Application.CellDragAndDrop = Allow
'Activate/deactivate cut, copy, paste and pastespecial shortcut keys
With Application
Select Case Allow
Case Is = False
.OnKey "^c", "CutCopyPasteDisabled"
.OnKey "^v", "CutCopyPasteDisabled"
.OnKey "^x", "CutCopyPasteDisabled"
.OnKey "+{DEL}", "CutCopyPasteDisabled"
.OnKey "^{INSERT}", "CutCopyPasteDisabled"
Case Is = True
.OnKey "^c"
.OnKey "^v"
.OnKey "^x"
.OnKey "+{DEL}"
.OnKey "^{INSERT}"
End Select
End With
End Sub
Sub EnableMenuItem(ctlId As Integer, Enabled As Boolean)
'Activate/Deactivate specific menu item
Dim cBar As CommandBar
Dim cBarCtrl As CommandBarControl
For Each cBar In Application.CommandBars
If cBar.Name <> "Clipboard" Then
Set cBarCtrl = cBar.FindControl(ID:=ctlId, recursive:=True)
If Not cBarCtrl Is Nothing Then cBarCtrl.Enabled = Enabled
End If
Next
End Sub
Sub CutCopyPasteDisabled()
'Inform user that the functions have been disabled
MsgBox "Sorry! Cutting, copying and pasting have been disabled in this workbook!"
End Sub
'*** In the ThisWorkbook Module ***
Option Explicit
Private Sub Workbook_Activate()
Call ToggleCutCopyAndPaste(False)
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Call ToggleCutCopyAndPaste(True)
End Sub
Private Sub Workbook_Deactivate()
Call ToggleCutCopyAndPaste(True)
End Sub
Private Sub Workbook_Open()
Call ToggleCutCopyAndPaste(False)
End Sub
Leave a comment:
-
سلام دوستان باتشکر از ارسال پاسختون
ببینید بنده دو مورد عرض کرده بودم یکی جلوگیری از کپی (یعنی برای کاربران امکان یا مد کپی بسته بشه)
دومی عدم ابجاد شیت جدید است که دومی با protect sheet حل شد ولی کدی برای جلوگیری کردن یا غیرفعال کردن کپی نیافتمLeave a comment:
-
کپي نمي شود کرد!
فقط با فرمول نويسي به مقادير مي شود دسترسي پيدا کرد، که البته اگر مقادير را مخفي نکرده باشيد در همان شيت اصلي هم مي توانند آنها را ببينند!
فقط اگر فرمول نويسي کرده باشيد به اين طريق مي توان جلوي دسترسي به فرمولها را گرفت.
تا آنجايي که من اطلاع دارم کلا" اکسل از لحاظ امنيت در سطح بالايي نيست، نهايت با نرم افزارهاي مخصوص مي توانند رمزها را باز کنند!
شما فقط مي توانيد با اعمال محدوديت ها و ترفندهايي دامنه فعاليت افرادي که از سر کنجکاوي و شيطنت فايل را دستکاري مي کنند را محدود کنيد. ولي اگر کسي واقعا" قصد دزدي اطلاعات يا خرابکاري با منظور خاص را داشته باشد کاري از دست شما ساخته نيست.
اين فايل را نگاه کنيد ببينيد اون طور که شما فرموديد آيا کپي مي شود کرد:فایل های پیوست شدهLeave a comment:
-
با سلام
ماکرویی قرار بدید که در صورت اضافه شدن شیت جدید اون شیت حذف بشه در این ماکرو شیت بیشتر از 3 حذف میشود
کد PHP:Sub GetWsNames()
y = ThisWorkbook.Worksheets.Count
For x = 1 To y
If x > 3 Then
Sheets(y).Select
Application.DisplayAlerts = False
ActiveWindow.SelectedSheets.Delete
End If
y = ThisWorkbook.Worksheets.Count
Next x
End Sub
Leave a comment:
-
سلام ممنون از جواب
ببینید در این صورت هم میشه فایل جدید باز کرد و کل شیت را در اون کپی کرد.
کپی باز هم فعال هست.یعنی بند 1 هنوز هستLeave a comment:
-
سلام،
ورک بوک را نيز پروتکت کنيد و ضمنا" در هنگام پروتکت کردن شيت امکان انتخاب سل ها را هم از کاربر بگيريد، (تيکش را برداريد).
البته باز هم مي توانند مثلا" يک اکسل جديد باز کنند و خانه هايش را مساوي خانه هاي اين يکي قرار دهند و مقادير را ببينند ولي اگر فرمول داشته باشيد فرمولها را ديگر نمي توانند ببينند!Leave a comment:
-
عدم کپی شیت و داده های آن در شیت دیگر
سلام
شیتی درست کردم تا کاربران بتونند قسمتی از داده های مورد نیازم رو وارد نمایند .
این شیت شامل دو قسمت است که به یه سری اطلاعات نباید دسترسی داشته باشند بنابراین اون سلهارو protect کردم
قسمت هایی از این شیت رو باز گذاشتم تا داده ها را واردنمایند .
در این میان با تعدادی از کاربران که بعضا شیطنت هم می کنند به مشکل برخوردم . شیت منو در یه شیت جدیدی که باز می کنن کپی نموده با این کار شیت از حالت protect خارج می شود و به راحتی دستکاری می کنند.
1-میشه با استفاده از کد نویسی اجازه کپی کردن رو از کاربران گرفت؟
2- چه کد بنویسم کاربران شیت جدیدی نتوانند ایجاد کنند؟
Leave a comment: