PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : آموزش ایجاد سطح دسترسی در اکسل



~M*E*H*D*I~
2014/05/11, 19:52
http://exceliran.com/up/up/af065994021626c862e9d54563bfc2fc.png (http://www.exceliran.com)



سطح دسترسی چیست:
سطح دسترسی مجوزی است که از جانب مدیر یک سیستم به کاربران سیستم جهت انجام امور جاری داده می شود ، این مجوز ممکن است منحصر به فرد بوده و یا بین چند نفر مشترک باشد.
هدف از ایجاد سطح دسترسی:
اهداف گوناگونی برای ایجاد سطح دسترسی می توان در نظر گرفت اما مهم ترین و رایج ترین هدف شامل دو هدف عمده است


ایجاد امنیت اطلاعات
جلوگیری از تداخل وظایف

مهمترین تهدید برای اطلاعات یک سیستم سرقت و یا تغییرات ناخواسته توسط افراد غیر مطلع است ، لذا ساز کاری جهت حفظ امنیت اطلاعات می بایست اتخاذ گردد.
تداخل وظایف نیز از تهدیداتی است که متوجه یک سیستم اطلاعاتی است ، دسترسی افراد به حیطه های غیر مرتبط باعث ایجاد سردرگمی و بروز مشکلات گوناگونی می گردد لذا لازم است هر کس تنها به بخشی از اطلاعات مرتبط با حیطه وظایف خود دسترسی داشته باشد.
امنیت در اکسل:
متاسفانه اکسل نرم افزاری با امنیت بسیار پایین است البته لازم به ذکر است این مورد تنها برای کاربران حرفه ای اکسل صدق می کند و کاربران عادی اکسل که بخش عمده ای از افراد را شامل می شوند امکان دسترسی به تمام قسمت های مختلف نرم افزار را نخواهند داشت.
واقعیت غیرقابل انکار این است که اکسل به دلیل عمومیت ، امکانات و سادگی مورد استفاده افراد بسیاری در حیطه های مختلف کاری قرار میگیرد لاجرم برقراری حداکثر امنیتی که اکسل قادر است فراهم کند مورد نیاز است.

~M*E*H*D*I~
2014/05/12, 12:30
http://exceliran.com/up/up/a394f5f2265bec77a9b79dde6bdabd77.jpg (http://www.exceliran.com)


ایجاد فایل:
ابتدا فایل مورد نظر خود را ایجاد می نماییم در این تمرین فایل مورد نظر حاوی سه شیت اصلی USER1،USER2 و USER3 خواهد بود در ادامه شیت های مورد نیاز حسب نیاز ایجاد خواهد شد.




http://exceliran.com/up/up/451d69978666020eae6127ec62c64d1c.jpg (http://www.exceliran.com)


ایجاد فرم:

جهت ایجاد فرم می بایست وارد محیط VBA Editor شوید برای این کار می توانید با فشردن کلید های Alt+ F11 و یا از طریق تب Developer با کلیک بر روی Visual Basic وارد شوید.



http://exceliran.com/up/up/c537b79a9862242e24b4bad1a04a5ae0.jpg (http://www.exceliran.com)


نکته:
اگر تب Developer را بر رو نوار منوی خود ندارید می بایست از قسمت File>Option>Customize Ribbon آنرا فعال نمایید کافیست تیک Developer را بزنید.



http://exceliran.com/up/up/635042c5934e6bcd8bf470b25186f9d1.jpg (http://www.exceliran.com)


بعد از ورود به محیط VBA از منوی Insert یک User Form وارد برنامه خود کنید.




http://exceliran.com/up/up/cf3d9d195178d43fc354be98fd03e8c3.jpg (http://www.exceliran.com)


فرم اضافه شده به برنامه یک فرم خام است که می بایست کنترل های مورد نیاز خود را از پنجره ToolBox به فرم خود اضافه کنید ، کنترل هایی مورد نیاز ما شامل Text Box ، Combo Box ، Label و Command Button خواهد بود.



