צריך עזרה בGOOGLE SHEETS .

  • פותח הנושא eyal
  • פורסם בתאריך

eyal

Member
הצטרף
16/9/20
עשיתי sheet שיעקב אחרי מצב התיק. הסתדרתי עם הכל חוץ ממציאת הדיבידנד.
אחרי קצת חיפושים הגעתי לפורמולה הבאה :
=index(importhtml(CONCATENATE("https://finviz.com/quote.ashx?t=",B13,""),"table",11),7,2)
אבל כאשר אני עושה אותה אני מקבל את הארור הבא:
85
אשמח לעזרה, תודה.
 

מומו

Well-Known Member
הצטרף
12/2/19
שלום,

תנסה לבטל את ה-CONCATENATE ובמקומו לשרשר את הטקסט עם הסימן "&"
לדוגמה:
=index(IMPORTHTML("http://finviz.com/quote.ashx?t=" & B13, "table" ,11 ),7,2)

רק שים לב שה-Google Sheets לא אוהבים יותר מדיי קישורים לאתרים אחרים. במידה ויהיו לך הרבה תאים עם IMPORTHTML באיזשהו שלב אתה תקבל Error למרות שכל הפקודות והקישורים שלך תקינים.
לצערינו, גוגל לא ממש משתפים מה המגבלות של ה-ImportHTML אבל לפי מה שקראתי יש כאלה.
וגם אם חשבת לחלק לגיליונות - זה לא יעזור... מניסיון :mad:
 

eyal

Member
הצטרף
16/9/20
שלום,

תנסה לבטל את ה-CONCATENATE ובמקומו לשרשר את הטקסט עם הסימן "&"
לדוגמה:
=index(IMPORTHTML("http://finviz.com/quote.ashx?t=" & B13, "table" ,11 ),7,2)

רק שים לב שה-Google Sheets לא אוהבים יותר מדיי קישורים לאתרים אחרים. במידה ויהיו לך הרבה תאים עם IMPORTHTML באיזשהו שלב אתה תקבל Error למרות שכל הפקודות והקישורים שלך תקינים.
לצערינו, גוגל לא ממש משתפים מה המגבלות של ה-ImportHTML אבל לפי מה שקראתי יש כאלה.
וגם אם חשבת לחלק לגיליונות - זה לא יעזור... מניסיון :mad:
תודה רבה, אני חושב שעליתה על הבעיה. כי בהתחלה עבד לי הקוד שלי ואז פתאום זה עשה ארור.
האם אתה ממליץ לעבור לאקסל או משהו כזה או שגם שם אין פתרון מזהיר?
עם הקוד שלך זה עושה את אותה הבעיה. האם לך הוא עובד?
 

daat99

מייסד
מנהל
הצטרף
22/11/15
אני אישית התייאשתי מלנסות לתפעל את השאילתות האלו באקסל/גוגל.
 

SIN

Well-Known Member
הצטרף
12/12/16
בוקר טוב,

אחרי הרבה ניסיונות , קריאה ומחקר כולל דברים שעבדו והפסיקו בעיקר מסיבות חיצוניות שקשורות לאתרים/API-ים שלהם - אני משתמש בנוסחא הבאה - עובד לי כבר זמן רב :
86​

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

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

בהצלחה
 

מומו

Well-Known Member
הצטרף
12/2/19
אחרי הרבה ניסיונות , קריאה ומחקר כולל דברים שעבדו והפסיקו בעיקר מסיבות חיצוניות שקשורות לאתרים/API-ים שלהם - אני משתמש בנוסחא הבאה - עובד לי כבר זמן רב :
86
מציע לך לנסות אותה, אם אתה בעניין של לבנות פרוטפוליו בגוגלשיטס.
זו אותה הפונקציה ImportHTML שציינו למעלה, רק שהוספת עוד התאמות כדי שיציג כמו שאתה רוצה בגיליון שלך. אבל הבעיה עדיין נשארת, שימוש בפונקציה הזו בהרבה תאים יביא בשלב מסוים הודעת Error והכי מעצבן שזה לא עקבי.

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

