Rirọpo ọrọ olopobobo ni Ibeere Agbara pẹlu Akojọ.Accumulate iṣẹ

Bii o ṣe le yara ati ni olopobobo rọpo ọrọ ni ibamu si atokọ itọkasi pẹlu awọn agbekalẹ - a ti ṣe lẹsẹsẹ tẹlẹ. Bayi jẹ ki a gbiyanju lati ṣe ni Ibeere Agbara.

Bi igba ṣẹlẹ ṣe iṣẹ yii rọrun pupọ ju ṣiṣe alaye lọ idi o ṣiṣẹ, ṣugbọn jẹ ki a gbiyanju lati se mejeeji 🙂

Nitorinaa, a ni awọn tabili agbara “ọlọgbọn” meji ti a ṣẹda lati awọn sakani lasan pẹlu ọna abuja keyboard kan Konturolu+T tabi egbe Ile – Kika bi tabili (Ile - Ọna kika bi Tabili):

Rirọpo ọrọ olopobobo ni Ibeere Agbara pẹlu Akojọ.Accumulate iṣẹ

Mo ti a npe ni akọkọ tabili datatabili keji - Directorylilo aaye Orukọ tabili (Orukọ tabili) taabu Alakoso (Apẹrẹ).

Iṣẹ-ṣiṣe: rọpo ni awọn adirẹsi ninu tabili data gbogbo awọn iṣẹlẹ lati kan iwe Lati wa Iwe amudani si wọn ti o baamu ti o tọ counterparts lati awọn iwe Aropo. Awọn iyokù ti ọrọ inu awọn sẹẹli yẹ ki o wa laifọwọkan.

Igbese 1. Fifuye liana sinu Power Query ati ki o tan o sinu akojọ kan

Lẹhin ti ṣeto sẹẹli ti nṣiṣe lọwọ si aaye eyikeyi ninu tabili itọkasi, tẹ taabu naa data (Ọjọ)tabi lori taabu Ibeere Agbara (ti o ba ni ẹya atijọ ti Tayo ati pe o fi ibeere Agbara sori ẹrọ bi afikun lori taabu lọtọ) lori bọtini Lati tabili / ibiti (Lati Tabili/Ibiti).

Tabili itọkasi yoo jẹ ti kojọpọ sinu olootu ibeere Ibeere Agbara:

Rirọpo ọrọ olopobobo ni Ibeere Agbara pẹlu Akojọ.Accumulate iṣẹ

Ni ibere ki o ma ṣe dabaru, igbesẹ ti a ṣafikun laifọwọyi títúnṣe iru (Iru Yipada) ni apa ọtun, awọn igbesẹ ti a lo le paarẹ lailewu, nlọ nikan ni igbesẹ naa orisun (Orisun):

Rirọpo ọrọ olopobobo ni Ibeere Agbara pẹlu Akojọ.Accumulate iṣẹ

Bayi, lati ṣe awọn iyipada siwaju ati awọn iyipada, a nilo lati yi tabili yii pada si akojọ (akojọ).

Lirical digression

Ṣaaju ki o to tẹsiwaju, jẹ ki a kọkọ loye awọn ofin naa. Ibeere agbara le ṣiṣẹ pẹlu awọn oriṣi awọn nkan:
  • Table jẹ apẹrẹ onisẹpo meji ti o ni ọpọlọpọ awọn ori ila ati awọn ọwọn.
  • Igbasilẹ (Igbasilẹ) - okun-okun onisẹpo kan, ti o ni ọpọlọpọ awọn aaye-eroja pẹlu awọn orukọ, fun apẹẹrẹ [Orukọ = "Masha", Iwa = "f", Ọjọ ori = 25]
  • List - iwe-apapọ onisẹpo kan, ti o ni awọn eroja pupọ, fun apẹẹrẹ 1, 2, 3, 10, 42} or {"Ireti Igbagbọ Ife" }

Lati yanju iṣoro wa, a yoo jẹ akọkọ nife ninu iru List.

Ẹtan nibi ni pe atokọ awọn ohun kan ninu Ibeere Agbara le kii ṣe awọn nọmba banal nikan tabi ọrọ, ṣugbọn tun awọn atokọ miiran tabi awọn igbasilẹ. O wa ninu iru atokọ ẹtan (akojọ), ti o wa ninu awọn igbasilẹ (awọn igbasilẹ) ti a nilo lati tan itọsọna wa. Ninu ami afọwọṣe syntactic Query (awọn titẹ sii ni awọn biraketi onigun mẹrin, awọn atokọ ni awọn biraketi iṣupọ) eyi yoo dabi:

