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

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

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תוכנה
  3. הפעלת סקריפט בגוגל שיטס

הפעלת סקריפט בגוגל שיטס

מתוזמן נעוץ נעול הועבר תוכנה
23 פוסטים 3 כותבים 557 צפיות 3 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • ב בער

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

    מיכאלושמ מנותק
    מיכאלושמ מנותק
    מיכאלוש
    כתב ב נערך לאחרונה על ידי
    #7

    @בער ולחצן או תפריט עם הפנייה למאקרו/סקריפט לא מופיע באפליקצייה ?

    .

    ב תגובה 1 תגובה אחרונה
    0
    • מיכאלושמ מיכאלוש

      @בער ולחצן או תפריט עם הפנייה למאקרו/סקריפט לא מופיע באפליקצייה ?

      ב מנותק
      ב מנותק
      בער
      כתב ב נערך לאחרונה על ידי
      #8

      @מיכאלוש לא
      הקובייה של הסקריפט מופיעה אבל כשאני לוחץ על זה לא קורה כלום

      תגובה 1 תגובה אחרונה
      0
      • ב בער

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

        מיכאלושמ מנותק
        מיכאלושמ מנותק
        מיכאלוש
        כתב ב נערך לאחרונה על ידי
        #9

        @בער משהוא ידני בסגנון הזה

        function blaBla() {
          let blabla = SpreadsheetApp.getActiveSheet().getRange('A1').getValue()
            if (blabla === 'כן') {
            //code
            blabla.setValue(לא);
          }
        }
        

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

        .

        ב 2 תגובות תגובה אחרונה
        0
        • מיכאלושמ מיכאלוש

          @בער משהוא ידני בסגנון הזה

          function blaBla() {
            let blabla = SpreadsheetApp.getActiveSheet().getRange('A1').getValue()
              if (blabla === 'כן') {
              //code
              blabla.setValue(לא);
            }
          }
          

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

          ב מנותק
          ב מנותק
          בער
          כתב ב נערך לאחרונה על ידי
          #10

          @מיכאלוש איפה אני כותב את זה בפונקציה עצמה? בגליון?

          תגובה 1 תגובה אחרונה
          0
          • מיכאלושמ מיכאלוש

            @בער משהוא ידני בסגנון הזה

            function blaBla() {
              let blabla = SpreadsheetApp.getActiveSheet().getRange('A1').getValue()
                if (blabla === 'כן') {
                //code
                blabla.setValue(לא);
              }
            }
            

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

            ב מנותק
            ב מנותק
            בער
            כתב ב נערך לאחרונה על ידי
            #11

            @מיכאלוש כתב בהפעלת סקריפט בגוגל שיטס:

            function blaBla() { let blabla = SpreadsheetApp.getActiveSheet().getRange('A1').getValue() if (blabla === 'כן') { //code blabla.setValue(לא); }

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

            תגובה 1 תגובה אחרונה
            0
            • ב בער

              כרגע מתאפשר לי להפעיל סקריפט רק במחשב ולא באפלקצייה בפלאפון איך אני יכול להפעיל את הסקריפט בכל זאת אולי דרך הפעלת הסקריפט מרחוק?

              אבייא מנותק
              אבייא מנותק
              אביי
              כתב ב נערך לאחרונה על ידי אביי
              #12

              @בער טריגר בעת עריכה, ותגדיר לתא מסויים ע"י שימוש ב

              function onEdit(e) {
                  var sheetName = "שם הגיליון";
                  var cellA1 = "A1";
              
                  var sheet_e = e.source.getActiveSheet().getName();
                  var cell_e = e.range.getA1Notation();
              
                  Logger.log(e)
                  Logger.log(sheet_e)
                  Logger.log(cell_e)
              
                  if (sheet_e !== sheetName || cell_e !== cellA1) {
                      Logger.log("The edited cell is not A1 = " + sheet_e + cell_e)
                      return;
                  } else {
                      Logger.log("An edit was detected in cell A1 running a script...");
                  }
              }
              

              ניתן ליצור עימי קשר 8140hp+t@gmail.com | קטלוג מוצרים
              הלינקיה שלי https://abaye.co/link.html

              ב תגובה 1 תגובה אחרונה
              2
              • אבייא אביי

                @בער טריגר בעת עריכה, ותגדיר לתא מסויים ע"י שימוש ב

                function onEdit(e) {
                    var sheetName = "שם הגיליון";
                    var cellA1 = "A1";
                
                    var sheet_e = e.source.getActiveSheet().getName();
                    var cell_e = e.range.getA1Notation();
                
                    Logger.log(e)
                    Logger.log(sheet_e)
                    Logger.log(cell_e)
                
                    if (sheet_e !== sheetName || cell_e !== cellA1) {
                        Logger.log("The edited cell is not A1 = " + sheet_e + cell_e)
                        return;
                    } else {
                        Logger.log("An edit was detected in cell A1 running a script...");
                    }
                }
                
                ב מנותק
                ב מנותק
                בער
                כתב ב נערך לאחרונה על ידי
                #13

                @אביי כתב בהפעלת סקריפט בגוגל שיטס:

                @בער טריגר בעת עריכה, ותגדיר לתא מסויים ע"י שימוש ב

                function onEdit(e) {
                    var sheetName = "שם הגיליון";
                    var cellH11 = "A1";
                
                    var sheet_e = e.source.getActiveSheet().getName();
                    var cell_e = e.range.getA1Notation();
                
                    Logger.log(e)
                    Logger.log(sheet_e)
                    Logger.log(cell_e)
                
                    if (sheet_e !== sheetName || cell_e !== cellA1) {
                        Logger.log("The edited cell is not A1 = " + sheet_e + cell_e)
                        return;
                    } else {
                        Logger.log("An edit was detected in cell A1 running a script...");
                    }
                }
                

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

                אבייא ב 2 תגובות תגובה אחרונה
                0
                • ב בער

                  @אביי כתב בהפעלת סקריפט בגוגל שיטס:

                  @בער טריגר בעת עריכה, ותגדיר לתא מסויים ע"י שימוש ב

                  function onEdit(e) {
                      var sheetName = "שם הגיליון";
                      var cellH11 = "A1";
                  
                      var sheet_e = e.source.getActiveSheet().getName();
                      var cell_e = e.range.getA1Notation();
                  
                      Logger.log(e)
                      Logger.log(sheet_e)
                      Logger.log(cell_e)
                  
                      if (sheet_e !== sheetName || cell_e !== cellA1) {
                          Logger.log("The edited cell is not A1 = " + sheet_e + cell_e)
                          return;
                      } else {
                          Logger.log("An edit was detected in cell A1 running a script...");
                      }
                  }
                  

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

                  אבייא מנותק
                  אבייא מנותק
                  אביי
                  כתב ב נערך לאחרונה על ידי אביי
                  #14

                  @בער תפתח את עורך הסקריפטים של הקובץ, תדביק שם את הקוד הנ"ל, תתאים את שם הגיליון והתא הרלוונטיים. ובתוך הelse תשים קריאה לפונקציה שאתה רוצה להפעיל, נניח לפונקציה בשם logTo תכתוב כך:

                  logTo();
                  

                  ניתן ליצור עימי קשר 8140hp+t@gmail.com | קטלוג מוצרים
                  הלינקיה שלי https://abaye.co/link.html

                  ב תגובה 1 תגובה אחרונה
                  2
                  • ב בער

                    @אביי כתב בהפעלת סקריפט בגוגל שיטס:

                    @בער טריגר בעת עריכה, ותגדיר לתא מסויים ע"י שימוש ב

                    function onEdit(e) {
                        var sheetName = "שם הגיליון";
                        var cellH11 = "A1";
                    
                        var sheet_e = e.source.getActiveSheet().getName();
                        var cell_e = e.range.getA1Notation();
                    
                        Logger.log(e)
                        Logger.log(sheet_e)
                        Logger.log(cell_e)
                    
                        if (sheet_e !== sheetName || cell_e !== cellA1) {
                            Logger.log("The edited cell is not A1 = " + sheet_e + cell_e)
                            return;
                        } else {
                            Logger.log("An edit was detected in cell A1 running a script...");
                        }
                    }
                    

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

                    ב מנותק
                    ב מנותק
                    בער
                    כתב ב נערך לאחרונה על ידי
                    #15
                    פוסט זה נמחק!
                    תגובה 1 תגובה אחרונה
                    0
                    • אבייא אביי

                      @בער תפתח את עורך הסקריפטים של הקובץ, תדביק שם את הקוד הנ"ל, תתאים את שם הגיליון והתא הרלוונטיים. ובתוך הelse תשים קריאה לפונקציה שאתה רוצה להפעיל, נניח לפונקציה בשם logTo תכתוב כך:

                      logTo();
                      
                      ב מנותק
                      ב מנותק
                      בער
                      כתב ב נערך לאחרונה על ידי בער
                      #16

                      @אביי כתב בהפעלת סקריפט בגוגל שיטס:

                      @בער תפתח את עורך הסקריפטים של הקובץ, תדביק שם את הקוד הנ"ל, תתאים את שם הגיליון והתא הרלוונטיים. ובתוך הif תשים קריאה לפונקציה שאתה רוצה להפעיל, נניח לפונקציה בשם logTo תכתוב כך:

                      logTo();
                      

                      לפונקציה שלי קוראים "myFunction20" איפה בתוך הif אני כותב את זה

                      @בער כתב בהפעלת סקריפט בגוגל שיטס:

                      function onEdit(e) {
                          var sheetName = "מחשבון מילוי פחיות";
                          var cellH11 = "A1";
                      
                          var sheet_e = e.source.getActiveSheet().getName();
                          var cell_e = e.range.getA1Notation();
                      
                          Logger.log(e)
                          Logger.log(sheet_e)
                          Logger.log(cell_e)
                      
                          if (sheet_e !== sheetName || cell_e !== cellA1) {
                             myFunction20();
                          } else {
                              Logger.log("An edit was detected in cell A1 running a script...");
                          }
                      }
                      

                      כתבתי ככה ולא מפעיל לי

                      ב תגובה 1 תגובה אחרונה
                      0
                      • ב בער

                        @אביי כתב בהפעלת סקריפט בגוגל שיטס:

                        @בער תפתח את עורך הסקריפטים של הקובץ, תדביק שם את הקוד הנ"ל, תתאים את שם הגיליון והתא הרלוונטיים. ובתוך הif תשים קריאה לפונקציה שאתה רוצה להפעיל, נניח לפונקציה בשם logTo תכתוב כך:

                        logTo();
                        

                        לפונקציה שלי קוראים "myFunction20" איפה בתוך הif אני כותב את זה

                        @בער כתב בהפעלת סקריפט בגוגל שיטס:

                        function onEdit(e) {
                            var sheetName = "מחשבון מילוי פחיות";
                            var cellH11 = "A1";
                        
                            var sheet_e = e.source.getActiveSheet().getName();
                            var cell_e = e.range.getA1Notation();
                        
                            Logger.log(e)
                            Logger.log(sheet_e)
                            Logger.log(cell_e)
                        
                            if (sheet_e !== sheetName || cell_e !== cellA1) {
                               myFunction20();
                            } else {
                                Logger.log("An edit was detected in cell A1 running a script...");
                            }
                        }
                        

                        כתבתי ככה ולא מפעיל לי

                        ב מנותק
                        ב מנותק
                        בער
                        כתב ב נערך לאחרונה על ידי
                        #17

                        הוא כותב לי שגיאה
                        3f523e90-ff88-4fb9-94f3-9f291ee65be9-image.png

                        אבייא תגובה 1 תגובה אחרונה
                        0
                        • ב בער

                          הוא כותב לי שגיאה
                          3f523e90-ff88-4fb9-94f3-9f291ee65be9-image.png

                          אבייא מנותק
                          אבייא מנותק
                          אביי
                          כתב ב נערך לאחרונה על ידי
                          #18

                          @בער היתה לי טעות בשם המשתנה בשורה 3 תיקנתי במקור.

                          ניתן ליצור עימי קשר 8140hp+t@gmail.com | קטלוג מוצרים
                          הלינקיה שלי https://abaye.co/link.html

                          ב 2 תגובות תגובה אחרונה
                          1
                          • אבייא אביי

                            @בער היתה לי טעות בשם המשתנה בשורה 3 תיקנתי במקור.

                            ב מנותק
                            ב מנותק
                            בער
                            כתב ב נערך לאחרונה על ידי
                            #19

                            @אביי כתב בהפעלת סקריפט בגוגל שיטס:

                            @בער היתה לי טעות בשם המשתנה בשורה 3 תיקנתי במקור.

                            אוקיי תקינתי לפי החדש וב"ה זה עובד כרגע גם בפלאפון!
                            תודה רבה רבה על כל העזרה וההדרכות שלך

                            תגובה 1 תגובה אחרונה
                            1
                            • אבייא אביי

                              @בער היתה לי טעות בשם המשתנה בשורה 3 תיקנתי במקור.

                              ב מנותק
                              ב מנותק
                              בער
                              כתב ב נערך לאחרונה על ידי בער
                              #20

                              @אביי
                              עוד שאלה
                              אם אני רוצה להוסיף עוד פונקציה כזאת לאותו קובץ, צריך לשנות משהו בשם של הפונקציה? כמו לכתוב onEdit1 onEdit2?
                              עוד שאלה
                              יש אפשרות בתוך סקריפט שחלק מהסקריפט נמצא בקובץ אחד וחלק עובד על קובץ שני?

                              אבייא 2 תגובות תגובה אחרונה
                              0
                              • ב בער

                                @אביי
                                עוד שאלה
                                אם אני רוצה להוסיף עוד פונקציה כזאת לאותו קובץ, צריך לשנות משהו בשם של הפונקציה? כמו לכתוב onEdit1 onEdit2?
                                עוד שאלה
                                יש אפשרות בתוך סקריפט שחלק מהסקריפט נמצא בקובץ אחד וחלק עובד על קובץ שני?

                                אבייא מנותק
                                אבייא מנותק
                                אביי
                                כתב ב נערך לאחרונה על ידי אביי
                                #21

                                @בער כתב בהפעלת סקריפט בגוגל שיטס:

                                אם אני רוצה להוסיף עוד פונקציה כזאת לאותו קובץ, צריך לשנות משהו בשם של הפונקציה? כמו לכתוב onEdit1 onEdit2?

                                לא. אפשר להגדיר רק טריגר עריכה אחד, אבל אפשר לעשות ככה:

                                function onEdit(e) {
                                    var sheetName1 = "מחשבון מילוי פחיות";
                                    var cell1 = "A1";
                                
                                    var sheetName2 = "מחשבון מילוי פחיות";
                                    var cell2 = "A2";
                                
                                    var sheet_e = e.source.getActiveSheet().getName();
                                    var cell_e = e.range.getA1Notation();
                                
                                    Logger.log(e)
                                    Logger.log(sheet_e)
                                    Logger.log(cell_e)
                                
                                    if (sheet_e == sheetName1 || cell_e == cell1) {
                                        // כאן תרשום את שם הפונקצי להרצה במקרה וערכת את תא A1
                                    } else if (sheet_e == sheetName2 || cell_e == cell2) {
                                        // כאן תרשום את שם הפונקציה להרצה במידה וערכת את תא A2
                                    } else {
                                        // כאן תרשום מה יקרה במידה והתא הנערך אינו אחד מהקודמים (ניתן להשאיר ריק)
                                    }
                                }
                                

                                אתה יכול להוסיף כמה טווחים וelse if שאתה רוצה...

                                ניתן ליצור עימי קשר 8140hp+t@gmail.com | קטלוג מוצרים
                                הלינקיה שלי https://abaye.co/link.html

                                תגובה 1 תגובה אחרונה
                                1
                                • ב בער

                                  @אביי
                                  עוד שאלה
                                  אם אני רוצה להוסיף עוד פונקציה כזאת לאותו קובץ, צריך לשנות משהו בשם של הפונקציה? כמו לכתוב onEdit1 onEdit2?
                                  עוד שאלה
                                  יש אפשרות בתוך סקריפט שחלק מהסקריפט נמצא בקובץ אחד וחלק עובד על קובץ שני?

                                  אבייא מנותק
                                  אבייא מנותק
                                  אביי
                                  כתב ב נערך לאחרונה על ידי אביי
                                  #22

                                  @בער כתב בהפעלת סקריפט בגוגל שיטס:

                                  יש אפשרות בתוך סקריפט שחלק מהסקריפט נמצא בקובץ אחד וחלק עובד על קובץ שני?

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

                                  לדוגמה באמצעות איידי

                                  let sheetFile = SpreadsheetApp.openById("האיידי של הקובץ");
                                  

                                  או באמצעות הלינק

                                  let sheetFile = SpreadsheetApp.openByUrl('https://docs.google.com/spreadsheets/d/gmtumriexoprtc8um/edit');
                                  

                                  דוגמה למימוש

                                  function files() {
                                      fileId = `1m9wO0hnZiNxF_TpDUnIQE`
                                      sheetName = `סטטיסטיקות`
                                  
                                      var sheetFile = SpreadsheetApp.openById(fileId);
                                      Logger.log(sheetFile.getName()); // מדפיס את שם הקובץ ללוג
                                      var sheet = sheetFile.getSheetByName(sheetName);
                                      sheet.getRange('A1').setValue("אני נכתבתי באמצעות סקריפט נחמד!");
                                  }
                                  

                                  הקוד הזה יכתוב בתא A1 בגליון בשם "סטטיסטיקות" בקובץ עם האיידי שתכניסו.

                                  שים לב, שניתן לערוך גם קבצים בבעלות של משתמשים אחרים בתנאי שיש לך הרשאת עריכה.

                                  ניתן ליצור עימי קשר 8140hp+t@gmail.com | קטלוג מוצרים
                                  הלינקיה שלי https://abaye.co/link.html

                                  אבייא תגובה 1 תגובה אחרונה
                                  1
                                  • אבייא אביי

                                    @בער כתב בהפעלת סקריפט בגוגל שיטס:

                                    יש אפשרות בתוך סקריפט שחלק מהסקריפט נמצא בקובץ אחד וחלק עובד על קובץ שני?

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

                                    לדוגמה באמצעות איידי

                                    let sheetFile = SpreadsheetApp.openById("האיידי של הקובץ");
                                    

                                    או באמצעות הלינק

                                    let sheetFile = SpreadsheetApp.openByUrl('https://docs.google.com/spreadsheets/d/gmtumriexoprtc8um/edit');
                                    

                                    דוגמה למימוש

                                    function files() {
                                        fileId = `1m9wO0hnZiNxF_TpDUnIQE`
                                        sheetName = `סטטיסטיקות`
                                    
                                        var sheetFile = SpreadsheetApp.openById(fileId);
                                        Logger.log(sheetFile.getName()); // מדפיס את שם הקובץ ללוג
                                        var sheet = sheetFile.getSheetByName(sheetName);
                                        sheet.getRange('A1').setValue("אני נכתבתי באמצעות סקריפט נחמד!");
                                    }
                                    

                                    הקוד הזה יכתוב בתא A1 בגליון בשם "סטטיסטיקות" בקובץ עם האיידי שתכניסו.

                                    שים לב, שניתן לערוך גם קבצים בבעלות של משתמשים אחרים בתנאי שיש לך הרשאת עריכה.

                                    אבייא מנותק
                                    אבייא מנותק
                                    אביי
                                    כתב ב נערך לאחרונה על ידי אביי
                                    #23

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

                                      "oauthScopes": [
                                      "https://www.googleapis.com/auth/spreadsheets"
                                    ],
                                    

                                    בשביל להציג את המניפסט, יש ללחוץ על סמל ההגדרות מימין, ולסמן וי בהצג את המניפסט.

                                    b7cec72d-f955-4907-a5bf-6db465ab46d1-image.png
                                    2addc2e2-6c79-424a-8287-e9782015573e-image.png

                                    ניתן ליצור עימי קשר 8140hp+t@gmail.com | קטלוג מוצרים
                                    הלינקיה שלי https://abaye.co/link.html

                                    תגובה 1 תגובה אחרונה
                                    0
                                    תגובה
                                    • תגובה כנושא
                                    התחברו כדי לפרסם תגובה
                                    • מהישן לחדש
                                    • מהחדש לישן
                                    • הכי הרבה הצבעות


                                    • 1
                                    • 2
                                    בא תתחבר לדף היומי!
                                    • התחברות

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

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