מה שנשאר זה כתיבת מאקרו באקסל או בגוגלשיטס. המסקנה שלי שכתיבת המאקרו בגוגלשיטס תהיה יותר פשוטה
 

eyal

Member
הצטרף
16/9/20
בוקר טוב,

אחרי הרבה ניסיונות , קריאה ומחקר כולל דברים שעבדו והפסיקו בעיקר מסיבות חיצוניות שקשורות לאתרים/API-ים שלהם - אני משתמש בנוסחא הבאה - עובד לי כבר זמן רב :

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

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

בהצלחה
ראשית תודה, זה עובד. אני צריך להוציא קצת יותר נתונים שאין באתר שלך, אלה באתר אחד.
לדוגמא : https://seekingalpha.com/symbol/EV/dividends/scorecard.
תוכל לעזור לי לנסח את הSCRIPT בכדי להוציא את הANNUAL PAYOUT וה DIVIDEND FREQUENCY ?
כרגע זה מה שעשיתי וזה עושה EROR.
בכדי למצוא את הANNUAL DIVIDEND :
=query(IMPORTHTML(CONCATENATE("https://seekingalpha.com/symbol/",UPPER(B2),"/dividends/scorecard"),"table",0),"select Col2 LIMIT 1")
88
תודה !


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

SIN

Well-Known Member
הצטרף
12/12/16
זו אותה הפונקציה ImportHTML שציינו למעלה, רק שהוספת עוד התאמות כדי שיציג כמו שאתה רוצה בגיליון שלך. אבל הבעיה עדיין נשארת, שימוש בפונקציה הזו בהרבה תאים יביא בשלב מסוים הודעת Error והכי מעצבן שזה לא עקבי.

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

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

ראשית תודה, זה עובד. אני צריך להוציא קצת יותר נתונים שאין באתר שלך, אלה באתר אחד.
לדוגמא : https://seekingalpha.com/symbol/EV/dividends/scorecard.
תוכל לעזור לי לנסח את הSCRIPT בכדי להוציא את הANNUAL PAYOUT וה DIVIDEND FREQUENCY ?
כרגע זה מה שעשיתי וזה עושה EROR.
בכדי למצוא את הANNUAL DIVIDEND :
=query(IMPORTHTML(CONCATENATE("https://seekingalpha.com/symbol/",UPPER(B2),"/dividends/scorecard"),"table",0),"select Col2 LIMIT 1")
צפה בקובץ המצורף 88
תודה !


בקוד שלך אני מקבל רק את הדיבידנד האחרון, כך שנוצר מצב שאם חברה מביאה דיבידנד פעם בחודש או פעם בשנה אני מתייחס לזה באותה צורה...
לא ניסיתי להביא נתונים מ-SEEKINGALPHA ככה שאני פחות יכול לסייע לך בזה לצערי.
הייתי מנסה לקרוא על ה-API או הטבלאות שהם מייצרים, ומבין את הלוגיקה שלהם. זה יכוון אותך טוב יותר בכתיבת הפונקציה, כי כנראה שאתה שולח אותה למקום בטבלה שאין בו נתונים. או שכמו שציינו קודם, ייתכן שזה חלק ממגיפת ה-ERROR-ים של גוגלשיטס.
לדעתי, כדי לפתור את בעיית הפעם בחודש/פעם בשנה פשוט תכפיל ידנית באקסל. קצת פרימיטיבי אבל חוסך כאב ראש.
 

eyal

Member
הצטרף
16/9/20
לא טענתי שהפתרון שלי חדשני או שונה, רק שהוא עובד לי בצורה סבירה כבר זמן רב.
נכון להרגע, אני לא נתקלתי בבעיית ה-ERROR שאתה מתאר בפונקציה שכתבתי, ואני מביא נתונים למעל 50 מניות ככה שזה עובד, אז אני לא מחפש פתרונות לבעיות שלא קיימות. עבורי לפחות.
לכתוב מאקרו באקסל זה כבר מאמץ מבחינתי ומתנגש עם המשקיע העצל שבי.


