آدرس دهی Table_Array در تابع Vlookup

Collapse
X
 
  • زمان
  • نمایش
حذف همه
new posts
  • rahnemoun

    • 2010/11/18
    • 16

    آدرس دهی Table_Array در تابع Vlookup

    سلام
    من یه فایل دارم که چندین شیت مجزا داره.
    با استفاده از تابع Vlookup می خوام اطلاعات مورد نظر رو از این شیت ها استخراج کنم. مشکلی که هست اینه که برای استفاده از Vlookup، در بخش table_array تنها فقط آدرس یه شیت رو میشه قرار داد!
    آیا روشی وجود داره که موقع استفاده از vLOOKUP بشه هربار شیت مورد نظر برای استخراج اطلاعات مورد نظر رو عوض کرد. یعنی به شکلی باشه که اگه خواستم، اطلاعات از شیت 2 استخراج بشه و دفعه بعد (مثلاً) از شیت 1؟ (بدون تغییر دستی خط فرمان!) یعنی اگه در یک سل نوشتم (1)، Vlookup از شیت 1 اطلاعات رو بخونه و اگه نوشتم (3) اطلاعات رو از شیت 3 بخونه.

    مرسی - رامین
  • DOLFIN

    • 2014/01/18
    • 149

    #2
    سلام دوست عزیز
    با ترکیب تابع vlookup و indirect می تونید اینکار رو انجام بدید.
    در قسمت table_array به این صورت عمل کنید :
    کد:
    INDIRECT("Sheet"&B1&"!"&"A:B")
    sheet : نام ابتدای شیت مورد نظر
    b1 : سلولی که در آن عدد شیت مورد نظر را وارد می کنید.
    a:b : ادرس ستون هایی که می خواهید در آن ها جستجو انجام شود
    [CENTER][FONT=times new roman][SIZE=7][I][B][COLOR=#0000ff] خانه اکسل - [url]http://excelhouse.blog.ir[/url][/COLOR][/B][/I][/SIZE]
    [/FONT][/CENTER]

    کامنت

    • rahnemoun

      • 2010/11/18
      • 16

      #3
      نوشته اصلی توسط DOLFIN
      سلام دوست عزیز
      با ترکیب تابع vlookup و indirect می تونید اینکار رو انجام بدید.
      در قسمت table_array به این صورت عمل کنید :
      کد:
      INDIRECT("Sheet"&B1&"!"&"A:B")
      sheet : نام ابتدای شیت مورد نظر
      b1 : سلولی که در آن عدد شیت مورد نظر را وارد می کنید.
      a:b : ادرس ستون هایی که می خواهید در آن ها جستجو انجام شود


      ممنون از جوابی که دادید ولی راستش من درست متوجه نشدم!
      ببینید، تابع Vlookup رو من به این شکل استفاده کردم:
      Click image for larger version

Name:	vlookup.JPG
Views:	1
Size:	13.8 کیلو بایت
ID:	126373

      در این فرمول، اسم فایلی که اطلاعات ازش خونده میشه MyTemp.xls هست و اسم یکی از شیتهای اون فایل هم «خطوط انتقال آب» هست.
      حالا اگه خواستم بجای شیت «خطوط انتقال آب» از شیت «ابنیه» اطلاعات رو بخونه چکار باید بکنم؟

      فرضاً در یک سل اگه نوشتم «ابنیه» برای Vlookup مشخص باشه که حالا باید از شیت ابنیه اطلاعات رو بخونه.

      مرسی
      Last edited by rahnemoun; 2015/06/08, 16:22.

      کامنت

      • DOLFIN

        • 2014/01/18
        • 149

        #4
        دوست گرامی من یه نمونه فایل بزار تا جواب روی فایل به شما داده بشه.
        [CENTER][FONT=times new roman][SIZE=7][I][B][COLOR=#0000ff] خانه اکسل - [url]http://excelhouse.blog.ir[/url][/COLOR][/B][/I][/SIZE]
        [/FONT][/CENTER]

        کامنت

        • rahnemoun

          • 2010/11/18
          • 16

          #5
          ممنون از جوابی که دادید ولی راستش من درست متوجه نشدم!
          ببینید، تابع Vlookup رو من به این شکل استفاده کردم:


          در این فرمول، اسم فایلی که اطلاعات ازش خونده میشه MyTemp.xls هست و اسم یکی از شیتهای اون فایل هم «خطوط انتقال آب» هست.
          حالا اگه خواستم بجای شیت «خطوط انتقال آب» از شیت «ابنیه» اطلاعات رو بخونه چکار باید بکنم؟

          فرضاً در یک سل اگه نوشتم «ابنیه» برای Vlookup مشخص باشه که حالا باید از شیت ابنیه اطلاعات رو بخونه.

          مرسی

          کامنت

          • generalsamad
            مدير تالار توابع

            • 2014/06/22
            • 1496

            #6
            با سلام
            ضمن تشکر از جناب DOLFIN فرمول کلی رو قرار میدم
            کد PHP:
            =IFERROR(VLOOKUP(B1;INDIRECT("sheet"&A1&"!A:B");2;0);""
            Click image for larger version

Name:	Untitled2.png
Views:	1
Size:	73.2 کیلو بایت
ID:	126374
            [CENTER]
            [SIGPIC][/SIGPIC]
            [/CENTER]

            کامنت

            • DOLFIN

              • 2014/01/18
              • 149

              #7
              با فرض اینکه شما سلول B1 رو خالی گذاشتید تا نام شیت مورد جستجو رو در سلول B1 وارد کنید فرمول اینطور نوشته میشه :
              کد:
              =VLOOKUP(D4;INDIRECT("'["&"mytemp.xls]"&B1&"'"&"!"&"A1:D11");2;FALSE)
              Last edited by DOLFIN; 2015/06/08, 16:52.
              [CENTER][FONT=times new roman][SIZE=7][I][B][COLOR=#0000ff] خانه اکسل - [url]http://excelhouse.blog.ir[/url][/COLOR][/B][/I][/SIZE]
              [/FONT][/CENTER]

              کامنت

              • rahnemoun

                • 2010/11/18
                • 16

                #8
                نوشته اصلی توسط dolfin
                با فرض اینکه شما سلول b1 رو خالی گذاشتید تا نام شیت مورد جستجو رو در سلول b1 وارد کنید فرمول اینطور نوشته میشه :
                کد:
                =vlookup(d4;indirect("'["&"mytemp.xls]"&"b1"&"'"&"!"&"a1:d11");2;false)

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

                باز هم ممنونم، خیلی لطف کردید.

                رامین - ساری

                کامنت

                • rahnemoun

                  • 2010/11/18
                  • 16

                  #9
                  نوشته اصلی توسط generalsamad
                  با سلام
                  ضمن تشکر از جناب DOLFIN فرمول کلی رو قرار میدم
                  کد PHP:
                  =IFERROR(VLOOKUP(B1;INDIRECT("sheet"&A1&"!A:B");2;0);""
                  [ATTACH=CONFIG]7289[/ATTACH]

                  از شما هم خیلی ممنونم،*دستتون درد نکنه

                  رامین

                  کامنت

                  چند لحظه..