דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
Y.Excel.AccessY

Y.Excel.Access

@Y.Excel.Access
אודות
פוסטים
294
נושאים
49
קבוצות
0
עוקבים
2
עוקב אחרי
0

פוסטים

פוסטים אחרונים הגבוה ביותר שנוי במחלוקת

  • תו אופצונאלי בהחלפה בוורד
    Y.Excel.AccessY Y.Excel.Access

    @dovid כתב בתו אופצונאלי בהחלפה בוורד:

    זהו, קיבלנו מעל 90 אחוז החלפה מדוייקים, מדוייקים יותר מבינה מלאכותית (שמנצחת בתחום האי ודאות - אלו שלא טיפלנו).

    זה יותר יעיל ממה שאמרת, כי את כל מה שסומן כ'יכול להיות טעות' נדע שרק את רשימה זו יש לחפש ידנית אחד אחד. מה שמקצר את משך זמן העבודה משמעותית!


  • עזרה בגוגל שיטס
    Y.Excel.AccessY Y.Excel.Access

    @למה-מה-קרה
    @avi-rz מצוין!

    קצר יותר ויעיל יותר - בלי לתפוס עמודות וחישוב יותר פשוט:

    =SORT(A1:C26,MOD(A1:A26,1),TRUE)
    

    (A1:C26 זוהי הטבלה למיון, ו A1:A26 כאן זה עמודת השעה)

    הסבר:
    ביישומי OFFICE - אקסל וכו' וגם בגוגל שיטס יש מוסכמה שתאריך הוא מספר המייצג ימים ושעות הם חלקי היום. (זה מתעד כמה ימים עברו מ 30/12/1899, תוכל לראות את המספר אם תהפוך את התאריך לפורמט מספר)
    אם כן הכי פשוט למצוא את הזמן - למצוא את השבר בלבד - שארית החילוק מ - 1. ולמיין לפיו.
    מציאת שארית מתבצעת על ידי הפונקציית MOD.

    בנוסף, בפונקציית SORT הממיינת אפשר לקבל גם עמודה אחרת בגודל הטבלה שלנו, שעל פיה נמיין.
    לכן נבצע את החישוב של בדיקת השארית כעמודה נוספת - וכדוגמה למעלה.

    שים לב כי השעות ממויינות לפי 12 בלילה, אם תרצה למיין לפי השעה 5 - שזוהי השעה בה בהרגשה האנושית באמת עובר היום (לאפוקי שעת השקיעה/צאת להלכתית ו12 לבינלאומית) תכתוב את זה כך:

    =SORT(A1:C26,MOD(A1:A26 - 1/24*5,1),TRUE)
    

  • תו אופצונאלי בהחלפה בוורד
    Y.Excel.AccessY Y.Excel.Access

    @dovid כתב בתו אופצונאלי בהחלפה בוורד:

    ש אפשרות לעשות REGEX והחלפה בלי בכלל להזדקק לחיפוש והחלפה, אלא סתם קוד VBA, ויש אפשרות לעבוד מול הקובץ (OpenXML) בלי וורד בכלל בסיפור.

    פיתחתי בהתחלה החלפת רג'קס רגילה (אמנם לא עם OPENXML אלא עם הטקסט של כל מסמך הוורד ישירות), אבל זה מחק את העיצוב וכמ"ש.
    אם אין עיצוב בקובץ, אז אין הכי נמי, אפשר להחליף את כל הטקסט עצמו וזה באמת מהיר.

    • עריכה: יעוין עוד - https://stackoverflow.com/questions/41722264/regex-microsoft-word-without-destroying-document-formatting בו גם הוא מביא את הפתרון (הכבד) שאמרתי. @אוריי - אולי זה כן יעזור לך בכל אופן.... כי מקסימום תתן למחשב לעבוד בלילה וכד'.

  • תו אופצונאלי בהחלפה בוורד
    Y.Excel.AccessY Y.Excel.Access

    @dovid כתב בתו אופצונאלי בהחלפה בוורד:

    אגב אפשר לשלב Regex בוורד בVBA,
    אבל לדעתי אם זה מצדיק כזו עבודה כבר כדאי לעשות את זה בקוד חיצוני עם שפה מודרנית ולוודא לגמרי שההחלפות נכונות.

    דווקא אני מפתח את זה כעת (באקסס, שיפעל על קובץ וורד חיצוני),
    אבל זה כבד נורא... צריך לתת זמן למחשב. זה מחייב לעשות חיפוש ואז החלפה על כל תוצאה, אם לא החלפת רג'קס תמחק את כל העיצוב.
    כך שאם אפשר - יש למצוא פתרונות חילופיים.


  • תכנון אקסס לכמה משתמשים
    Y.Excel.AccessY Y.Excel.Access

    @מלא כתב בתכנון אקסס לכמה משתמשים:

    אם תקמפל את הקובץ לACCDE שינוי סיומת לא יעזור, לא יוכלו לגשת לקוד.
    ואם תחסום גם כניסה עם שיפט, וחסימה של F11 וכו' ההגנות הפשוטות.

    לפי מה שאני יודע, (אשמח לתיקון אם אני טועה) הפיכה של קובץ ל ACCDE מקמפלת את הקוד, כך שאינו קיים בפועל. ממילא מה שייך כבר להקיש F11 - גם לבעלים של הקובץ אי אפשר לגשת אליו בחזרה.
    יצרתי דוגמה בשתי שניות - איך אתה יכול לגשת בפועל לקוד?

    ‏‏Microsoft Access Database חדש.accdb ‏‏Microsoft Access Database חדש.accde

    רק צריך לחסום כניסה עם שיפט בדרך זו או אחרת.

    וגבי הטבלאות - תמיד אפשר לייבא אותם מקובץ אחר בתור טבלאות מקושרות או להעתיקם לטבלאות חדשות:(


  • נוסחאות חדשות ב GOOGLE SHEETS
    Y.Excel.AccessY Y.Excel.Access

    יש כמה נוסחאות חדשות שממש משנות את כללי המשחק בגוגל שיטס:

    • CHOOSECOLS לבחירת עמודות ממערך
    • CHOOSEROWS לבחירת שורות ממערך
    • WRAPROWS להמרת מערך חד ממדי לרב ממדי - פריסה לשורות
    • WRAPCOLS כנ"ל - פריסה לעמודות
    • HSTACK ו VSTACK - הפעולה של {} אך בלי סוגריים - לא משמעותי לכאורה

    והעולה על כולנה, סוף סוף:

    • LET - ליצירת משתנים.

    כל אלו מצטרפות לפונקציות שנוספו מוקדם יותר -
    https://blog.sheetgo.com/google-sheets-formulas/10-new-google-sheets-functions/

    וכלול בתוכם - LAMBDA, MAP (חלקי - לא עובד לקנן ב MAP ודומיו מערכים אחרים), פונקציות בעלות שם, וכו' ע"ש בקישור.


  • יצירת טבלה חכמה
    Y.Excel.AccessY Y.Excel.Access

    @EMG כתב ביצירת טבלה חכמה:

    @Y-Excel-Access @מלא כתב ביצירת טבלה חכמה:

    או עם מאקרו כן תוכל לעשות משהו.

    איך שייך אפשר עזרה ?
    תודה

    אני נותן כאן קצת כיוון אחר ממה שענו עד כאן - פונקציה שכן מבצעת את מה שביקשת - להגדיר ערכים לא במקום שאתה כותב.
    כלומר אתה יכול לכתוב את הפונקציה בתא D230 אבל היא תשפיע על תא A1.

    ה'חכמה' כאן - שהפונקציה באמת עובדת עם מאקרו מאחורי הקלעים, אך אתה לא אמור לעשות את זה.

    כעת אני נותן את הפונקציה בלבד, לא בניתי את הפתרון לצורך שלך, קראתי לפונקציה SetValue וצריך לתת לה 2 ערכים: הפניה - לציון מיקום, וערך ליישום שם.
    והפונקציה תכתוב את הערך במיקום הרצוי.

    על זה תרכיב MACH + INDEX וכו' עם תנאים כמו שאתה רוצה וכמו שהתחילו לכתוב כאן.

    פונקציית SetValue להגדרת ערכים באקסל מחוץ לפונקציה - כמו מאקרו.xlsm

    • עריכה: זה לא יעבוד כרצוי, הסיבה לכך היא שהטריגר היא בתא שמשתנה ולא באקסל הכללי. מה שצריך לעשות - להקצות טווח תאים (טבלה ו/או בגליון נפרד) בו ייכתבו נוסחאות SetValues ובכל שינוי המאקרו יבדוק אותם. - אולי אבצע בהזדמנות.

  • שיפור SHEETS & FROMS המתפקדים כאתר (מאגר בני הישיבות)
    Y.Excel.AccessY Y.Excel.Access

    אחרי כמה תגובות על הטפסים, אני מנסה לאחד את טפסי ההוספה לטופס נוח אחד.

    אני מראה כאן קישור לבדיקה ( - תוכלו לנסות לכתוב ככל העולה על רוחכם ולשלוח - אין לכך משמעות אמיתית).

    https://forms.gle/6Z9XBBnUjVoWxxAS7

    אשמח להערות והארות, אם יש טעם להשקיע בכגון דא.


  • בגוגל שיטס - איך לבצע את פונקציית TEXTJOIN ביותר מ 50,000 תווים
    Y.Excel.AccessY Y.Excel.Access

    GOOGLE SHEETS - איך לבצע את פונקציית TEXTJOIN על מערך, שיש סיכוי לכך שהוא יכיל יותר מ 50,000 תווים?

    לפונקציית TEXTJOIN ולתאים בשיטס יש מגבלת תכולה של עד 50,000 תווים.
    אני רוצה לשרשר את המערך לתא אחד או יותר - לפי כמות התווים, כך שישורשר בכמה שפחות תאים.

    האלגוריתם הכללי:

    1. קבל את המערך,
    2. עבור על התאים מההתחלה ובדוק את סך התווים שיוצא.
    3. אם עברת את סך ה 50,000 תווים - חזור תא אחד אחורה, שרשר את התווים הקודמים לתא הראשון, והתמקד בתא הבא.
    4. קבל את המשך המערך
    5. חזור שוב על פעולות 2,3,4 עד לסיום התאים במערך.

    לכתחילה - להצליח לבצע את זה ללא APP SCRIPT - בפונקציות גוגל טהורות בלבד.

    אשמח לעיצה ותבונה...


  • קובץ אקסס שלא מוכן להתקפל
    Y.Excel.AccessY Y.Excel.Access

    @OdedDvir התגובות הבטוחות שלכם חיזקו בי את המחשבה שאולי זה לא עוד באג של אקסס אלא שלי.

    ולמרות שביצעתי בקובץ המקורי את שלב 1 - הקמפול, זה לא הצליח להפוך ל ACCDE.
    בנסיון להפוך את זה לקובץ ההרצה, הודעת השגיאה היתה אותה הודעה כמו במקרה שזה לא עובר קמפול.

    מה שעבד באופן מפתיע זה דווקא כשעברתי על כל הקוד והסרתי את כל הפעמים שכתבתי ON ERROR GOTO (כהמלצתך @OdedDvir במקו"א) זה כן הסכים להפוך ל ACCDE .

    תודה רבה!


  • קובץ אקסס שלא מוכן להתקפל
    Y.Excel.AccessY Y.Excel.Access

    @ארי סליחה, צודק, טעות שלי.
    העתקתי מקוד אחר המיובא איך שהוא, חשבתי שהקודים דומים.

    בעז"ה אחלץ (שיהיה ללא פרטים אישיים וכו') מהקוד שלי ממש את הקוד שלא עובר קמפול.

    תודה לבינתיים על הבדיקה!


  • קובץ אקסס שלא מוכן להתקפל
    Y.Excel.AccessY Y.Excel.Access

    יש לי קובץ אקסס, עשיתי לו דיבוג והכל, ומשום מה מגירסה מסוימת שבניתי לו הוא לא מוכן להתקמפל, ללא סיבה הנראית לעין.

    ניסיתי לדלל מאוד את המודולים והטפסים, אבל כשחלק מהם נשאר זה פשוט מסרב להתקמפל.

    האם יש למישהו רעיון איך לשכנע אותו או מישהו נוסה בבעיה דומה?

    אחד מהמודולים שלא מוכנים להתקמפל הוא - דוגמה-המרת-תאריך-לועזי-לעברי.accdb עריכה הקישור הזה טעות כי הוא באמת עם שגיאות, ובתיקון השגיאות זה מתקמפל (קובץ1, קובץ1מקומפל) , אביא בעז"ה קוד אחר.


  • פונקציית SHEETS בתוך APP SCRIPT
    Y.Excel.AccessY Y.Excel.Access

    :(טוב. אז אתן את הפתרונות שלי לבינתיים.

    ראשית אסביר את הצורך:
    פונקציות SHEETS יש בהם מעלה מבחינות מסוימות על JS:

    • הם צפויות מאוד, וכל הזמן יש תוצאה ברורה לערך הנצרך. משא"כ בJS שהיא שפה לא מקומפלת, אז יש התמודדות כל הזמן עם באגים אפשריים.
    • הם עוקבות אחרי מיקומי התאים - ההפניות מתעדכנות, כך שאין סכנה שבשינוי שם גליון או מיקום תא הכל יקפוץ פתאום או יותר גרוע - יחשב בטעות בלי שנדע.
    • אין בהם הגבלת זמן - בשונה מהגבלות הזמן של APP SCRIPT ל30 שניות לפעולה בודדת ושעה וחצי לכל יום לכל הפרויקטים של כתובת המייל הנוכחית (כשיש הרבה פרויקטים, או כשמתמשים בAPP SCRIPT למשהו אחר זה מגביל).

    הצורך בשימוש ב JS:

    • פונקציות SHEETS כשהם מתחילות להיות ברמה גבוהה, הקובץ נטען לאט יותר. עד כדי סכנה מפני קפיאת הקובץ.
    • בייבוא על ידי IMPORTRANGE , אם החישוב הקודם היה באמצעות פונקציות זה נחשב כבד יותר, ואז מהר מאוד נגיע לבאג של גוגל המעצבן שפתאום ללא התראה, גם כשהקובץ סגור, הפונקציה הופכת להיות ERROR.

    אז הפתרון שלי:
    יצרתי פונקציה מותאמת אישית (בתוך SHEETS - לא קשור לAPP SCRIPT) הכותבת תווים מיוחדים וממוקמת בגליון נפרד, שם כל אירוע קורא אותה.

    קראתי לה SETVALUES והיא מחשבת את הפונקציות ופורסת את מערך התוצאה בשרשור ארוך בתא בו היא נמצאת, שאותו הJS קורא ומיישם.

    הבעיה בפתרון שלי שמגבלות התאים הם 50,000 תווים לכל תא, כך שבמערכים גדולים - שעבורם השימוש, יהיה צורך לפצל וכו'... כך שעכ"פ זה גם לא פתרון מושלם.

    נשמח לשמוע על רעיונות נוספים.


  • פונקציית SHEETS בתוך APP SCRIPT
    Y.Excel.AccessY Y.Excel.Access

    האם אפשר לקבל את ערכי פונקציית GOOGLE SHEETS בתוך הקוד של APP SCRIPT?

    כלומר, אני יודע שאפשר לכתוב טקסט המכיל פונקציה קיימת של SHEETS בתוך תא ואחרי שהפוקנציה מחושבת בSHEETS אפשר לקבל את הערכים חזרה לAPP SCRIPT ע"י GETVALUES. אבל זה מצריך מיקום פיזי בתוך הגליונות.

    האם אפשר פשוט לתת טקסט שמכיל פונקציה של SHEETS וה JS יבין לבד לחשב את הפונקציה ולתת אותה כ ARRAY? בלי צורך של שום אינטרקציה עם הSHEETS עצמו


  • מאקרו לזיהוי מחזוריות
    Y.Excel.AccessY Y.Excel.Access

    @dovid כתב במאקרו לזיהוי מחזוריות:

    אכמ"ל

    בהחלט, אפילו תערוך מה שכתבת.

    מספיק? או למחוק הכל?


  • מאקרו לזיהוי מחזוריות
    Y.Excel.AccessY Y.Excel.Access

    @one1010 זה יהיה חלקי, כי נתקעתי 😞 אז לא המשכתי לפתח.
    אולי אצליח בהזדמנות לבודד את החלקים הפשוטים יותר.

    איך אפשר ליצור איתך קשר?


  • מאקרו לזיהוי מחזוריות
    Y.Excel.AccessY Y.Excel.Access

    @one1010 כתב במאקרו לזיהוי מחזוריות:

    אישית הייתי מעדיף לעבוד עם שפה מודרנית יותר מVBA לכזה אתגר, אבל אפשר לשרוד בנקודה הזו.

    סליחה על הבורות, ניתן לעבוד עם שפות תכנות אחרות באקסל? או שאתה מתכוון לעבוד בכלל בצורה אחרת?

    לצורך שלך, דווקא יצרתי באקסס, וזה די קל שם - לבסס הכל על שאילתות ועל פוקנציה ממירה מתאריך לועזי לעברי ולהיפך.

    האתגר האמיתי הוא ההגדרות ההלכתיות והמחלוקות, לא התכנות, אבל אכמ"ל (חזקה עלי חוקי הפורום שאין לדון בנושאים תורניים, אם אתה רוצה להאריך בזה אפשר בפרטי אא"כ @dovid יאשר...)

    אני מכיר מתכנת שבנה יפה מאוד ב C# במשך זמן ממושך של כמה חודשים / שנה, וכלל אפילו נימוקים הלכתיים בטקסט בתוכנה, ונראות וכו' וכו', אבל נתקע כנ"ל.


  • שיפור SHEETS & FROMS המתפקדים כאתר (מאגר בני הישיבות)
    Y.Excel.AccessY Y.Excel.Access

    @mistr כתב בשיפור SHEETS & FROMS המתפקדים כאתר (מאגר בני הישיבות):

    כדאי להוסיף עמודה "תאריך עדכון" ליד כל שם,
    (בפרטי הקובץ ראיתי שהקובץ נוצר לפני שנתיים, ולא ניתן לצפות בכל תא ב"היסטוריית גרסאות" שלו)
    כמובן אפשר להוסיף מייל אוטומטי כל חודש/חודשיים/אחר ששואל אם זה רלוונטי ולעדכן את התאריך הזה

    תודה על המשוב!

    להוסיף תאריך עדכון ממש, אני מסתפק בזה, כי אולי אנשים לא רוצים שידעו לפני כמה זמן הם נרשמו... למרות שיש לי את כל התאריכים כמובן.
    לצורך השמות החדשים קבעתי את הגליון 'נוספו לאחרונה'.

    גם לא לנדנד לאנשים במייל - מה ששנאוי עליך... 🙂

    אבל כן אפשר לקבוע תאריך תפוגה אוטומטי ושאנשים יוכלו לבחור - תוך שנה / 2 / 3 מהעדכון האחרון השם יוסר אוטומטית.
    ואולי בזמן ההסרה לשלוח מייל (עם נוסח 'אם היו כבר אירוסין, מזל טוב! אתם לא צריכים לעשות דבר' וכדו').

    מה דעתכם?


  • גוגל פורמס
    Y.Excel.AccessY Y.Excel.Access

    @בער
    הלואי והיה אפשר לפתור את זה ברמת הפורמס...
    אם תדע, אשמח מאוד לשמוע, יהיה לי נפק"מ הרבה.

    הפתרון הפשוט הוא ליצור בשיטס המקבל את הנתונים פונקציה

    =ARRAYFORMULA(IF(A:A100="ארה""ב",B:B100,C:C100)
    
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 14
  • 15
  • 4 / 15
  • התחברות

  • אין לך חשבון עדיין? הרשמה

  • התחברו או הירשמו כדי לחפש.
  • פוסט ראשון
    פוסט אחרון
0
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום