Мазмұны

Кейде бастапқы деректерден нақты қанша және қандай жолдарды импорттау қажет екені алдын ала белгісіз болатын жағдайлар болады. Мәтіндік файлдан деректерді Power Query-ге жүктеуіміз керек делік, бұл бірінші көзқараста үлкен проблема тудырмайды. Қиындық мынада, файл үнемі жаңартылып отырады және ертең оның деректері бар жолдардың әртүрлі саны болуы мүмкін, екі жол емес, үш тақырып болуы мүмкін және т.б.:

Power Query ішіндегі қалқымалы фрагментті импорттау

Яғни, қай жолдан бастап, нақты қанша жолды импорттау керектігін алдын ала нақты айта алмаймыз. Және бұл мәселе, себебі бұл параметрлер сұраныстың M-кодында қатаң кодталған. Егер сіз бірінші файлға сұраныс жасасаңыз (5-шіден бастап 4 жолды импорттау), онда ол енді екіншісімен дұрыс жұмыс істемейді.

Егер біздің сұраныс импортқа арналған «қалқымалы» мәтіндік блоктың басы мен соңын анықтай алса, тамаша болар еді.

Мен ұсынғым келетін шешім біздің деректерде бізге қажет деректер блогының басы мен соңының маркерлері (мүмкіндіктері) ретінде пайдалануға болатын кейбір кілт сөздер немесе мәндер бар деген идеяға негізделген. Біздің мысалда басы сөзден басталатын жол болады Артикул, ал соңы сөзден тұратын жол жалпы. Бұл жолды тексеруді Power Query қызметінде шартты бағанды ​​– функцияның аналогын пайдаланып орындау оңай IF (Егер) Microsoft Excel бағдарламасында.

Мұны қалай жасауға болатынын көрейік.

Алдымен, мәтіндік файлдың мазмұнын Power Query-ге стандартты әдіспен – пәрмен арқылы жүктеп алайық Деректер – Деректерді алу – Файлдан – Мәтін/CSV файлынан (Деректер – Деректерді алу – Файлдан – Мәтіннен/CSV файлынан). Егер сізде Power Query бөлек қондырма ретінде орнатылған болса, онда сәйкес пәрмендер қойындыда болады Қуат сұрауы:

Power Query ішіндегі қалқымалы фрагментті импорттау

Әдеттегідей, импорттау кезінде сіз бағанды ​​бөлгіш таңбаны таңдай аласыз (біздің жағдайда бұл қойынды), импорттаудан кейін автоматты түрде қосылған қадамды жоюға болады. өзгертілген түрі (Өзгертілген түрі), себебі бағандарға деректер түрлерін тағайындауға әлі ерте:

Power Query ішіндегі қалқымалы фрагментті импорттау

Енді пәрменмен Баған қосу – шартты баған (Баған қосу — шартты баған)блоктың басында және соңында екі шартты тексеретін және әр жағдайда кез келген әртүрлі мәндерді көрсететін бағанды ​​қосамыз (мысалы, сандар 1 и 2). Шарттардың ешқайсысы орындалмаса, шығару NULL:

Power Query ішіндегі қалқымалы фрагментті импорттау

Басқаннан кейін OK келесі суретті аламыз:

Power Query ішіндегі қалқымалы фрагментті импорттау

Енді қойындыға көшейік. трансформация және команданы таңдаңыз Толтыру – төмен (Түрлендіру - толтыру - төмен) – біздің бір-екілер бағананы төмен қарай созады:

Power Query ішіндегі қалқымалы фрагментті импорттау

Олай болса, сіз болжағандай, шартты бағандағы бірліктерді жай ғана сүзуге болады - және міне, біздің қалаған деректер бөлігі:

Power Query ішіндегі қалқымалы фрагментті импорттау

Пәрменмен бірінші жолды тақырыпқа көтеру ғана қалады Бірінші жолды тақырып ретінде пайдаланыңыз қойындысы Home (Басты бет – бірінші жолды тақырып ретінде пайдалану) және оның тақырыбын тінтуірдің оң жақ түймешігімен басып, пәрменді таңдау арқылы қажет емес шартты бағанды ​​алып тастаңыз Бағанды ​​жою (Бағанды ​​жою):

Мәселе шешілді. Енді бастапқы мәтіндік файлдағы деректерді өзгерткен кезде сұрау бізге қажет деректердің «қалқымалы» фрагментінің басы мен соңын дербес анықтайды және әр жолы дұрыс жол санын импорттайды. Әрине, бұл тәсіл TXT файлдарын емес, XLSX импорттау жағдайында, сондай-ақ пәрмен арқылы бір уақытта қалтадан барлық файлдарды импорттау кезінде де жұмыс істейді. Деректер – Деректерді алу – Файлдан – Қалтадан (Деректер — Деректерді алу — Файлдан — Қалтадан).

  • Power Query көмегімен әртүрлі файлдардан кестелерді құрастыру
  • Айқас кестені макростар мен Power Query көмегімен тегіс етіп қайта жасау
  • Power Query бағдарламасында жоба Гант диаграммасын құру

пікір қалдыру