یک کتابخانه Apps Script بسازید که می توانید از آن برای حذف ردیف های تکراری در داده های صفحه گسترده استفاده کنید.
اهداف
- اسکریپت را تنظیم کنید
- اسکریپت را اجرا کنید.
پیش نیازها
برای استفاده از این نمونه به پیش نیازهای زیر نیاز دارید:
- یک حساب Google (حسابهای Google Workspace ممکن است به تأیید سرپرست نیاز داشته باشند).
- یک مرورگر وب با دسترسی به اینترنت.
اسکریپت را تنظیم کنید
برای ساخت کتابخانه مراحل زیر را انجام دهید:
- به حساب Google خود وارد شوید.
- برای باز کردن ویرایشگر اسکریپت، به script.google.com بروید.
- در بالا سمت راست، روی پروژه جدید کلیک کنید.
هر کدی را در ویرایشگر اسکریپت حذف کنید و کد زیر را جایگذاری کنید.
روی ذخیره کلیک کنید .
در بالا سمت راست، روی پروژه بدون عنوان کلیک کنید.
اسکریپت خود را نامگذاری کنید . ردیف های تکراری را حذف کنید و روی تغییر نام کلیک کنید.
روی Deploy > New Deployment کلیک کنید.
در کنار Select type روی Enable Deployment Types کلیک کنید > کتابخانه
شرحی از کتابخانه را وارد کنید، مانند حذف ردیفهای تکراری . هر کسی که به کتابخانه دسترسی داشته باشد می تواند این توضیحات را مشاهده کند.
روی Deploy کلیک کنید.
در سمت چپ، روی تنظیمات پروژه کلیک کنید .
در بخش شناسهها ، شناسه اسکریپت را برای استفاده در مرحله بعد کپی کنید.
اسکریپت را اجرا کنید
برای استفاده از کتابخانه، باید حداقل مجوزهای مشاهده پروژه Apps Script آن را داشته باشید. از زمانی که کتابخانه را ایجاد کردید، مجوزهای لازم برای استفاده از آن را دارید. اگر میخواهید به دیگران اجازه دهید از کتابخانه استفاده کنند، به آنها اجازه مشاهده پروژه Apps Script را بدهید.
برای استفاده از کتابخانه مراحل زیر را انجام دهید:
- صفحهگسترده Google Sheets را باز کنید که دارای دادههایی با ردیفهای تکراری است. برای استفاده از صفحهگسترده نمونه، از صفحهگسترده ردیفهای تکراری نمونه کپی کنید .
- روی برنامههای افزودنی > اسکریپت برنامهها کلیک کنید.
- در کنار کتابخانه ها ، روی افزودن کتابخانه کلیک کنید.
- در بخش Script ID ، شناسه اسکریپت را از پروژه کتابخانه Apps Script که در بخش قبلی کپی کردهاید، جایگذاری کنید.
- روی Look up کلیک کنید.
- در بخش Version ، 1 را انتخاب کنید.
- روی افزودن کلیک کنید.
هر کدی را در ویرایشگر اسکریپت حذف کنید و کد زیر را جایگذاری کنید.
function runLibrary() { Removeduplicaterows.removeDuplicates(); }
در منوی تابع، runLibrary را انتخاب کنید.
روی Run کلیک کنید.
برای مشاهده داده های به روز شده بدون ردیف های تکراری، به صفحه گسترده بازگردید.
کد را مرور کنید
برای بررسی کد Apps Script برای این راه حل، روی مشاهده کد منبع در زیر کلیک کنید:
کد منبع را مشاهده کنید
ابتدا اسکریپت یک تماس با صفحه گسترده برقرار می کند تا همه داده ها را بازیابی کند. شما می توانید انتخاب کنید که برگه را ردیف به ردیف بخوانید، اما عملیات جاوا اسکریپت به طور قابل توجهی سریعتر از صحبت کردن با سرویس های دیگر مانند صفحه گسترده است. هرچه تماس های کمتری داشته باشید، سریع تر می شود. این مهم است زیرا هر اجرای اسکریپت حداکثر 6 دقیقه زمان اجرا دارد.
data
متغیر یک آرایه دو بعدی جاوا اسکریپت است که حاوی تمام مقادیر موجود در برگه است. newData
یک آرایه خالی است که اسکریپت تمام ردیف های غیر تکراری را در آن قرار می دهد.
اولین حلقه for
روی هر ردیف در آرایه دو بعدی data
تکرار می شود. برای هر ردیف، حلقه دوم آزمایش می کند که آیا ردیف دیگری با داده های منطبق از قبل در آرایه newData
وجود دارد یا خیر. اگر تکراری نباشد، ردیف به آرایه newData
فشار داده میشود.
در نهایت، اسکریپت محتوای موجود شیت را حذف می کند و محتوای آرایه newData
را درج می کند.
اصلاحات
شما می توانید کتابخانه را تا آنجایی که می خواهید متناسب با نیاز خود ویرایش کنید. در زیر یک اصلاح اختیاری است.
ردیف هایی با داده های منطبق در برخی از ستون ها را حذف کنید
به جای حذف سطرهایی که به طور کامل مطابقت دارند، ممکن است بخواهید ردیف هایی را با داده های منطبق فقط در یک یا دو ستون حذف کنید. برای انجام این کار، می توانید دستور شرطی را تغییر دهید.
در کد نمونه، خط زیر را به روز کنید:
if(row.join() == newData[j].join()){ duplicate = true; }
خط را با کد زیر جایگزین کنید:
if(row[0] == newData[j][0] && row[1] == newData[j][1]){ duplicate = true; }
عبارت شرطی بالا هر بار که دو سطر دارای داده های یکسان در ستون های اول و دوم شیت هستند، موارد تکراری را پیدا می کند.
مشارکت کنندگان
این نمونه توسط Romain Vialard، یک متخصص توسعه دهنده گوگل ایجاد شده است. رومن را در توییتر @romain_vialard دنبال کنید.
این نمونه توسط گوگل با کمک کارشناسان توسعه دهنده گوگل نگهداری می شود.
مراحل بعدی
،یک کتابخانه Apps Script بسازید که می توانید از آن برای حذف ردیف های تکراری در داده های صفحه گسترده استفاده کنید.
اهداف
- اسکریپت را تنظیم کنید
- اسکریپت را اجرا کنید.
پیش نیازها
برای استفاده از این نمونه به پیش نیازهای زیر نیاز دارید:
- یک حساب Google (حسابهای Google Workspace ممکن است به تأیید سرپرست نیاز داشته باشند).
- یک مرورگر وب با دسترسی به اینترنت.
اسکریپت را تنظیم کنید
برای ساخت کتابخانه مراحل زیر را انجام دهید:
- به حساب Google خود وارد شوید.
- برای باز کردن ویرایشگر اسکریپت، به script.google.com بروید.
- در بالا سمت راست، روی پروژه جدید کلیک کنید.
هر کدی را در ویرایشگر اسکریپت حذف کنید و کد زیر را جایگذاری کنید.
روی ذخیره کلیک کنید .
در بالا سمت راست، روی پروژه بدون عنوان کلیک کنید.
اسکریپت خود را نامگذاری کنید . ردیف های تکراری را حذف کنید و روی تغییر نام کلیک کنید.
روی Deploy > New Deployment کلیک کنید.
در کنار Select type روی Enable Deployment Types کلیک کنید > کتابخانه
شرحی از کتابخانه را وارد کنید، مانند حذف ردیفهای تکراری . هر کسی که به کتابخانه دسترسی داشته باشد می تواند این توضیحات را مشاهده کند.
روی Deploy کلیک کنید.
در سمت چپ، روی تنظیمات پروژه کلیک کنید .
در بخش شناسهها ، شناسه اسکریپت را برای استفاده در مرحله بعد کپی کنید.
اسکریپت را اجرا کنید
برای استفاده از کتابخانه، باید حداقل مجوزهای مشاهده پروژه Apps Script آن را داشته باشید. از زمانی که کتابخانه را ایجاد کردید، مجوزهای لازم برای استفاده از آن را دارید. اگر میخواهید به دیگران اجازه دهید از کتابخانه استفاده کنند، به آنها اجازه مشاهده پروژه Apps Script را بدهید.
برای استفاده از کتابخانه مراحل زیر را انجام دهید:
- صفحهگسترده Google Sheets را باز کنید که دارای دادههایی با ردیفهای تکراری است. برای استفاده از صفحهگسترده نمونه، از صفحهگسترده ردیفهای تکراری نمونه کپی کنید .
- روی برنامههای افزودنی > اسکریپت برنامهها کلیک کنید.
- در کنار کتابخانه ها ، روی افزودن کتابخانه کلیک کنید.
- در بخش Script ID ، شناسه اسکریپت را از پروژه کتابخانه Apps Script که در بخش قبلی کپی کردهاید، جایگذاری کنید.
- روی Look up کلیک کنید.
- در بخش Version ، 1 را انتخاب کنید.
- روی افزودن کلیک کنید.
هر کدی را در ویرایشگر اسکریپت حذف کنید و کد زیر را جایگذاری کنید.
function runLibrary() { Removeduplicaterows.removeDuplicates(); }
در منوی تابع، runLibrary را انتخاب کنید.
روی Run کلیک کنید.
برای مشاهده داده های به روز شده بدون ردیف های تکراری، به صفحه گسترده بازگردید.
کد را مرور کنید
برای بررسی کد Apps Script برای این راه حل، روی مشاهده کد منبع در زیر کلیک کنید:
کد منبع را مشاهده کنید
ابتدا اسکریپت یک تماس با صفحه گسترده برقرار می کند تا همه داده ها را بازیابی کند. میتوانید برگهها را ردیف به ردیف بخوانید، اما عملیات جاوا اسکریپت به طور قابلتوجهی سریعتر از صحبت با سرویسهای دیگر مانند صفحه گسترده است. هرچه تماس های کمتری داشته باشید، سریع تر می شود. این مهم است زیرا هر اجرای اسکریپت حداکثر 6 دقیقه زمان اجرا دارد.
data
متغیر یک آرایه دو بعدی جاوا اسکریپت است که حاوی تمام مقادیر موجود در برگه است. newData
یک آرایه خالی است که اسکریپت تمام ردیف های غیر تکراری را در آن قرار می دهد.
اولین حلقه for
روی هر ردیف در آرایه دو بعدی data
تکرار می شود. برای هر ردیف، حلقه دوم آزمایش می کند که آیا ردیف دیگری با داده های منطبق از قبل در آرایه newData
وجود دارد یا خیر. اگر تکراری نباشد، ردیف به آرایه newData
فشار داده میشود.
در نهایت، اسکریپت محتوای موجود شیت را حذف می کند و محتوای آرایه newData
را درج می کند.
اصلاحات
شما می توانید کتابخانه را تا آنجایی که می خواهید متناسب با نیاز خود ویرایش کنید. در زیر یک اصلاح اختیاری است.
ردیف هایی با داده های منطبق در برخی از ستون ها را حذف کنید
به جای حذف سطرهایی که به طور کامل مطابقت دارند، ممکن است بخواهید ردیف هایی را با داده های منطبق فقط در یک یا دو ستون حذف کنید. برای انجام این کار، می توانید دستور شرطی را تغییر دهید.
در کد نمونه، خط زیر را به روز کنید:
if(row.join() == newData[j].join()){ duplicate = true; }
خط را با کد زیر جایگزین کنید:
if(row[0] == newData[j][0] && row[1] == newData[j][1]){ duplicate = true; }
عبارت شرطی بالا هر بار که دو سطر دارای داده های یکسان در ستون های اول و دوم شیت هستند، موارد تکراری را پیدا می کند.
مشارکت کنندگان
این نمونه توسط Romain Vialard، یک متخصص توسعه دهنده گوگل ایجاد شده است. رومن را در توییتر @romain_vialard دنبال کنید.
این نمونه توسط گوگل با کمک کارشناسان توسعه دهنده گوگل نگهداری می شود.
مراحل بعدی
،یک کتابخانه Apps Script بسازید که می توانید از آن برای حذف ردیف های تکراری در داده های صفحه گسترده استفاده کنید.
اهداف
- اسکریپت را تنظیم کنید
- اسکریپت را اجرا کنید.
پیش نیازها
برای استفاده از این نمونه به پیش نیازهای زیر نیاز دارید:
- یک حساب Google (حسابهای Google Workspace ممکن است به تأیید سرپرست نیاز داشته باشند).
- یک مرورگر وب با دسترسی به اینترنت.
اسکریپت را تنظیم کنید
برای ساخت کتابخانه مراحل زیر را انجام دهید:
- به حساب Google خود وارد شوید.
- برای باز کردن ویرایشگر اسکریپت، به script.google.com بروید.
- در بالا سمت راست، روی پروژه جدید کلیک کنید.
هر کدی را در ویرایشگر اسکریپت حذف کنید و کد زیر را جایگذاری کنید.
روی ذخیره کلیک کنید .
در بالا سمت راست، روی پروژه بدون عنوان کلیک کنید.
اسکریپت خود را نامگذاری کنید . ردیف های تکراری را حذف کنید و روی تغییر نام کلیک کنید.
روی Deploy > New Deployment کلیک کنید.
در کنار Select type روی Enable Deployment Types کلیک کنید > کتابخانه
شرحی از کتابخانه را وارد کنید، مانند حذف ردیفهای تکراری . هر کسی که به کتابخانه دسترسی داشته باشد می تواند این توضیحات را مشاهده کند.
روی Deploy کلیک کنید.
در سمت چپ، روی تنظیمات پروژه کلیک کنید .
در بخش شناسهها ، شناسه اسکریپت را برای استفاده در مرحله بعد کپی کنید.
اسکریپت را اجرا کنید
برای استفاده از کتابخانه، باید حداقل مجوزهای مشاهده پروژه Apps Script آن را داشته باشید. از زمانی که کتابخانه را ایجاد کردید، مجوزهای لازم برای استفاده از آن را دارید. اگر میخواهید به دیگران اجازه دهید از کتابخانه استفاده کنند، به آنها اجازه مشاهده پروژه Apps Script را بدهید.
برای استفاده از کتابخانه مراحل زیر را انجام دهید:
- صفحهگسترده Google Sheets را باز کنید که دارای دادههایی با ردیفهای تکراری است. برای استفاده از صفحهگسترده نمونه، از صفحهگسترده ردیفهای تکراری نمونه کپی کنید .
- روی برنامههای افزودنی > اسکریپت برنامهها کلیک کنید.
- در کنار کتابخانه ها ، روی افزودن کتابخانه کلیک کنید.
- در بخش Script ID ، شناسه اسکریپت را از پروژه کتابخانه Apps Script که در بخش قبلی کپی کردهاید، جایگذاری کنید.
- روی Look up کلیک کنید.
- در بخش Version ، 1 را انتخاب کنید.
- روی افزودن کلیک کنید.
هر کدی را در ویرایشگر اسکریپت حذف کنید و کد زیر را جایگذاری کنید.
function runLibrary() { Removeduplicaterows.removeDuplicates(); }
در منوی تابع، runLibrary را انتخاب کنید.
روی Run کلیک کنید.
برای مشاهده داده های به روز شده بدون ردیف های تکراری، به صفحه گسترده بازگردید.
کد را مرور کنید
برای بررسی کد Apps Script برای این راه حل، روی مشاهده کد منبع در زیر کلیک کنید:
کد منبع را مشاهده کنید
ابتدا اسکریپت یک تماس با صفحه گسترده برقرار می کند تا همه داده ها را بازیابی کند. شما می توانید انتخاب کنید که برگه را ردیف به ردیف بخوانید، اما عملیات جاوا اسکریپت به طور قابل توجهی سریعتر از صحبت کردن با سرویس های دیگر مانند صفحه گسترده است. هرچه تماس های کمتری داشته باشید، سریع تر می شود. این مهم است زیرا هر اجرای اسکریپت حداکثر 6 دقیقه زمان اجرا دارد.
data
متغیر یک آرایه دو بعدی جاوا اسکریپت است که حاوی تمام مقادیر موجود در برگه است. newData
یک آرایه خالی است که اسکریپت تمام ردیف های غیر تکراری را در آن قرار می دهد.
اولین حلقه for
روی هر ردیف در آرایه دو بعدی data
تکرار می شود. برای هر ردیف، حلقه دوم آزمایش می کند که آیا ردیف دیگری با داده های منطبق از قبل در آرایه newData
وجود دارد یا خیر. اگر تکراری نباشد، ردیف به آرایه newData
فشار داده میشود.
در نهایت، اسکریپت محتوای موجود شیت را حذف می کند و محتوای آرایه newData
را درج می کند.
اصلاحات
شما می توانید کتابخانه را تا آنجایی که می خواهید متناسب با نیاز خود ویرایش کنید. در زیر یک اصلاح اختیاری است.
ردیف هایی با داده های منطبق در برخی از ستون ها را حذف کنید
به جای حذف سطرهایی که به طور کامل مطابقت دارند، ممکن است بخواهید ردیف هایی را با داده های منطبق فقط در یک یا دو ستون حذف کنید. برای انجام این کار، می توانید دستور شرطی را تغییر دهید.
در کد نمونه، خط زیر را به روز کنید:
if(row.join() == newData[j].join()){ duplicate = true; }
خط را با کد زیر جایگزین کنید:
if(row[0] == newData[j][0] && row[1] == newData[j][1]){ duplicate = true; }
عبارت شرطی بالا هر بار که دو سطر دارای داده های یکسان در ستون های اول و دوم شیت هستند، موارد تکراری را پیدا می کند.
مشارکت کنندگان
این نمونه توسط Romain Vialard، یک متخصص توسعه دهنده گوگل ایجاد شده است. رومن را در توییتر @romain_vialard دنبال کنید.
این نمونه توسط گوگل با کمک کارشناسان توسعه دهنده گوگل نگهداری می شود.