צונויפגיסן צוויי רשימות אָן דופּליקאַטן

א קלאַסיש סיטואַציע: איר האָבן צוויי רשימות וואָס דאַרפֿן צו זיין צונויפגיסן אין איין. דערצו, אין די ערשט רשימות עס קענען זיין ביידע יינציק עלעמענטן און וואָס ריכטן זיך (ביידע צווישן די רשימות און ין), אָבער אין דער רעזולטאַט איר דאַרפֿן צו באַקומען אַ רשימה אָן דופּליקאַטן (רעפּאַטישאַנז):

צונויפגיסן צוויי רשימות אָן דופּליקאַטן

לאָמיר טראַדישאַנאַלי קוקן אין עטלעכע וועגן צו סאָלווע אַזאַ אַ פּראָסט פּראָבלעם - פֿון פּרימיטיוו "אויף די שטערן" צו מער קאָמפּליצירט, אָבער עלעגאַנט.

אופֿן 1: אַראָפּנעמען דופּליקאַטן

איר קענען סאָלווע די פּראָבלעם אויף די סימפּלאַסט וועג - מאַניואַלי נאָכמאַכן די עלעמענטן פון ביידע רשימות אין איין און צולייגן די געצייַג צו די ריזאַלטינג שטעלן. אַראָפּנעמען דופּליקאַטן פון די קוויטל דאַטע (דאַטאַ - אַראָפּנעמען דופּליקאַטן):

צונויפגיסן צוויי רשימות אָן דופּליקאַטן

פון קורס, דעם אופֿן וועט נישט אַרבעטן אויב די דאַטן אין די מקור רשימות אָפט ענדערונגען - איר וועט האָבן צו איבערחזרן די גאנצע פּראָצעדור נאָך יעדער ענדערונג. 

מעטאָד 1אַ. דרייפּונקט טיש

דער אופֿן איז, אין פאַקט, אַ לאַדזשיקאַל קאַנטיניויישאַן פון די פריערדיקע. אויב די רשימות זענען נישט זייער גרויס און די מאַקסימום נומער פון עלעמענטן אין זיי איז באַוווסט אין שטייַגן (למשל, ניט מער ווי 10), איר קענען פאַרבינדן צוויי טישן אין איין דורך דירעקט לינקס, לייגן אַ זייַל מיט די רעכט און די טיש. בויען אַ קיצער טיש באזירט אויף די ריזאַלטינג טיש:

צונויפגיסן צוויי רשימות אָן דופּליקאַטן

ווי איר וויסן, די דרייפּונקט טיש יגנאָרז רעפּאַטישאַנז, אַזוי אין דער רעזולטאַט מיר וועלן באַקומען אַ קאַמביינד רשימה אָן דופּליקאַטן. די אַגזיליערי זייַל מיט 1 איז דארף בלויז ווייַל עקססעל קענען בויען קיצער טישן מיט בייַ מינדסטער צוויי שפאלטן.

ווען די אָריגינעל רשימות זענען פארענדערט, די נייַע דאַטן וועט גיין צו די קאַמביינד טיש דורך דירעקט לינקס, אָבער די דרייפּונקט טיש וועט זיין דערהייַנטיקט מאַניואַלי (רעכט גיט - דערהייַנטיקן & היט). אויב איר טאָן ניט דאַרפֿן ריקאַלקיאַליישאַן אויף די פליען, עס איז בעסער צו נוצן אנדערע אָפּציעס.

אופֿן 2: ​​מענגע פאָרמולע

איר קענען סאָלווע די פּראָבלעם מיט פאָרמולאַס. אין דעם פאַל, די ריקאַלקיאַליישאַן און דערהייַנטיקונגען פון די רעזולטאַטן וועט פּאַסירן אויטאָמאַטיש און טייקעף, גלייך נאָך ענדערונגען אין דער אָריגינעל רשימות. פֿאַר קאַנוויניאַנס און קורץ, לאָזן אונדז געבן אונדזער רשימות נעמען. רשימה קסנומקס и רשימה קסנומקסניצן נאָמען מאַנאַגער קוויטל פאָרמולע (פאָרמולעס - נאָמען מאַנאַגער - שאַפֿן):

צונויפגיסן צוויי רשימות אָן דופּליקאַטן