{

    [ Wa = “St. Petersburg”, Rọpo = “St. Petersburg”] ,

    [ Wa = “St. Petersburg”, Rọpo = “St. Petersburg”] ,

    [Wa = “Peteru”, Rọpo = “St. Petersburg”] ,

ati be be lo

}

Iru iyipada bẹẹ ni a ṣe ni lilo iṣẹ pataki ti ede M ti a ṣe sinu Ibeere Agbara – Table.ToRecords. Lati lo taara ni ọpa agbekalẹ, ṣafikun iṣẹ yii si koodu igbesẹ nibẹ orisun.

Oun ni:

Rirọpo ọrọ olopobobo ni Ibeere Agbara pẹlu Akojọ.Accumulate iṣẹ

Lẹhin:

Rirọpo ọrọ olopobobo ni Ibeere Agbara pẹlu Akojọ.Accumulate iṣẹ

Lẹhin fifi Table.ToRecords ṣiṣẹ, irisi tabili wa yoo yipada - yoo yipada si akojọ awọn igbasilẹ. Awọn akoonu ti awọn igbasilẹ kọọkan ni a le rii ni isalẹ ti pane wiwo nipa tite ni ẹhin sẹẹli lẹgbẹẹ ọrọ eyikeyi. gba (ṣugbọn kii ṣe ni ọrọ kan!)

Ni afikun si eyi ti o wa loke, o jẹ oye lati ṣafikun ikọlu ọkan diẹ sii - si kaṣe (fifipamọ) atokọ ti a ṣẹda. Eyi yoo fi ipa mu Ibeere Agbara lati ṣajọ atokọ wiwa wa lẹẹkan sinu iranti ati pe ko tun ṣe iṣiro lẹẹkansi nigbati a ba wọle nigbamii lati rọpo rẹ. Lati ṣe eyi, fi ipari si agbekalẹ wa ni iṣẹ miiran - Akojọ.Buffer:

Rirọpo ọrọ olopobobo ni Ibeere Agbara pẹlu Akojọ.Accumulate iṣẹ

Iru caching yoo fun ni akiyesi pupọ ni iyara (nipasẹ ọpọlọpọ igba!) Pẹlu iye nla ti data akọkọ lati yọkuro.

Eyi pari igbaradi ti iwe afọwọkọ.

O wa lati tẹ lori Ile - Sunmọ ati fifuye – Sunmọ ati gbe si… (Ile - Sunmọ&Gbirù — Sunmọ&Kojọpọ si...), yan aṣayan kan Kan ṣẹda asopọ kan (Ṣẹda asopọ nikan) ati ki o pada si tayo.

Igbese 2. Loading awọn data tabili

Ohun gbogbo ni trite nibi. Gẹgẹbi tẹlẹ pẹlu iwe itọkasi, a dide si aaye eyikeyi ninu tabili, tẹ lori taabu data bọtìnnì Lati Table / Range ati tabili wa data n wọle si ibeere agbara. Ni aifọwọyi fi kun igbesẹ títúnṣe iru (Iru Yipada) o tun le yọ:

Rirọpo ọrọ olopobobo ni Ibeere Agbara pẹlu Akojọ.Accumulate iṣẹ

Ko si awọn iṣe igbaradi pataki ti a nilo lati ṣe pẹlu rẹ, ati pe a tẹsiwaju si ohun pataki julọ.

Igbesẹ 3. Ṣe awọn iyipada nipa lilo Akojọ.Accumulate iṣẹ

Jẹ ki a ṣafikun iwe iṣiro kan si tabili data wa nipa lilo aṣẹ naa Ṣafikun Ọwọn kan – Aṣa Ọwọn (Ṣafikun ọwọn – ọwọn Aṣa): ki o si tẹ orukọ ti ọwọn ti a fikun sinu window ti o ṣii (fun apẹẹrẹ, atunse adirẹsi) ati iṣẹ idan wa Akojọ.Kojọpọ:

Rirọpo ọrọ olopobobo ni Ibeere Agbara pẹlu Akojọ.Accumulate iṣẹ