לא ניסיתי להביא נתונים מ-SEEKINGALPHA ככה שאני פחות יכול לסייע לך בזה לצערי.
הייתי מנסה לקרוא על ה-API או הטבלאות שהם מייצרים, ומבין את הלוגיקה שלהם. זה יכוון אותך טוב יותר בכתיבת הפונקציה, כי כנראה שאתה שולח אותה למקום בטבלה שאין בו נתונים. או שכמו שציינו קודם, ייתכן שזה חלק ממגיפת ה-ERROR-ים של גוגלשיטס.
לדעתי, כדי לפתור את בעיית הפעם בחודש/פעם בשנה פשוט תכפיל ידנית באקסל. קצת פרימיטיבי אבל חוסך כאב ראש.
הסתדרתי, תודה רבה על העזרה!
 

קבצים מצורפים

נערך לאחרונה ב:

מומו

Well-Known Member
הצטרף
12/2/19
לא טענתי שהפתרון שלי חדשני או שונה, רק שהוא עובד לי בצורה סבירה כבר זמן רב.
נכון להרגע, אני לא נתקלתי בבעיית ה-ERROR שאתה מתאר בפונקציה שכתבתי, ואני מביא נתונים למעל 50 מניות ככה שזה עובד, אז אני לא מחפש פתרונות לבעיות שלא קיימות. עבורי לפחות.
לכתוב מאקרו באקסל זה כבר מאמץ מבחינתי ומתנגש עם המשקיע העצל שבי.
סליחה, לא התכוונתי להיות גס. מתנצל שהתנסחתי לא נכון.

במקרה שלי הגעתי להודעת הError אחרי שניסיתי לשלוף הרבה נתונים. לא יותר מ50 מניות אבל לכל מניה הרבה נתונים כך שקיבלתי בסופו של דבר הרבה תאים עם ImporrHTML.
לאחר קריאה והרבה חקירה ברשת, הבנתי שיש מגבלה וגוגל לא ממש ששים לשתף אותנו מה הלוגיקה של אותה מגבלה

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

אם מישהו מעוניין לקדם ולפתח את הנושא (ואולי יחד ליצור משהו יותר גנרי) אשמח לשתף

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


תוכל לעזור לי לנסח את הSCRIPT בכדי להוציא את הANNUAL PAYOUT וה DIVIDEND FREQUENCY ?
כרגע זה מה שעשיתי וזה עושה EROR.
בכדי למצוא את הANNUAL DIVIDEND :
=query(IMPORTHTML(CONCATENATE("https://seekingalpha.com/symbol/",UPPER(B2),"/dividends/scorecard"),"table",0),"select Col2 LIMIT 1")
אייל, אני מבין שכבר הסתדרת וזה מצוין. רק רציתי לשאול אם אתה בטוח שחייבים להשתמש בפונקציה Upper? עד כמה שאני יודע הURL הוא לא Case Sensitive.
 

eyal

Member
הצטרף
16/9/20
סליחה, לא התכוונתי להיות גס. מתנצל שהתנסחתי לא נכון.

במקרה שלי הגעתי להודעת הError אחרי שניסיתי לשלוף הרבה נתונים. לא יותר מ50 מניות אבל לכל מניה הרבה נתונים כך שקיבלתי בסופו של דבר הרבה תאים עם ImporrHTML.
לאחר קריאה והרבה חקירה ברשת, הבנתי שיש מגבלה וגוגל לא ממש ששים לשתף אותנו מה הלוגיקה של אותה מגבלה

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

אם מישהו מעוניין לקדם ולפתח את הנושא (ואולי יחד ליצור משהו יותר גנרי) אשמח לשתף

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




אייל, אני מבין שכבר הסתדרת וזה מצוין. רק רציתי לשאול אם אתה בטוח שחייבים להשתמש בפונקציה Upper? עד כמה שאני יודע הURL הוא לא Case Sensitive.
כן, אף פעם לא חשבתי שללמוד sheets יהיה יותר קשה משפת תכנות.
אם תצתרך עזרה או לקחת דוגמא אעזור לך בכיף.
 