נאָך נאַמינג, די פאָרמולע וואָס מיר דאַרפֿן וועט קוקן ווי דאָס:

צונויפגיסן צוויי רשימות אָן דופּליקאַטן

אין ערשטער בליק, עס קוקט קריפּי, אָבער, אין פאַקט, אַלץ איז נישט אַזוי סקערי. לאָזן מיר יקספּאַנד דעם פאָרמולע אויף עטלעכע שורות ניצן די אַלט + אַרייַן שליסל קאָמבינאַציע און ינדענט מיט ספּייסאַז, ווי מיר האבן, למשל דאָ:

צונויפגיסן צוויי רשימות אָן דופּליקאַטן

די לאָגיק דאָ איז די פאלגענדע:

  • די פאָרמולע INDEX(List1;MATCH(0;COUNTIF($E$1:E1;List1); 0) קלײַבט אויס אַלע אייגנאַרטיקע עלעמענטן פֿון דער ערשטער רשימה, גלייך ווי זיי לויפן אויס, הייבט זיך אָן צו געבן אַן #N/A טעות:

    צונויפגיסן צוויי רשימות אָן דופּליקאַטן

  • די פאָרמולע INDEX(List2;MATCH(0;COUNTIF($E$1:E1;List2); 0)) עקסטראַקץ די יינציק עלעמענטן פון די רגע רשימה אין דער זעלביקער וועג.
  • נעסטעד אין יעדער אנדערער צוויי IFERROR פאַנגקשאַנז ינסטרומענט דער רעזולטאַט ערשטער פון די יינציק אָנעס פון די רשימה-1, און דעמאָלט פון די רשימה-2 איינער נאָך דעם אנדערן.

באַמערקונג אַז דאָס איז אַ מענגע פאָרמולע, ד"ה נאָך טייפּינג, עס מוזן זיין אריין אין אַ צעל וואָס איז נישט געוויינטלעך אַרייַן, אָבער מיט אַ קלאַוויאַטור דורכוועג קטרל+יבעררוק+אַרייַן און דעמאָלט קאָפּיע (שלעפּן) אַראָפּ צו די קינד סעלז מיט אַ גרענעץ.

אין די ענגליש ווערסיע פון ​​עקססעל, דעם פאָרמולע קוקט ווי:

=IFERROR(IFERROR(INDEX(ליסט1, MATCH(0, COUNTIF($E$1:E1, רשימה1), 0)), INDEX(ליסט2, MATCH(0, COUNTIF($E$1:E1, רשימה2), 0)) ), "") 

די דאַונסייד פון דעם צוגאַנג איז אַז מענגע פאָרמולאַס נאָוטיסאַבלי פּאַמעלעך אַרבעט מיט דער טעקע אויב די מקור טישן האָבן אַ גרויס (עטלעכע הונדערט אָדער מער) נומער פון עלעמענטן. 

אופֿן 3. מאַכט אָנפֿרעג

אויב דיין מקור רשימות האָבן אַ גרויס נומער פון עלעמענטן, למשל, עטלעכע הונדערטער אָדער טויזנטער, אַנשטאָט פון אַ פּאַמעלעך מענגע פאָרמולע, עס איז בעסער צו נוצן אַ פונדאַמענטאַלי אַנדערש צוגאַנג, ניימלי די Power Query לייגן-אין מכשירים. דעם אַדישאַן איז געבויט אין עקססעל 2016 דורך פעליקייַט. אויב איר האָבן עקססעל 2010 אָדער 2013, איר קענען אראפקאפיע און ינסטאַלירן עס סעפּעראַטלי (פֿאַר פריי).

דער אַלגערידאַם פון אַקשאַנז איז ווי גייט:

  1. עפֿענען אַ באַזונדער קוויטל פון די אינסטאַלירן אַדישאַן מאַכט קווערי (אויב איר האָבן עקססעל 2010-2013) אָדער נאָר גיין צו די קוויטל דאַטע (אויב איר האָבן עקססעל 2016).
  2. אויסקלייַבן די ערשטער רשימה און דריקן דעם קנעפּל פֿון טיש / קייט (פון קייט / טיש). ווען געפרעגט וועגן שאפן אַ "קלוג טיש" פון אונדזער רשימה, מיר שטימען:

    צונויפגיסן צוויי רשימות אָן דופּליקאַטן

  3. די אָנפֿרעג רעדאַקטאָר פֿענצטער אָפּענס, ווו איר קענען זען די לאָודיד דאַטן און די אָנפֿרעג נאָמען טיש קסנומקס (איר קענט טוישן עס צו דיין אייגענע אויב איר ווילט).
  4. טאָפּל גיט אויף די טיש כעדער (וואָרט רשימה קסנומקס) און רענאַמע עס צו קיין אנדערע (למשל מען). וואָס פּונקט צו נאָמען איז נישט וויכטיק, אָבער די ינווענטיד נאָמען מוזן זיין דערמאנט, ווייַל. עס וועט האָבן צו זיין געוויינט ווידער שפּעטער ווען ימפּאָרטינג די רגע טיש. צונויפגיסן צוויי טישן אין דער צוקונפֿט וועט נאָר אַרבעטן אויב זייער זייַל כעדינגז גלייַכן.
  5. יקספּאַנד די דראָפּדאָוון רשימה אין דער אויבערשטער לינקס ווינקל נאָענט און אראפקאפיע און קלייַבן פאַרמאַכן און לאָדן אין ... (נאָענט & לאָדן צו ...):

    צונויפגיסן צוויי רשימות אָן דופּליקאַטן

  6. אין דער ווייַטער דיאַלאָג קעסטל (עס קען קוקן אַ ביסל אַנדערש - טאָן ניט זיין דערשראָקן), סעלעקטירן נאָר שאַפֿן אַ קשר (נאָר שאַפֿן קשר):

    צונויפגיסן צוויי רשימות אָן דופּליקאַטן

  7. מיר איבערחזרן די גאנצע פּראָצעדור (פּוינט 2-6) פֿאַר די רגע רשימה. ווען ריניימינג אַ זייַל כעדינג, עס איז וויכטיק צו נוצן די זעלבע נאָמען (מענטשן) ווי אין די פריערדיקע אָנפֿרעג.
  8. אין די עקססעל פֿענצטער אויף די קוויטל דאַטע אָדער אויף די בלאַט מאַכט קווערי קלייַבן באַקומען דאַטן - קאַמביין ריקוועס - לייג (באַקומען דאַטן - צונויפגיסן פֿראגן - צוגעבן):

    צונויפגיסן צוויי רשימות אָן דופּליקאַטן

  9. אין די דיאַלאָג קעסטל וואָס איז געוויזן, סעלעקטירן אונדזער ריקוועס פון די פאַל-אַראָפּ רשימות:

    צונויפגיסן צוויי רשימות אָן דופּליקאַטן

  10. ווי אַ רעזולטאַט, מיר וועלן באַקומען אַ נייַע אָנפֿרעג, וווּ צוויי רשימות וועלן זיין קאָננעקטעד אונטער יעדער אנדערער. עס בלייבט צו באַזייַטיקן דופּליקאַטן מיט די קנעפּל ויסמעקן ראָוז - אַראָפּנעמען דופּליקאַטן (מעקן ראָוז - ויסמעקן דופּליקאַטן):

    צונויפגיסן צוויי רשימות אָן דופּליקאַטן

  11. די פאַרטיק אָנפֿרעג קענען זיין ריניימד אויף די רעכט זייַט פון די אָפּציעס טאַפליע, געבן עס אַ באַמ זינען נאָמען (דאָס וועט זיין דער נאָמען פון די רעזולטאַט טיש אין פאַקט) און אַלץ קענען זיין ופּלאָאַדעד צו די בלאַט מיט די באַפֿעל. נאָענט און אראפקאפיע (פאַרמאַכן & לאָדן):

    צונויפגיסן צוויי רשימות אָן דופּליקאַטן

אין דער צוקונפֿט, מיט קיין ענדערונגען אָדער אַדישאַנז צו דער אָריגינעל רשימות, עס וועט זיין גענוג צו רעכט גיט צו דערהייַנטיקן די רעזולטאַטן טיש.

  • ווי צו זאַמלען קייפל טישן פֿון פאַרשידענע טעקעס ניצן Power Query
  • עקסטראַקטינג יינציק ייטאַמז פון אַ רשימה
  • ווי צו פאַרגלייַכן צוויי רשימות מיט יעדער אנדערע פֿאַר שוועבעלעך און דיפעראַנסיז

לאָזן אַ ענטפֿערן