http://exceliran.com/up/up/de422c2b6ca9670c3ea79905d6cfbb08.jpg (http://www.exceliran.com)



در قسمت نام کاربری می بایست سه کار بر فرضی User1,User2,User3 انتخاب شده و در قسمت رمزعبور پسورد موردنظر وارد گردد.
شیت جدیدی ایجاد نموده و در آن نام کاربران خود و پسورد مربوطه را وارد کنید ، این شیت را Protectdata می نامیم.




http://exceliran.com/up/up/b3fad32b70d8bf0bf5d424fa541f27c5.jpg (http://www.exceliran.com)


ستون A شامل نام کاربری و ستون B پسورد مربوط به هر نام است.

~M*E*H*D*I~
2014/05/13, 17:25
http://exceliran.com/up/up/a5a79af4d193ff15c477cbf51f8d397a.jpg (http://www.exceliran.com)


مخفی کردن کاراکتر های پسورد:
معمولا در هنگام وارد کردن پسورد کاراکتر هایی که وارد می کنید به صورت ستاره نمایش داده می شود ، فرمی که طراحی کرده ایم نیز از این قاعده مستثنی نیست لذا تنظیم لازم را می بایست اجرا کنید.
تکست باکس ایجاد شده در فرم را انتخاب کنید و در پنجره properties در بخش Appearance گزینه Passwordchar را به صورت ستاره (*) (Shift+8) را وارد کنید
نکته : اگر بعد از انتخاب textbox پنجره properties را مشاهده نمیکنید کلید F4 را بفشارید.



http://exceliran.com/up/up/945e0d0160a3e747d2586450abd621bc.jpg (http://www.exceliran.com)



تنظیم کمبوباکس حاوی نام های کاربری:

جهت وارد کردن نام کاربری در کمبوباکس محدوده نام های کاربری را در شیت Protectdata می بایست نامگذاری کنیم اما ممکن است لازم باشد تعداد کاربرها افزایش یابد لذا نامگذاری بایست داینامیک باشد به نحوی که با گسترش محدوده نامگذاری نیز توسعه یابد.



http://exceliran.com/up/up/a74493b9af674b84fdd7024609df3b63.jpg (http://www.exceliran.com)


برای نام گذاری محدوده از فرمول offset کمک می گیریم:

=OFFSET(Protectdata!$A$1;1;0;COUNTA(Protectdata!$A :$A)-1;1)

در همین مرحله محدوده شامل نام های کاربری و نام های عبور را نیز به نام list نام گذاری می کنیم که کاربرد آن را در ادامه خواهید دید:

=OFFSET(Protectdata!$A$1;1;0;COUNTA(Protectdata!$A :$A)-1;2)



http://exceliran.com/up/up/97a056017a2a403ac1a5ad8ef7c4032c.jpg (http://www.exceliran.com)


در مرحله بعد می بایست این محدوده را به کمبوباکس ایجاد شده در فرم اختصاص دهید لذا مجددا به محیط VBA برگشته ، کمبوباکس را انتخاب نموده و در پنجره properties بخش Data در کادر روبروی Data source عبارت User را وارد کنید.



http://exceliran.com/up/up/b997562025515b5bd03b20f7661870c4.jpg (http://www.exceliran.com)



نکته : برای جلوگیری از تایپ در کادر کمبوباکس خصوصیت Style کمبوباکس را به fmStyleDropDownList تغییر دهید.

~M*E*H*D*I~
2014/05/15, 17:32
http://exceliran.com/up/up/3b5411d7efb9aa2af003bfe5a9c7db00.jpg (http://www.exceliran.com)


جهت محافظت از شیت ها می بایست شیت های مربوط به کاربران از دید سایرین مخفی بوده و هر فرد تنها با دادن پسورد صحیح قادر به مشاهده شیت مختص به خود باشد.ابتدا شیت جدیدی تحت عنوان Welcom ایجاد کنید ، برای مخفی کردن شیتهای حاوی اطلاعات می بایست حداقل یک شیت در اکسل مخفی نباشد در محیط VBA Editor در Workbook کد زیر را بنویسید.




