اكسل vba ماكرو | كيفية اضافة شيت جديد لكل عميل والتاكد من ان العميل غير موجود مسبقا EXCEL | Check If Sheet Exist

بسم الله الرحمن الرحيم 
اهلا بكم متابعى موقع عالم الاوفيس


درس جديد وكود جديد من اكواد اكسل vba

كيفية اضافة شيت جديد والتاكد من ان الشيت غير موجود مسبقا

 

كثيرا من نصادف فى بعض اعمالنا اننا نريد اضافة مجموعة من اوراق العمل لكل عميل ورقة عمل خاصة بة فيها جميع بياناتة وحساباتة اذا كان دائن او مدين وعنوانة ورقم الهاتف وما الى ذلك من بيانات مهمة وضورورية وايضا مسحوباتة اليومية 
فكان لابد لنا من اضافة ورقة عمل خاصة بكل عميل  ونسمى ورقة العمل باسم العميل .


فماذا لو اننا اخطانا وفتحنا شيت جديد باسم عميل موجود مسبقا (خطا وارد الحدوث)


من خلال هذا الكود سنقوم باضافة ورقة عمل جديدة باسم عميل جديد ولكن قبل البدء فى اضافة اسم العميل يقوم بفحص جميع اوراق العمل الموجودة لدينا فى ملف العمل اذا كان اسم العميل موجود مسبقا يتم اعطاء رسالة Msgbox  بان العميل موجود مسبقا اما اذا كان العميل غير موجود لة ورقة باسمة يتم فتح ورقة عمل جديدة بالاسم الجديد والعميل الجديد.

والان مع الكود 



Sub checksheetexist()
Dim ws As Worksheet
Dim shname As String
Dim i As Long


  i = Sheets.Count
 
  shname = InputBox("من فضلك ادخل اسم العميل", "الادمن")

     For i = 1 To i
        If Sheets(i).Name = shname Then
         MsgBox "عفوا " & shname & "موجود بالفعل"
        
         Exit Sub
          End If
        
         Next i
 Sheets.Add after:=Sheets(Sheets.Count)
 ActiveSheet.Name = shname
 MsgBox "لقد تم اضافة " & shname
Sheet1.Activate

End Sub



كود سهل وبسيط جدا سيفيدنا فى جميع اعمالنا

لتحميل ملف العمل من هنا


لمشاهدة شرح كيفية عمل الكود

 


Emad ghazi
كاتب المقالة
كاتب ومحرر اخبار اعمل في موقع عالم الاوفيس .

جديد قسم : اكسل متقدم

  1. ممتاز جداً يااستاذ عماد تمنياتنا لك بالتوفيق والنجاح المستمر

    ردحذف
  2. شكرا أخي عماد على كل المعلومات القيمة وفي ميزان حسناتك انشاء الله

    ردحذف