PDA

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



Amir Ghasemiyan
2016/08/23, 19:46
سلام دوستان
همونطور که میدونین با VBA خیلی راحت میشه لیستی از شیت های موجود در یک فایل رو بدست آورد. اما روشی که من میخوام بگم بدون کمک گرفتن از VBA هست
برای اینکار ابتدا یک نام تعریف میکنیم:
(برای تعریف نام از منوی formula گزینه name manager و دکمه new رو میزنیم.)
در پنجره باز شده مطابق شکل اطلاعات را وارد میکنیم

12385

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


=SUBSTITUTE(GET.WORKBOOK(1);"["&GET.WORKBOOK(16)&"]";"")


حالا کافیه در سلول A1 فرمول زیر رو بنویسیم و درگ کنیم. با درگ کردن لیست همه شیت ها رو مشاهده میکنید.
نکته: تا جایی درگ رو ادامه بدین که به خطا برنخورید)


=INDEX(SheetNames;ROW(A1))

مجید
2016/09/14, 23:14
سلام میشه بیشتر توضیح بدید
من با انجام مراحل بالا به ارور برخورد کردم
البته نام شیت هام فارسی هست
مشکل از این هست

mokaram
2016/09/15, 07:17
سلام میشه بیشتر توضیح بدید
من با انجام مراحل بالا به ارور برخورد کردم
البته نام شیت هام فارسی هست
مشکل از این هست

دوست عزیز ایراد از نامگذاری محدوده مورد نظر شماست . بهتره قوانین نامگذاری را رعایت کنید. ( نگاهی به لینک زیر بندازید )

نامگذاری (http://forum.exceliran.com/showthread.php/3306-%D8%B3%D9%88%D8%A7%D9%84-%D8%AF%D8%B1-%D9%85%D9%88%D8%B1%D8%AF-%D9%86%D8%A7%D9%85%DA%AF%D8%B0%D8%A7%D8%B1%DB%8C)

fokker
2016/09/15, 15:50
جناب قاسمیان سلام علیکم. متاسفانه نتونستم این روش رو کابردی کنم. لطفا در صورت امکان نمونه پیوست نمایید با تشکر

amir_ts
2016/09/15, 16:55
با سلام و کسب اجازه از استاد ارجمند جناب قاسمیان
فایل نمونه پیوست شد.(هر چقدر تلاش کردم در خود سایت نتونستم آپلود کنم.)

SheetNames_list (http://s8.picofile.com/file/8267493992/SheetNames_list.xlsm.html)

mina javan
2016/10/23, 13:18
ممنون - جالب بود

jmfnima
2018/08/27, 08:36
سلام دوستان
همونطور که میدونین با VBA خیلی راحت میشه لیستی از شیت های موجود در یک فایل رو بدست آورد. اما روشی که من میخوام بگم بدون کمک گرفتن از VBA هست
برای اینکار ابتدا یک نام تعریف میکنیم:
(برای تعریف نام از منوی formula گزینه name manager و دکمه new رو میزنیم.)
در پنجره باز شده مطابق شکل اطلاعات را وارد میکنیم

12385

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


=SUBSTITUTE(GET.WORKBOOK(1);"["&GET.WORKBOOK(16)&"]";"")


حالا کافیه در سلول A1 فرمول زیر رو بنویسیم و درگ کنیم. با درگ کردن لیست همه شیت ها رو مشاهده میکنید.
نکته: تا جایی درگ رو ادامه بدین که به خطا برنخورید)


=INDEX(SheetNames;ROW(A1))


با سلام و تشکر از جناب اقای قاسمیان ترفند کاربردی رو ارائه نمودین
SUBSTITUTE(GET.WORKBOOK(1);"["&GET.WORKBOOK(16)&"]";"")
فقط یک سوال میشه فرمولی که برای Define Name گذاشتین رو توضیح بدین منطورم آرگومان هایی هست که برای تابع Substatuteگذاشتین .
عبارت Get.Workbook(1) جز توابع اکسل نیست