eyal

Member
הצטרף
16/9/20
סליחה, לא התכוונתי להיות גס. מתנצל שהתנסחתי לא נכון.

במקרה שלי הגעתי להודעת הError אחרי שניסיתי לשלוף הרבה נתונים. לא יותר מ50 מניות אבל לכל מניה הרבה נתונים כך שקיבלתי בסופו של דבר הרבה תאים עם ImporrHTML.
לאחר קריאה והרבה חקירה ברשת, הבנתי שיש מגבלה וגוגל לא ממש ששים לשתף אותנו מה הלוגיקה של אותה מגבלה

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

אם מישהו מעוניין לקדם ולפתח את הנושא (ואולי יחד ליצור משהו יותר גנרי) אשמח לשתף

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




אייל, אני מבין שכבר הסתדרת וזה מצוין. רק רציתי לשאול אם אתה בטוח שחייבים להשתמש בפונקציה Upper? עד כמה שאני יודע הURL הוא לא Case Sensitive.
לא בטוח שצריך להשתמש בupper. אבל זה לא כולכך משנה, (זה מה שראיתי בstackoverf אז לא רציתי לשנות משהו שכבר עובד
 

מומו

Well-Known Member
הצטרף
12/2/19
לא בטוח שצריך להשתמש בupper. אבל זה לא כולכך משנה, (זה מה שראיתי בstackoverf אז לא רציתי לשנות משהו שכבר עובד
מנסה לחסוך איפה שרק אפשר, גם בתיכנות (בנוסף להוצאות/השקעות וכו) שלא חייבים להשתמש בפונקציה כזו או אחרת אין טעם לקרוא לה... :)
 

Dali

Active Member
הצטרף
20/8/20
=index(importhtml(CONCATENATE("https://finviz.com/quote.ashx?t=",B13,""),"table",11),7,2)
תגידו, אתם רציניים? מאיפה אתם יודעים לבנות נוסחאות כאלה?
כאילו כולם פה מהנדסי מחשבים או בוגרי קרוס של SEEKING ALPHA?
נראה כאילו ההורים שלכם הקריאו לכם חוברת EXCEL לפני השינה.
למה צריך את זה בכלל?
אם אני מבין נכון, המטרה בדיון היא לערוך מעקב מסודר אחר דיבידנדים.
האם ישנה דרך פשוטה יותר? אשמח להמלצת
סטרבו אמר שאחד הפוסטים שהוא מציין בטבלה שלו את יום החלוקה.

כמובן שהפוסט נכתב בעליצות בעין וברוח טובה, אך התסכול הוא אמיתי :)
 

eyal

Member
הצטרף
16/9/20
תגידו, אתם רציניים? מאיפה אתם יודעים לבנות נוסחאות כאלה?
כאילו כולם פה מהנדסי מחשבים או בוגרי קרוס של SEEKING ALPHA?
נראה כאילו ההורים שלכם הקריאו לכם חוברת EXCEL לפני השינה.
למה צריך את זה בכלל?
אם אני מבין נכון, המטרה בדיון היא לערוך מעקב מסודר אחר דיבידנדים.
האם ישנה דרך פשוטה יותר? אשמח להמלצת
סטרבו אמר שאחד הפוסטים שהוא מציין בטבלה שלו את יום החלוקה.

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

Dali

Active Member
הצטרף
20/8/20
אני עושה זאת בצורה ידנית - לא מכיר דרך פשוטה יותר
אשמח לסיוע בעניין זה.
נרשמתי לעדכון יומי בסיקינג אלפא ואחת ליום אני מקבל PRE-MARKET SUMMARY.
נראה לי שעשיתי משהו לא נכון.
אני דווקא כן אשמח לערוך טבלה מסודרת של הדיבידנדים הצפויים להתקבל, ויש לי בזה כמה מטרות שונות.
כמו כן, האם בדיווחים בסיקינג אלפא מונגשת גם האינפורמציה של יום החלוקה?
 
למעלה תחתית