O wa lati tẹ lori OK - ati pe a gba iwe kan pẹlu awọn iyipada ti a ṣe:

Rirọpo ọrọ olopobobo ni Ibeere Agbara pẹlu Akojọ.Accumulate iṣẹ

Ṣe akiyesi pe:

  • Niwọn igba ti Ibeere Agbara jẹ ifarabalẹ ọran, ko si rirọpo ninu laini penultimate, nitori ninu itọsọna a ni “SPb”, kii ṣe “SPb”.
  • Ti ọpọlọpọ awọn atunkọ ba wa lati rọpo ni ẹẹkan ni data orisun (fun apẹẹrẹ, ni laini 7th o nilo lati rọpo mejeeji “S-Pb” ati “Prospectus”), lẹhinna eyi ko ṣẹda awọn iṣoro eyikeyi (bii rirọpo pẹlu awọn agbekalẹ lati ọna ti tẹlẹ).
  • Ti ko ba si nkankan lati rọpo ninu ọrọ orisun (laini 9), lẹhinna ko si awọn aṣiṣe ti o waye (laisi, lẹẹkansi, lati rirọpo nipasẹ awọn agbekalẹ).

Iyara iru ibeere bẹ jẹ pupọ, bojumu. Fun apẹẹrẹ, fun tabili ti data akọkọ pẹlu iwọn awọn ori ila 5000, ibeere yii ti ni imudojuiwọn ni o kere ju iṣẹju kan (laisi ifipamọ, ni ọna, bii awọn aaya 3!)

Bawo ni Akojọ.Accumulate iṣẹ ṣiṣẹ

Ni opo, eyi le jẹ opin (fun mi lati kọ, ati fun ọ lati ka) nkan yii. Ti o ba fẹ ko ni anfani nikan, ṣugbọn tun ni oye bi o ṣe n ṣiṣẹ "labẹ ibori", lẹhinna o yoo ni lati jinlẹ diẹ sii sinu iho ehoro ati ki o ṣe pẹlu Akojọ. sise fun wa.

Awọn sintasi fun iṣẹ yii ni:

=Akojọ.Kojọpọ(akojọ, irugbin, ikojọpọ)

ibi ti

  • akojọ ni awọn akojọ ti awọn eroja ti a iterating lori. 
  • irugbin - ipo akọkọ
  • ikojọpọ - iṣẹ kan ti o ṣe diẹ ninu awọn isẹ (mathematiki, ọrọ, ati be be lo) lori tókàn ano ti awọn akojọ ati akojo esi ti processing ni pataki kan oniyipada.

Ni gbogbogbo, sintasi fun awọn iṣẹ kikọ ni Ibeere Agbara dabi eyi:

(argument1, argument2, … argumentN) => awọn iṣe diẹ pẹlu awọn ariyanjiyan

Fun apẹẹrẹ, iṣẹ akojọpọ le jẹ aṣoju bi:

(a, b) => a + b

