دسترسی سریع

لینکهای مفید

دانلود آفیس باز

استفاده از کد نویسی VLOOKUP در زمان ورود داده تکراری

برای استفاده از  کد نویسی VLOOKUP هنگام ورود داده تکراری فرض می کنیم داده ای مشابه جدول زیر داریم و می خواهیم وقتی در ستون A کد کالا را وارد کردیم ، اکسل بررسی کند ببیند آیا این کد قبلا در ستون A وارد شده است یا خیر.

اگر وارد شده بود و وجود داشت با استفاده از تابع VLOOKUP داده های مربوطه یعنی نام کالا و تعداد مطابق آن را خودکار وارد کند و در غیر اینصورت چیزی وارد نکند.

VLOOKUP و داده های تکراری

همانطور که در تصویر بالا می بینید و توضیح دادیم ، می خواهیم به عنوان مثال اگر در سلول A6 عددی وارد شده ، بررسی کند و ببینید قبلا وارد شده است یا نه ، اگر بله داده های متناظر را نمایش دهد و در غیر اینصورت چیزی نمایش ندهد.

تابع کد نویسی VLOOKUP

خب همانطور که مشخص است نمی توانیم در سلولی فرمولی بنویسیم که این کار را انجام دهد یا حد اقل الان به ذهن من نمیرسه و مجبورم کدنویسی کنم 🙂

برای این منظور باید دو مرحله انجام دهیم که مرحله اول ، بررسی وجود داده تکراری است 

و مرحله دوم فراخوانی اطلاعات در صورت تکراری بودن داده وارد شده.

مراحل انجام کار

برای انجام مسئله کافیست مراحل زیر را انجام دهید و کد نویسی VLOOOKUP را انجام دهید ، اگر با کد نویسی آشنا نیستید مشکلی وجود ندراد و هیچ نیازی نیست که منطق کدهای نوشته شده را درک کنید .

  1. فایل اکسل خود را باز کنید ( سعی کنید در آن واحد فقط همین یک فایل اکسل باز باشد )
  2. کلیدهای ترکیبی Alt + F11 را بزنید تا وارد قسمت کد نویسی شوید.
  3. روی گزینه ThisWorkbook که سمت چپ نشان داده شده است کلیک کنید.
  4. لیست باکس اول را که نوشته General را به Workbook تغییر دهید.
  5. لیست باکس دوم را روی SheetChange قرار دهید.
  6. کدهای زیر را کپی کرده و در آن قسمت پیست کنید .
  7. حالا کد نویسی VLOOKUP برای داده های تکراری تمام و است تغییرات جزئی باید انجام دهید.
    On Error Resume Next
    If Intersect(Target, Sheet1.Range("A2:A200")) Is Nothing Or Target.Cells.Count > 1 Then Exit Sub
    If IsEmpty(Target) Then Exit Sub
    
    If WorksheetFunction.CountIf(Sheet1.Range("A2:A200"), Target.Value) > 1 Then
    
        Sheet1.Range("B" & ActiveCell.Row - 1).Value = _
            Application.WorksheetFunction.VLookup(Sheet1.Range("A" & ActiveCell.Row _
            - 1), Sheet1.Range("A2:E20"), 2, False)
            
        Sheet1.Range("C" & ActiveCell.Row - 1).Value = _
            Application.WorksheetFunction.VLookup(Sheet1.Range("A" & ActiveCell.Row _
            - 1), Sheet1.Range("A2:E20"), 3, False)

    End If
کد نویسی VLOOKUP

نکات مهم و تغییر کد ها

بدیهی است که کدها متناسب با فایل تمرینی بنده نوشته شده و شما باید برابر با فایل خودتان کدها را تغییر دهید که البته کار سختی هم نیست ، اگر نام شیت شما با Sheet1 فرق می کرد هرجا که نوشته شده Sheet1 آن را با نام شیت خود تغییر دهید و اگر کدهای شما جایی به غیر از A2:A200 وارد می شود آن را هم تغییر دهید .

و فراموش نکنید که این داده ها دارای دو ستون است و کد نویسی VLOOKUP فقط برای دو ستون انجام شده است و اگر بخواهید اضافه کنید باید کدها را متناسب با تعداد ستونهای خود تغییر دهید.

فراموش نکنید که در انتها فایل خود را به صورت ماکرواینیبل ذخیره کنید .

همانطور که قبلا هم بارها گفتم برای حل مسائل در اکسل همیشه راههای مختلفی وجود دارد و این راه حل راهی است که الان به ذهن من می رسد و اگر شما فکر می کنید راه بهتری وجود دارد که مجبور به کد نویسی VLOOKUP نباشیم ، حتما در قسمت نظرات عنوان نمائید .

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

5/5 - (2 امتیاز)
باکس دانلود

این آموزش فاقد فایلی برای دانلود می باشد

1 1 امتیاز
امتیاز این آموزش
دنبال کردن
اطلاع رسانی به
guest

1 دیدگاه
پر امتیاز ترین
جدیدترین قدیمی ترین
Inline Feedbacks
مشاهده همه دیدگاهها

دانلود رایگان !!

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

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

happy holidays

we want to hear from you

https://officebaz.ir/product-category/excel/