نحوه گسترش صحیح جداول تو در تو در Power Query

فهرست

فرض کنید یک فایل اکسل با چندین جدول هوشمند داریم:

نحوه گسترش صحیح جداول تو در تو در Power Query

اگر این جداول را به روش استاندارد با استفاده از دستور در Power Query بارگذاری کنید داده – دریافت داده – از فایل – از کتاب (داده - دریافت داده - از فایل - از کتاب کار)، سپس چیزی شبیه به این دریافت می کنیم:

نحوه گسترش صحیح جداول تو در تو در Power Query

من فکر می کنم این تصویر برای بسیاری از کاربران Power Query آشناست. جداول تودرتوی مشابه را می توان پس از ترکیب پرس و جوها (a la VLOOKUP)، گروه بندی (فرمان) مشاهده کرد. دسته بندی بر اساس برگ دگرگونی، وارد کردن تمام فایل ها از یک پوشه مشخص و غیره.

مرحله منطقی بعدی در این وضعیت معمولاً گسترش همه جداول تودرتو به یکباره است - با استفاده از دکمه با فلش های دوتایی در سر ستون داده ها:

نحوه گسترش صحیح جداول تو در تو در Power Query

در نتیجه، ما مجموعه ای از تمام ردیف ها را از تمام جداول در یک کل واحد دریافت می کنیم. همه چیز خوب، ساده و واضح است. 

حال تصور کنید که یک ستون جدید (تخفیف) در جداول منبع اضافه شود و/یا یکی از ستون های موجود (شهر) حذف شود:

نحوه گسترش صحیح جداول تو در تو در Power Query

سپس درخواست ما پس از به روز رسانی یک تصویر نه چندان زیبا را برمی گرداند - تخفیف ظاهر نشد و ستون شهر خالی شد، اما ناپدید نشد:

نحوه گسترش صحیح جداول تو در تو در Power Query

و فهمیدن دلیل آن آسان است - در نوار فرمول به وضوح می توانید ببینید که نام ستون های گسترش یافته در آرگومان های تابع کدگذاری شده است. Table.ExpandTableColumn به عنوان لیست در پرانتز فرفری.

دور زدن این مشکل آسان است. ابتدا، اجازه دهید نام ستون ها را از سربرگ هر جدول (مثلاً اولین) با استفاده از تابع دریافت کنیم Table.ColumnNames. به نظر خواهد رسید:

نحوه گسترش صحیح جداول تو در تو در Power Query

اینجا:

  • #"سایر ستون ها حذف شدند" – نام مرحله قبل که داده ها را از آنجا می گیریم
  • 0،XNUMX،XNUMX {} – تعداد جدولی که هدر را از آن استخراج می کنیم (شمارش از صفر یعنی 0 اولین جدول است)
  • [داده ها] – نام ستون در مرحله قبل که جداول گسترش یافته در آن قرار دارند

باقی مانده است که ساختار به دست آمده در نوار فرمول را با تابع جایگزین کنیم Table.ExpandTableColumn در مرحله گسترش جداول به جای لیست های سخت کد شده. در پایان همه چیز باید به این شکل باشد:

نحوه گسترش صحیح جداول تو در تو در Power Query

همین. و با تغییر داده های منبع، دیگر مشکلی با گسترش جداول تو در تو وجود نخواهد داشت.

  • ساخت جداول چند فرمت از یک برگه در Power Query
  • جداول را با هدرهای مختلف از چندین فایل اکسل بسازید
  • جمع آوری داده ها از تمام برگه های کتاب در یک جدول

 

پاسخ دهید