Fun Akojọ.Accumulate, iṣẹ ikojọpọ yii ni awọn ariyanjiyan meji ti a beere (wọn le jẹ orukọ ohunkohun, ṣugbọn awọn orukọ deede jẹ ipinle и lọwọlọwọ, gẹgẹbi ninu iranlọwọ osise fun iṣẹ yii, nibiti:

  • ipinle - oniyipada nibiti abajade ti ṣajọpọ (iye ibẹrẹ rẹ jẹ eyiti a mẹnuba loke irugbin)
  • lọwọlọwọ – nigbamii ti iterated iye lati awọn akojọ akojọ

Fun apẹẹrẹ, jẹ ki a wo awọn igbesẹ ti oye ti ikole atẹle:

=Akojọ.Kojọpọ({3, 2, 5}, 10, (ipinle, lọwọlọwọ) => ipo + lọwọlọwọ)

  1. Ayipada iye ipinle ti ṣeto dogba si ariyanjiyan ibẹrẹ irugbinIe ipinle = 10
  2. A mu ipin akọkọ ti atokọ naa (lọwọlọwọ = 3) ki o si fi kun si oniyipada ipinle (mẹwa). A gba ipinle = 13.
  3. A mu ipin keji ti atokọ naa (lọwọlọwọ = 2) ati pẹlu rẹ si iye akojo lọwọlọwọ ni oniyipada ipinle (mẹwa). A gba ipinle = 15.
  4. A mu ipin kẹta ti atokọ naa (lọwọlọwọ = 5) ati pẹlu rẹ si iye akojo lọwọlọwọ ni oniyipada ipinle (mẹwa). A gba ipinle = 20.

Eyi ni akojo tuntun ipinle iye naa jẹ Akojọ wa.Ṣajọpọ iṣẹ ati awọn abajade bi abajade:

Rirọpo ọrọ olopobobo ni Ibeere Agbara pẹlu Akojọ.Accumulate iṣẹ

Ti o ba fantasize diẹ, lẹhinna lilo Akojọ.Accumulate iṣẹ, o le ṣe simulate, fun apẹẹrẹ, iṣẹ Excel CONCATENATE (ni Ibeere Agbara, afọwọṣe rẹ ni a npe ni Ọrọ.Papọ) ni lilo ọrọ naa:

Rirọpo ọrọ olopobobo ni Ibeere Agbara pẹlu Akojọ.Accumulate iṣẹ

Tabi paapaa wa iye ti o pọju (afarawe ti iṣẹ MAX Excel, eyiti a pe ni Ibeere Agbara Akojọ.Max):

Rirọpo ọrọ olopobobo ni Ibeere Agbara pẹlu Akojọ.Accumulate iṣẹ

Sibẹsibẹ, ẹya akọkọ ti Akojọ.Accumulate ni agbara lati ṣe ilana kii ṣe ọrọ ti o rọrun nikan tabi awọn akojọ nọmba bi awọn ariyanjiyan, ṣugbọn awọn nkan ti o ni idiwọn diẹ sii - fun apẹẹrẹ, awọn akojọ-lati-akojọ tabi awọn akojọ-lati-awọn igbasilẹ (hello, Directory!)

Jẹ ki a wo lẹẹkansi ni ikole ti o ṣe rirọpo ninu iṣoro wa:

Akojọ.Kojọpọ(Directory, [Adirẹsi], (ipinle, lọwọlọwọ) => Ọrọ. Rọpo (ipinle, lọwọlọwọ[Wa], lọwọlọwọ[Rọpo]) )

Kini n ṣẹlẹ looto nibi?

  1. Bi iye akọkọ (irugbin) a ya awọn ọrọ clumsy akọkọ lati awọn iwe [Adirẹsi] tabili wa: 199034, St. Beringa, d. 1
  2. Lẹhinna Akojọ. Accumulate iterates lori awọn eroja ti awọn akojọ ọkan nipa ọkan – Iwe amudani. Ẹya kọọkan ti atokọ yii jẹ igbasilẹ ti o ni awọn aaye bata meji “Kini lati wa – Kini lati rọpo” tabi, ni awọn ọrọ miiran, laini atẹle ninu itọsọna naa.
  3. Awọn accumulator iṣẹ fi sinu kan oniyipada ipinle iye akọkọ (adirẹsi akọkọ 199034, St. Beringa, d. 1) ati ki o ṣe ohun accumulator iṣẹ lori o - awọn rirọpo isẹ ti lilo awọn boṣewa M-iṣẹ Ọrọ.Rọpo (afọwọṣe si iṣẹ SUBSTITUTE Excel). Sintasi rẹ ni:

    Ọrọ. Rọpo (ọrọ atilẹba, ohun ti a n wa, ohun ti a n rọpo pẹlu)

    ati pe a ni:

    • ipinle ni wa idọti adirẹsi, eyi ti o wa da ni ipinle (gbigba lati ibẹ irugbin)
    • lọwọlọwọ[Wa] - iye aaye Lati wa lati nigbamii ti iterated titẹsi ti awọn akojọ Directory, eyi ti o wa ni oniyipada lọwọlọwọ
    • lọwọlọwọ[Rọpo] - iye aaye Aropo lati nigbamii ti iterated titẹsi ti awọn akojọ Directoryeke ni lọwọlọwọ

Nitorinaa, fun adirẹsi kọọkan, iyipo kikun ti gbogbo awọn ila ti o wa ninu itọsọna naa ni ṣiṣe ni akoko kọọkan, rọpo ọrọ lati aaye [Wa] pẹlu iye lati aaye [Rọpo].

Ṣe ireti pe o ni imọran 🙂

  • Olopobobo rọpo ọrọ ninu atokọ nipa lilo awọn agbekalẹ
  • Awọn ikosile deede (RegExp) ni Ibeere Agbara

Fi a Reply