פאַבריק קאַלענדאַר אין עקססעל

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

  • אין אַקאַונטינג חשבונות (געצאָלט, לענג פון דינסט, וואַקאַציע ...)
  • אין לאַדזשיסטיקס - פֿאַר די ריכטיק באַשטימונג פון עקספּרעס צייט, גענומען אין חשבון וויקענדז און האָלידייַס (געדענקען די קלאַסיש "קום נאָך די האָלידייַס?")
  • אין פּרויעקט פאַרוואַלטונג - פֿאַר די ריכטיק אָפּשאַצונג פון טערמינען, גענומען אין חשבון, ווידער, ארבעטן-ניט-ארבעטן טעג
  • קיין נוצן פון פאַנגקשאַנז ווי אַרבעט טאָג (אַרבעט טאָג) or ריין וואָרקערס (נעטוואָרק טעג), ווייַל זיי דאַרפן אַ רשימה פון האָלידייַס ווי אַ אַרגומענט
  • ווען איר נוצן צייט ינטעלליגענסע פאַנגקשאַנז (ווי TOTALYTD, TOTALMTD, SAMEPERIODLASTYEAR, אאז"ו ו) אין Power Pivot און Power BI
  • … עטק אאז"ו ו - פילע ביישפילן.

עס איז גרינגער פֿאַר יענע וואָס אַרבעט אין פֿירמע ERP סיסטעמען אַזאַ ווי 1C אָדער SAP, ווייַל די פּראָדוקציע קאַלענדאַר איז געבויט אין זיי. אָבער וואָס וועגן עקססעל ניצערס?

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

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

צו טאָן דאָס, אין פאַקט, איז נישט שווער.

דאַטע מקור

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

  • די אָריגינעלע גזירות ווערן פארעפנטלעכט אויף דער רעגירונג'ס וועבזייטל אין פּדף פֿאָרמאַט (דאָ, איינער פון זיי, למשל) און פאַרשווינדן גלייך – נוציק אינפֿאָרמאַציע קענען ניט זיין פּולד פון זיי.
  • א טעמפּטינג אָפּציע, אין ערשטער בליק, סימד צו זיין די "עפֿן דאַטאַ טויער פון די פעדעריישאַן", ווו עס איז אַ קאָראַספּאַנדינג דאַטן שטעלן, אָבער, נאָך נעענטער דורכקוק, אַלץ איז געווען טרויעריק. דער פּלאַץ איז טעראַבלי ומבאַקוועם פֿאַר ימפּאָרטינג אין עקססעל, טעכניש שטיצן ריספּאַנד נישט (זיך-אפגעזונדערט?), און די דאַטן זיך איז אַוטדייטיד דאָרט פֿאַר אַ לאַנג צייַט - די פּראָדוקציע קאַלענדאַר פֿאַר 2020 איז לעצטנס דערהייַנטיקט אין נאוועמבער 2019 (שאַנד!) און , פון קורס, טוט נישט אַנטהאַלטן אונדזער "קאָראָנאַווירוס" און די "אָפּשטימונג" אָפּרוטעג פון 2020, למשל.

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

און אין דעם פּראָצעס פון זוכן, אַ ווונדערלעך זאַך איז אַקסאַדענאַלי דיסקאַווערד - די פּלאַץ http://xmlcalendar.ru/

פאַבריק קאַלענדאַר אין עקססעל

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

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

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

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

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

  1. מיר מאַכן אַ בקשה צו אָפּלאָדירן דאַטן פון דעם פּלאַץ פֿאַר איין יאָר
  2. טורנינג אונדזער בקשה אין אַ פֿונקציע
  3. מיר צולייגן דעם פֿונקציע צו דער רשימה פון אַלע פאַראַנען יאָרן, סטאַרטינג פון 2013 און ביז דעם קראַנט יאָר - און מיר באַקומען אַ "דוירעסדיק" פּראָדוקציע קאַלענדאַר מיט אָטאַמאַטיק אַפּדייטינג. וואָילאַ!

שריט 1. אַרייַנפיר אַ קאַלענדאַר פֿאַר איין יאָר

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

פאַבריק קאַלענדאַר אין עקססעל

נאָך דריקט אויף OK אַ פאָרויסיקע ווייַזונג פֿענצטער אויס, אין וואָס איר דאַרפֿן צו גיט די קנעפּל גער דאַטאַ (טראַנספאָרמירן דאַטן) or צו טוישן די דאַטן (רעדאַגירן דאַטן) און מיר וועלן באַקומען צו די Power Query אָנפֿרעג רעדאַקטאָר פֿענצטער, ווו מיר וועלן פאָרזעצן ארבעטן מיט די דאַטן:

פאַבריק קאַלענדאַר אין עקססעל

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

דער טיש אין די האָלידייַס זייַל כּולל קאָודז און דיסקריפּשאַנז פון ניט-ארבעטן טעג - איר קענען זען די אינהאַלט דורך "פאַלן דורך" עס צוויי מאָל דורך געבן אַ קליק אויף די גרין וואָרט טיש:

פאַבריק קאַלענדאַר אין עקססעל

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

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

פאַבריק קאַלענדאַר אין עקססעל

עס בלייבט צו פּראָצעס דעם טעלער, ניימלי:

1. פילטער בלויז יום טוּב דאַטעס (ד"ה אָנעס) דורך די רגע זייַל אַטריביוט: ט

פאַבריק קאַלענדאַר אין עקססעל

2. ויסמעקן אַלע שפאלטן אַחוץ דער ערשטער - דורך רעכט-קליקינג אויף די כעדינג פון דער ערשטער זייַל און סעלעקטירן דעם באַפֿעל ויסמעקן אנדערע שפאלטן (נעם אַוועק אנדערע שפאלטן):

פאַבריק קאַלענדאַר אין עקססעל

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

פאַבריק קאַלענדאַר אין עקססעל

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

פאַבריק קאַלענדאַר אין עקססעל

=#דייטיד(2020, [#»Attribute:d.1″], [#»Attribute:d.2″])

דאָ, די #דאַטע אָפּעראַטאָר האט דריי אַרגומענטן: יאָר, חודש און טאָג ריספּעקטיוולי. נאָך קליקינג אויף OK מיר באַקומען די פארלאנגט זייַל מיט נאָרמאַל אָפּרוטעג דאַטעס, און ויסמעקן די רוען שפאלטן ווי אין שריט 2

פאַבריק קאַלענדאַר אין עקססעל

שריט 2. טורנינג די בעטן אין אַ פֿונקציע

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

1. יקספּאַנדינג (אויב נישט שוין יקספּאַנדיד) די טאַפליע ינקוויריעס (קווערי) אויף די לינקס אין די Power Query פֿענצטער:

פאַבריק קאַלענדאַר אין עקססעל

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

רעכט-קליקינג ווידער אויף די ריזאַלטינג קאָפּיע פון ​​קאַלענדאַר (2) וועט סעלעקטירן דעם באַפֿעל רענאַמע (רענאַמע) און אַרייַן אַ נייַ נאָמען - לאָזן עס זיין, למשל, fxyear:

פאַבריק קאַלענדאַר אין עקססעל

3. מיר עפֿענען די אָנפֿרעג מקור קאָד אין די ינערלעך פּאָווער קווערי שפּראַך (עס איז סאַקסינקטלי גערופן "M") ניצן די באַפֿעל Advanced Editor קוויטל אָפּשאַצונג(View — Advanced Editor) און מאַכן קליין ענדערונגען דאָרט צו מאַכן אונדזער בקשה אין אַ פֿונקציע פֿאַר קיין יאָר.

עס איז געווען:

פאַבריק קאַלענדאַר אין עקססעל

נאָך:

פאַבריק קאַלענדאַר אין עקססעל

אויב איר זענט אינטערעסירט אין די דעטאַילס, דאָ:

  • (יאָר ווי נומער) =>  - מיר דערקלערן אַז אונדזער פֿונקציע וועט האָבן איין נומעריק אַרגומענט - אַ בייַטעוודיק יאָר
  • פּאַסטינג די בייַטעוודיק יאָר צו וועב לינק אין שריט מאָקער. זינט Power Query אַלאַוז איר נישט צו קליי נומערן און טעקסט, מיר גער די יאָר נומער צו טעקסט אויף די פליען מיט די פֿונקציע נומער.טאָטעקסט
  • מיר פאַרבייַטן די יאָר בייַטעוודיק פֿאַר 2020 אין די פּענאַלטאַמאַט שריט #"צוגעלייגט מנהג כייפעץ«, ו װ מי ר האב ן פו ן ד י פראגמענט ן געשאפ ן ד י דאטום .

נאָך דריקט אויף ענדיקן אונדזער בקשה ווערט אַ פֿונקציע:

פאַבריק קאַלענדאַר אין עקססעל

שריט 3. אַרייַנפיר קאַלענדאַרס פֿאַר אַלע יאָרן

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

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

פאַבריק קאַלענדאַר אין עקססעל

2. מיר דאַרפֿן צו דזשענערייט אַ רשימה פון אַלע יאָרן פֿאַר וואָס מיר וועלן בעטן קאַלענדאַרס, ד"ה 2013, 2014 ... 2020. צו טאָן דאָס, אַרייַן די באַפֿעל אין די פאָרמולע באַר פון די ליידיק אָנפֿרעג וואָס איז ארויס:

פאַבריק קאַלענדאַר אין עקססעל

סטרוקטור:

={נומער א..נומער ב}

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

={1..5}

... וואָלט פּראָדוצירן אַ רשימה פון 1,2,3,4,5.

נו, אין סדר נישט צו זיין רידזשידלי צו 2020, מיר נוצן די פונקציע DateTime.LocalNow() - אַנאַלאָג פון די עקססעל פונקציע הייַנט (היינט) אין מאַכט אָנפֿרעג - און עקסטראַקט פון עס, אין קער, די קראַנט יאָר דורך די פֿונקציע טאָג.יאָר.

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

פאַבריק קאַלענדאַר אין עקססעל

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

פאַבריק קאַלענדאַר אין עקססעל

נאָך דריקט אויף OK אונדזער פֿונקציע fxyear דער אַרייַנפיר וועט אַרבעטן אין דרייַ פֿאַר יעדער יאָר און מיר וועלן באַקומען אַ זייַל ווו יעדער צעל וועט אַנטהאַלטן אַ טיש מיט די דאַטעס פון ניט-ארבעטן טעג (די אינהאַלט פון די טיש איז קלאר קענטיק אויב איר גיט אין דער הינטערגרונט פון דער צעל ווייַטער צו די ווארט טיש):

פאַבריק קאַלענדאַר אין עקססעל

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

פאַבריק קאַלענדאַר אין עקססעל

... און נאָך קליקינג אויף OK מיר באַקומען וואָס מיר געוואלט - אַ רשימה פון אַלע האָלידייַס פון 2013 צו דעם קראַנט יאָר:

פאַבריק קאַלענדאַר אין עקססעל

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

פאַבריק קאַלענדאַר אין עקססעל

די אָנפֿרעג זיך קענען זיין ריניימד עפּעס מער מינינגפאַל ווי בעטן 1 און דאַן צופֿעליקער די רעזולטאַטן צו די בלאַט אין די פאָרעם פון אַ דינאַמיש "קלוג" טיש ניצן די באַפֿעל נאָענט און אראפקאפיע קוויטל היים (היים - נאָענט & לאָדן):

פאַבריק קאַלענדאַר אין עקססעל

איר קענען דערהייַנטיקן די באשאפן קאַלענדאַר אין דער צוקונפֿט דורך רעכט-קליקינג אויף די טיש אָדער אָנפֿרעג אין די רעכט שויב דורך די באַפֿעל דערהייַנטיקן & היט. אָדער נוצן דעם קנעפּל דערפרישן אַלע קוויטל דאַטע (דאַטע - דערפרישן אַלע) אָדער קלאַוויאַטור דורכוועג קטרל+אַלט+F5.

אַז ס אַלע.

איצט איר קיינמאָל ווידער דאַרפֿן צו וויסט צייט און געדאַנק-ברענוואַרג זוכן פֿאַר און אַפּדייטינג די רשימה פון האָלידייַס - איצט איר האָבן אַ "דוירעסדיק" פּראָדוקציע קאַלענדאַר. אין קיין פאַל, ווי לאַנג ווי די מחברים פון דעם פּלאַץ http://xmlcalendar.ru/ שטיצן זייער זאמען, וואָס, איך האָפֿן, וועט זיין פֿאַר אַ זייער, זייער לאַנג צייַט (דאַנק צו זיי ווידער!).

  • ימפּאָרט ביטקאָין קורס צו יקסעל פון די אינטערנעט דורך פּאָווער קווערי
  • געפֿינען די ווייַטער געשעפט טאָג מיט די WORKDAY פונקציע
  • געפֿינען די ינטערסעקשאַן פון דאַטע ינטערוואַלז

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