http://exceliran.com/up/up/8bfeb59dba4795635a90fcc91b06532e.jpg (http://www.exceliran.com)




Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim sheet As Worksheet
Application.DisplayAlerts = False
For Each sheet In Worksheets
Select Case sheet.Name
Case "Welcome"
Case Else
Sheets(sheet.Name).Visible = xlVeryHidden
End Select
Next sheet
If Me.Saved = False Then Me.Save
ActiveWorkbook.Close
End Sub

جهت اجرای این کد از رویداد (Event ) Workbook_BeforeClose استفاده شده است ، این رویداد باعث می شود قبل از بسته شدن ورک بوک عملیاتی که مدنظر است اجرا گردد.به طور خلاصه این کد کلیه شیت های ورک بوک جاری بجز شیت welcome را مخفی می نماید. در ادامه به توضیح خط به خط کد می پردزیم:

قصد داریم به هنگام بسته شدن فایل پیغامی در خصوص ذخیره سازی فایل صادر نگردد لذا از کد زیر استفاده می کنیم


Application.DisplayAlerts = False

درصورتی بخواهیم پیغام های اکسل نمایش داده شود می بایست در انتهای رویه عبارت زیر را بیفزاییم:


Application.DisplayAlerts = True

نکته دیگر اینکه عدم نمایش پیغام تنها با کد فوق میسر نمیگردد بلکه می بایست کد زیر را نیز در انتهای رویه بنویسیم:



ActiveWorkbook.Close

این کد ورک بوک جاری را خواهد بست.
اما عدم نمایش پیغام ممکن است منجر به عدم ذخیره و از دست رفتن اطلاعات گردد لذا می بایست به هنگام بسته شدن اطلاعات نیز ذخیره گردد:


If Me.Saved = False Then Me.Save

به طور کلی رویه زیر عملیات ذخیره سازی و بستن فایل را بدون صدور پیغام انجام خواهد داد، لازم به ذکر است استفاده از این بخش اختیاری بوده و عدم استفاده از آن خللی در مقصود اصلی یعنی ایجاد سطح دسترسی وارد نخواهد کرد:



Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.DisplayAlerts = False
If Me.Saved = False Then Me.Save
ActiveWorkbook.Close
End Sub

قسمت دیگر رویه شیت های فایل را پیمایش کرده و غیر از شیت Welcome سایر شیت ها را مخفی می نماید:


For Each sheet In Worksheets
Select Case sheet.Name
Case "Welcome"
Case Else
Sheets(sheet.Name).Visible = xlVeryHidden
End Select
Next sheet

جهت پیمایش همه شیت ها در ابتدای رویه متغیری به نام sheet از نوع worksheet را تعریف کرده ایم


Dim sheet As Worksheet

حلقه فوق شیت ها را بر اساس نام پیمایش نموده و در صورتی که نام شیت Welcome نباشد آنرا مخفی می نماید


Sheets(sheet.Name).Visible = xlVeryHidden

mahan77
2014/05/21, 23:49
آقا مهدی زحمت بقیشو نمیکشی؟

~M*E*H*D*I~
2014/06/03, 10:12
آقا مهدی زحمت بقیشو نمیکشی؟

در این تایپیک تنها بخش های ابتدایی مطرح شد جزوه کامل طی یکی دو روز آینده تقدیم میشه

علی فاطمی
2014/06/03, 10:36
در این تایپیک تنها بخش های ابتدایی مطرح شد جزوه کامل طی یکی دو روز آینده تقدیم میشه

بسیار عالی منتظر هستیم

~M*E*H*D*I~
2014/06/11, 20:21
بسیار عالی منتظر هستیم


آقا مهدی زحمت بقیشو نمیکشی؟

مباحث تکمیلی به صورت پکیج آموزشی در لینک زیر

پکیج آموزشی ایجاد فایل چندکاربره با سطح دسترسی مشخص (http://forum.exceliran.com/showthread.php?t=4732&p=23984#post23984)

حسینعلی
2014/06/14, 20:40
اقا مهدی جزوه اماده نشده هنوز؟
میشه این فایل را اپلود کنید؟

~M*E*H*D*I~
2014/06/14, 20:47
اقا مهدی جزوه اماده نشده هنوز؟
میشه این فایل را اپلود کنید؟

آماده شده و در فروشگاه قرار گرفته پست قبل که لینک دادم

atrin6040
2014/10/15, 08:59
با سلام چجوری باید خرید کرد لطفا لینک خرید را قرار بدید من نتونستم از فروشگاه پیدا کنم

~M*E*H*D*I~
2014/10/15, 09:19
با سلام چجوری باید خرید کرد لطفا لینک خرید را قرار بدید من نتونستم از فروشگاه پیدا کنم

درود
دوست عزیز از لینک زیر اقدام کنید

آموزش ایجاد فایل چندکاربره با سطح دسترسی مشخص

به لینک زیر هم توجه کنید

(http://www.exceliran.com/downloads/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF-%D9%81%D8%A7%DB%8C%D9%84-%DA%86%D9%86%D8%AF%DA%A9%D8%A7%D8%B1%D8%A8%D8%B1%D 9%87-%D8%A8%D8%A7-%D8%B3%D8%B7%D8%AD-%D8%AF%D8%B3%D8%AA%D8%B1/)http://forum.exceliran.com/showthread.php/4732-%D9%BE%DA%A9%DB%8C%D8%AC-%D8%A2%D9%85%D9%88%D8%B2%D8%B4%DB%8C-%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF-%D9%81%D8%A7%DB%8C%D9%84-%DA%86%D9%86%D8%AF%DA%A9%D8%A7%D8%B1%D8%A8%D8%B1%D 9%87-%D8%A8%D8%A7-%D8%B3%D8%B7%D8%AD-%D8%AF%D8%B3%D8%AA%D8%B1%D8%B3%DB%8C-%D9%85%D8%B4%D8%AE%D8%B5?p=23984#post23984

atrin6040
2014/10/15, 10:18
درود
دوست عزیز از لینک زیر اقدام کنید

آموزش ایجاد فایل چندکاربره با سطح دسترسی مشخص

به لینک زیر هم توجه کنید

(http://www.exceliran.com/downloads/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF-%D9%81%D8%A7%DB%8C%D9%84-%DA%86%D9%86%D8%AF%DA%A9%D8%A7%D8%B1%D8%A8%D8%B1%D 9%87-%D8%A8%D8%A7-%D8%B3%D8%B7%D8%AD-%D8%AF%D8%B3%D8%AA%D8%B1/)http://forum.exceliran.com/showthread.php/4732-%D9%BE%DA%A9%DB%8C%D8%AC-%D8%A2%D9%85%D9%88%D8%B2%D8%B4%DB%8C-%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF-%D9%81%D8%A7%DB%8C%D9%84-%DA%86%D9%86%D8%AF%DA%A9%D8%A7%D8%B1%D8%A8%D8%B1%D 9%87-%D8%A8%D8%A7-%D8%B3%D8%B7%D8%AD-%D8%AF%D8%B3%D8%AA%D8%B1%D8%B3%DB%8C-%D9%85%D8%B4%D8%AE%D8%B5?p=23984#post23984


دوست عزیز من خرید آنلاین کلیک می کنم هیچ اتفاقی نمی افته لطفا خودتون چک کنید ببینید سالم هست باتشکر

Amir Ghasemiyan
2014/10/15, 10:30
دوست عزیز من خرید آنلاین کلیک می کنم هیچ اتفاقی نمی افته لطفا خودتون چک کنید ببینید سالم هست باتشکر

دوست عزيز ظاهرا يك نقص فني پيش آمده تا رفع نقص فني شما ميتونيد مستقيما از صفحه اصلي فروشگاه خريد رو انجام بدين
به اين ترتيب كه بر روي دكمه افزودن به سبد خريد كليك كنيد تا محصول در سبد خريد شما قرار بگيره. بعد از منوي سمت راست در قسمت سبد خريد دكمه پرداخت رو بزنين تا مراحل پرداخت انجام بشه.
با تشكر

atrin6040
2014/10/15, 10:50
افزودن به سبد خريد دقیقا کجاست پیدا نمیکنم پیشنهاد میکنم ابتدا خودتون چک کنید

atrin6040
2014/10/15, 10:53
حل شد مرسی

Amir Ghasemiyan
2014/10/15, 10:54
افزودن به سبد خريد دقیقا کجاست پیدا نمیکنم پیشنهاد میکنم ابتدا خودتون چک کنید



فكر ميكنم خودتون پيدا كردين. درسته؟

atrin6040
2014/10/16, 09:40
با سلام پسورد فایل پیوست رو هرچی میزنم قبول نمیکنه مگه اینطور نیست که :
User1=123u1
User2=123u2
User3=123u3
administrator=??
با تشکر

~M*E*H*D*I~
2014/10/16, 10:25
با سلام پسورد فایل پیوست رو هرچی میزنم قبول نمیکنه مگه اینطور نیست که :
User1=123u1
User2=123u2
User3=123u3
administrator=??
با تشکر

User1 : 1
User2 : 12345
User3 : 123
Admin : Adminpass

atrin6040
2014/10/16, 11:47
ضمن تشکر یه سوال قسمت دسترسی به نام کاربران و دسترسی به کل برنامه بازم پسورد میخاد
و دیگه اینکه پسورد خود یوزر ادمین را چجوری باید تغییر بدم

atrin6040
2014/10/21, 07:53
ضمن تشکر یه سوال قسمت دسترسی به نام کاربران و دسترسی به کل برنامه بازم پسورد میخاد
و دیگه اینکه پسورد خود یوزر ادمین را چجوری باید تغییر بدم

با سلام و خسته نباشید
من یه سوالی کرده بودم ظاهرا فراموش شده در جواب دهی ، لطفا پاسخ سوال رو بدید
با تشکر

s.moradnia
2014/10/21, 11:51
سلام خسته نباشید من پسورت شیت welcome رو میخوام

khakzad
2014/10/21, 11:54
دوستان به آقای وطن پرست (m*e*h*d*i) پیام خصوصی بدید
سرشون شلوغه
فکر کنم فعلا سایت تشریف نمیارن

~M*E*H*D*I~
2014/10/21, 11:58
ضمن تشکر یه سوال قسمت دسترسی به نام کاربران و دسترسی به کل برنامه بازم پسورد میخاد
و دیگه اینکه پسورد خود یوزر ادمین را چجوری باید تغییر بدم

درود
شرمنده من سوال رو ندیده بودم
وقتی به صورت ادمین میخواید وارد بشید پنجره ای باز میشه که پسورد رو میخواد در محیط VBA این فرم با نام Adminpassword نام گذاری شده برای این فرم کد زیر نوشته شده


Private Sub CommandButton1_Click()
Dim PassWord As String
Dim OK
PassWord = AdminPassword.TextBox1.Value

If PassWord = "Adminpass" Then
AdminPassword.Hide
UserForm3.Show
Else
OK = MsgBox("You're not authorized -Do you want close Program?", vbInformation + vbYesNo)
If OK = 7 Then
coun = coun + 1
If coun <= 3 Then
Exit Sub
Else
ThisWorkbook.Close
End If
End If
End If
AdminPassword.TextBox1.Value = ""
End Sub

در خط زیر پسورد ادمین نوشته شده

If PassWord = "Adminpass" Then

میتونید تغییرش بدید

~M*E*H*D*I~
2014/10/21, 12:02
سلام خسته نباشید من پسورت شیت welcome رو میخوام

با درود

صفحه welcom برای جلوگیری از دستکاری شکل ها پروتکت شده در Module1 کد زیر نوشته شده


Sub Protect()

Set oSheet = ActiveSheet

For Each oShape In oSheet.Shapes

oShape.Locked = True

Next oShape

oSheet.Protect PassWord:="SECRET", DrawingObjects:=True, Contents:=True, Scenarios:=True

End Sub

پسورد در بخش
PassWord:="SECRET" قابل دسترس هست

~M*E*H*D*I~
2014/10/21, 12:16
ضمن تشکر یه سوال قسمت دسترسی به نام کاربران و دسترسی به کل برنامه بازم پسورد میخاد
و دیگه اینکه پسورد خود یوزر ادمین را چجوری باید تغییر بدم

برای بخش دوم سوال در userform3 یا همون صفحه مدیریت دو ثابت تعریف شده که پسوردهایی مورد نظر رو از شما میخواد ، در واقع این بخش نیاز نبوده ولی خب برای کسایی که خیلی وسواس دارن این بخش رو اضافه گفتم


Const Tadminpass As String = "123456789"
Const Uadminpass As String = "987654321"

اگر کدهارو خط به خط مرور میکردید متوجه این موضوع میشدید

s.moradnia
2014/10/22, 11:06
سلام من یه مشکلی با این فایل دارم وقتی در صفحه welcom روی خروج کلیک میکنم پیغام microsoft office excel has stop working میده.کسی میدونه مشکلش چیه؟

dina1355
2014/11/03, 14:12
من هر چی دقت کردم لینکش را ندیدم

Amir Ghasemiyan
2014/11/03, 14:29
من هر چی دقت کردم لینکش را ندیدم

به پست شماره 12 رجوع كنيد دوست عزيز

fmalonet
2017/06/10, 00:21
مباحث تکمیلی به صورت پکیج آموزشی در لینک زیر

پکیج آموزشی ایجاد فایل چندکاربره با سطح دسترسی مشخص (http://forum.exceliran.com/showthread.php?t=4732&p=23984#post23984)


با سلام لینک پکیج ایجاد فایل چند کاربر با سطح دسترسی در اکسل وود ندارد لطفا لینک فایل را قرار دهید

kayvan33
2017/08/23, 16:18
با سلام و احترام
من این فایل رو که زحمت بسیاری کشیده شده براش رو خریداری کردم فقط یه قسمت مشکل دارم
اگه بخوام قسمت آپدیت پسورد به جای یک ستون چند ستون داشته باشم چه کاری باید انجام بدم
منظورم قسمت Offset هست:wcom:

فیفتی
2017/08/25, 00:19
کدوم فایل؟
فایلشو نذاشتید


با سلام و احترام
من این فایل رو که زحمت بسیاری کشیده شده براش رو خریداری کردم فقط یه قسمت مشکل دارم
اگه بخوام قسمت آپدیت پسورد به جای یک ستون چند ستون داشته باشم چه کاری باید انجام بدم
منظورم قسمت Offset هست:wcom:

mostafa1053
2018/12/05, 17:08
سلام
من این محصول فوق العاده مفید رو خریداری کردم ، یه سوال درموردش دارم چطور میتونم برای هر کاربر بیش از یک شیت رو باز کرد مثلا user1 صفحه های Salery و salery report رو باز کنه و user2 صفحه های personel و personel report رو باز کنه ؟

~M*E*H*D*I~
2018/12/06, 11:27
سلام
من این محصول فوق العاده مفید رو خریداری کردم ، یه سوال درموردش دارم چطور میتونم برای هر کاربر بیش از یک شیت رو باز کرد مثلا user1 صفحه های Salery و salery report رو باز کنه و user2 صفحه های personel و personel report رو باز کنه ؟

سلام اگر با VBA آشنا باشید کار مشکلی نیست کافیه به تعداد شیت مورد نیاز کدی که برای شیت user1 باز میشه تکرار کنید و در هر تکرار تنها نام شیت رو تغییر بدید

payman.xxp
2019/01/03, 13:10
سلام، قبل از تهیه یک سوال برایم پیش آمد.
آیا قابلیت استفاده همزمان برای چند کاربر در شبکه در این آموزش پیاده سازی شده است؟
لطفا راهنمایی فرمایید
با سپاس

Ali Yaser20
2019/01/08, 21:23
سلام میشه فتیل رو واسه من هم بفرستید بی زحمت