@OdedDvir אמר:
זה נכון כשמדובר בעמודה אחת.
במקרה לעיל שיש צורך בכמה עמודות, השימוש בפונקציית עזר בסקריפט נותן נוסחה נקייה ומובנת, לעומת נוסחה ארוכה ומתוסבכת, עם כמה קריאות ל-MATCH
.
אמת ויציב.
צודק.
@OdedDvir אמר:
זה נכון כשמדובר בעמודה אחת.
במקרה לעיל שיש צורך בכמה עמודות, השימוש בפונקציית עזר בסקריפט נותן נוסחה נקייה ומובנת, לעומת נוסחה ארוכה ומתוסבכת, עם כמה קריאות ל-MATCH
.
אמת ויציב.
צודק.
@OdedDvir
@פשוט-אבל-תותח אמר:
יש לי טבלת נתונים כלשהיא ואני מעוניין להציג רק את העמודות שאני אבחר
אבל מכיון שיש עוד משתמשים שיכולים להוסיף עמודות לטבלה המקורית אני צריך לקבל את העמודות לפי הכותרת שלהם
חשבתי להשתמש בפונקציה QUERY שהיא הפונקציה היחידה שאני מכיר שיודעת לפלטר עמודות ...
לדוגמא....
לסיכום כיצד ניתן לבקש מהפונקציה הנ"ל רק את העמודות שהכותרת שלהם היא XXX,YYY,ZZZ
כמובן שהפונקציה הנכונה זה Query, ואם הכותרות באנגלית ניתן להשתמש בכותרות עצמן, אך כיוון שבעברית עסקינן ומתעוררת הבעיה שציינת הייתי מציע להשתמש בנוסף גם בפונקציית Match
, פונקציה זו מחפשת ערך מסוים בשורה מסוימת ומחזירה את המיקום היחסי של הערך בטווח.
דהיינו:
תשרשר לטקסט של השאילתה בצורה הבאה:
="select Col"&MATCH("טלפון",A1:E1,0)
ואז הוא כל פעם יחפש את העמודה שרצית שתוצג ואפילו כשיתווספו עמודות בהמשך.
בעיה קטנה: אין אפשרות להשתמש בסגנון ההפניה של Col2 Col1 והלאה בהפניה לטווח רגיל רק כאשר הטווח הוא מערך של תאים לכן לא משנה מה הטווח שלך תיתן את ההפניה בצורה של מערך, דהיינו במקום:
A1:F38
תיתן:
{A1:F37;A38:F38}
ואז כן ניתן להשתמש בסגנון ההפניה הנ"ל בשאילתה.
(לדעתי חבל ללכת ישר לאופציה של קוד כשנראה לכאורה שיש פתרון מוצלח יותר בפונקציה ישירה)
בהצלחה!
@בער אמר:
@Y-Excel-Access
בכל מקרה אשמח שתסביר את החלק השני של הנוסחה (את החלק הראשון הסברת שהוא בעצם מלקט את כל הטבלאות אחד מתחת השני) מה זה COL וכו'
זה הפעולה של הפונקציה עצמה, שני הפרמטרים הראשונים של הפונקציה זה 1: המידע 2: שאילתה שלפיה אתה רוצה לגשת לנתונים.
מדובר בפונקציה הכי חזקה לכאורה שקיימת בגוגל שיטס, היא מספקת כלים שמאוד מזכירים את SQL למרות שלא מדובר כלל באותה השפה אלא רק באותה גישה וסמנטיקה.
הפעולות שהציע @Y-Excel-Access בנוסחה שהביא ניתנות לכאורה לביצוע ע"י קינון מספר פונקציות אחת בתוך השניה ואחרי הרבה מחשבה שתשקיע בפתרון הבעיה בצורה טובה, הגישה שמציעה השפה הזו היא שאתה לא צריך להגיד לה איך לעשות אלא מה לעשות,
הנוסחה שהביא מאוד ברורה: תסתכל על העמודה הראשונה והשניה והשלישית, תסנן לפי עמודה ראשונה רק מה שלא ריק, אח"כ תסכום לי את הנתונים בעמודה השניה ותספור את כמות הנתונים בעמודה השלישית, כאשר החלוקה לקבוצות סיכום וספירה הינה בהתאם לנתונים ייחודיים בעמודה ראשונה.
זו פונקציה מדהימה שחבל מאוד שלא כולם מכירים אותה, כי היא פותרת המון המון בעיות ומקצרת הרבה תהליכים. וגם הרבה יותר מובנת וברורה כי כאמור ההתמקדות היא לא בלהמציא איך המחשב יעשה את זה אלא להסביר במילים פשוטות מה אתה רוצה והמחשב כבר יסתדר לבד...
ואגב, @Y-Excel-Access, השימוש בCol1 ומספרי עמודות במקום A B C וכו' הוא רק בגלל שאתה משתמש במערך כמובן, בעיקרון ניתן לקרוא להם בשמות העמודות אפילו (first name וכדו').
(SQL היא שפה הרבה הרבה יותר רחבה ומשמעותית ואין קשר ביניהם למרות שלמי שמכיר כבר SQL זה מאוד אינטואיטיבי ופשוט להבין את זה ג"כ)
@Y-Excel-Access
ניסית "פרסום"? בתפריט קובץ יש אפשרות ליצור סוג של פרסום לקובץ ואין שום גישה לעריכה רק לתצוגה.
קובץ/שיתוף/פרסום באינטרנט..
=SWITCH(A2,"ירושלים","מכונה מס' 1","בני ברק","מכונה מס' 2","")
פרמטר 1: איזה תא/ערך ברצונך לבדוק.
פרמטר 2 והלאה: טבלת בדיקה, אם ירושלים תחזיר כך, אם בני ברק תחזיר אחרת וכו' וכו' (אפשר יותר תנאים)
פרמטר אופציונלי: אפשר להוסיף ערך ברירת מחדל שיוחזר במקרה שלא תהיה התאמה לשום תנאי שהוזכר בפרמטרים הקודמים (במקרה שלך "" כי אתה רוצה שיוחזר ערך ריק, אחרת יוחזר שגיאת N/A כי לא מצא שום ערך תואם)
בהצלחה!
@בער אמר:
ניסיתי ככה ולא הלך
=IF(B1=C1:C100,"ירושלים"," ")
כתב לי שהוא לא מוצא ערך.
וכשעשיתי אימות מול תא אחד כמו זה:
=IF(B1=C3,"ירושלים"," ")
זה כן עבד
למה חשבת שיעשה משהו עם התנאי הלוגי הזה?
כשאתה כותב תנאי לוגי, תנסה דבר ראשון להבין את מה שכתבת ואז לתת לאקסל/שיטס לפענח ג"כ.
אני הייתי עושה את זה כך:
=IF(COUNTIF(A:A,B1)>0,"מופיע ברשימה","לא מופיע ברשימה")
זה בעצם בודק האם הערך שהזנת בתא B1 מופיע היכן שהו בעמודה A ואם אכן נמצא שיש ערך זהה יחזיר שמופיע ברשימה.
לגבי שאלתך כיצד שיתקדם בבדיקה לעמודות נוספות, התשובה כפי שכתב @dovid - לקונן if נוסף בפנים.
מהדוגמה שהעלית נראה שאתה רוצה שיושלם בעמודה B בכל תא ותא על פי הערך שנכתב בתא הסמוך בעמודה A. לצורך זה מומלץ יותר להשתמש בפונקציה SWITCH.
@ek0583232948 זאת אומרת שבהינתן הטבלה הבאה:
ואתה מחפש מספר מסוים, אתה רוצה שאקסל יסרוק את כל העמודות של מספרי הטלפון ובמידה ומוצא את המספר שישיב שהספר קיים/לא קיים ברשימה או שתרצה שיחזיר לך את השורה הרלוונטית?
אולי תעלה דוגמה לכאן?
@ek0583232948 ואם יחפש בכמה עמודות מה תרצה שהפונקציה תחזיר? את השורה? את התא הספציפי? שתשיב false/true בהתאם למציאת הערך בטבלה?
השאלה שלך לא ברורה. ולמרות שברור שיש פתרון, תעזור לנו לעזור לך...
@במכינה הנוסחה היא:
=QUERY({A2:B6;A2:A6,C2:C6},"SELECT * WHERE Col1 LIKE '"&C9&"'",0)
כמובן שתשנה בהתאמה למיקום הנתונים בגיליון אך לפי מה שכתבת בקובץ שקישרת אליו זו הנוסחה.
הוספתי לך את זה בגיליון שלך לתועלתך.
להלן הדגמה:
@nachman ראיתי את הדוגמא שהעלית ולא ברור מה אתה מבקש לעשות.
אתה מעוניין שבעמודה אחרת יהיה פיצול של עמודה B או A שכל שלושה מספרים יופיעו בתא נפרד?
אתה מעוניין לאחד כל שלושה מספרים מעמודה A לתוך תא יחיד בעמודה B?
אם תסביר ברור כנראה שיהיה פשוט יותר לעזור לך.
@one1010 זה תלוי מאיזה מחשב אני נכנס.
במחשב הביתי (Window 8.1 + Excel 2013) קופצת לי השגיאה הבאה:
במחשב בעבודה (Windows 10 + Excel 2019) עובד לי מצוין ++.
כנראה בעיה מקומית אצלי (השאילתא לא מצליחה להיטען בקובץ בכלל. יתכן שהאפשרות הזו לא זמינה בגרסאות ישנות - בכל אופן ניתן להשתמש בייבוא נתונים באקסל או בxml ו- webservice)
ובכל מקרה, תודה רבה על הקובץ עזר לי כבר עכשיו מאוד (קניתי דירה ובכל משך הזמן חשבתי שהפסדתי יותר כסף במדד, בפועל ראיתי שבזה שהקדמתי תשלומים חסכתי אלפי שקלים).
ובהערת אגב, מבלי שהנושא ישתנה לנושא אחר אציין שלפי המתפרסם כרגע המדד צפוי לעלות ב-15 הקרוב ב1.2% שזה המווווון, לתשומת לב מי שיש לו חובת תשלומים לקבלן וכו', להציל עשוק מיד עושקו.
זה רעיון נחמד להסתיר תאים ע"י הצבת מלבן לבן עליהם... (תאים Y5 ואילך)
אשמח אם תוכל לתת הסבר למה הקובץ צריך להפעיל את השאילתה 'מדד API', מעיון בהגדרות השאילתה לא נראה שמושך נתונים מהלמ"ס או משהו כזה. מעניין לשמוע מה הצורך בזה. מה גם שבכלל קפצה לי שגיאה בפתיחת קובץ שמקור הנתונים לא זמין (או משהו כזה) והפעלת השאילתה נכשלה.
@dovid אמר:
@nach קראת את הויקי ברפרוף....
...פתרון שני זה VPN של נטפרי עם וויפרי.
שני פתרונות אלו חוסמים את האינטרנט באופן שאתה לא יכול לעקוף ..
אבל קרא כאלו מאמרים בעיון ..
קראתי את הדף כמה פעמים ואכן לא שמתי לב לזה, תודה שהסבת את תשומת ליבי.
בכ"ז אשמח להתייחסות לשאלה לגבי שרת שמסונן מראש (הפתרון שהוצע דרך RL).
עריכה: עכשיו ראיתי שהתייחסתם בינתיים לנושא ורוב דעות לטובת הפתרון של וויפרי וVPN. לכאורה לא תהיה בעיה עם זה רק העדפתי שלא להתקרב לבור גם אם אני יכול לשים עליו מכסה בקלות... אך לפי מה שכולם כותבים השילוב של שתי התוכנות חוסם לגמרי את הגלישה שלא על נטפרי.
יש לי את המספר של רונן, אבדוק באופן פרטי מולו את הנושא.
תודה לכולם!
@nigun אמר בבירור: שרת אינטרנט עם סינון של נטפרי:
@nach
אולי אפשר לשכור שרת פיזי ולהגדיר עליו VPN
ולך יהיה גישה רק לשרת הוירטואלי
אם יהיה לזה מספיק ביקוש, מישהו ירים את הכפפה ויקים כזה שירות.
תודה, ברור שאפשר.
אני מנסה לברר אם יש משהו קיים שאפשר כבר היום להתחיל לעבוד מולו.
גם כמובן שארצה לעבוד מול שרת שאני יכול לסמוך על האבטחה שלו (חברה ידועה וכדו', לא כל ברדק)
שלום וברכה
בשביל שאוכל להתחיל איזה פרויקט של פיתוח (סוג של תוכנה בענן/אתר אינטרנט) דרוש לי שרת שאוכל לעבוד איתו,
אלא שלא מצאתי עדיין אפשרות של שרת מרוחק עם סינון של נטפרי. אמנם כן מצאתי בויקי נטפרי שיש אפשרות דרך RL או להגדיר חיבור VPN בשרת, אך אני מעדיף שיהיה דרך שרת שהוא בפני עצמו מסונן ולא תהיה לי שליטה על זה - להוריד או להחזיר אינטרנט פרוץ ח"ו. באתר של RL לא מופיע מידע בנושא וגם לאחר ששוחחתי עם נציגה היא לא הבינה בכלל על מה אני מדבר (כנראה שהם לא מפעילים כיום שרתים וירטואליים בעצמם?)
אשמח למידע בנושא ממי שמשתמש בשרת מסונן, כיצד השתמש ומה העדיפות (ואם אפשר גם לפרט על המחיר)
תודה רבה מראש לכל העונים!
@חיים-ט אמר בגליון גוגל שיט:
יש לי כמה גליונות, אולם האיקונים בסרגל העליון "שקופים" ז"א לא רואים אותם. רק אם אני מצביע עליהם בסמן, אותו אייקון עולה לדוגמה: ישור, צביעת רקע, וכו' וכו'
זו בעיה שהייתה בשבוע האחרון (יתכן שרק למשתמשי נטפרי אבל לא בטוח)
הפיתרון: תפתח את גיליון שיטס ואחרי טעינה שלו תלחץ על Ctrl + F5, זה ירענן הכל כולל את האייקונים, ותמתין לעליית הדף.
יפתור לך את הבעיה.
בהצלחה!
ראיתי טיפ מעניין מאוד שיכול לעזור הרבה פעמים ולא התאפקתי מלשתף כאן.
בגוגל שיטס (כנראה גם באקסל בגרסאות 2018 ומעלה. עריכה: בדקתי עכשיו בגרסת 2019 ואין אפשרות כזו... אדרבה אולי מישהו ימצא דרך אחרת), יש אפשרות להגדיר נוסחה בתא אחד שהתוצאה של הנוסחה/פונקציה נשפכת על פני התאים הסמוכים בהתאם לתוצאה ע"י שימוש בנוסחת מערך.
עד כאן גלוי וידוע לכולם כנראה.
העניין הוא שלא צריך דווקא פונקציה או איזה חישוב בשביל שיחול על תאים סמוכים, מספיק שנותנים לו את הערכים בתצורה של מערך ע"י שימוש בסוגריים מסולסלות והוא מיד פורס אותם על תאים הסמוכים ג"כ. (ניתן להשתמש גם בחישובים או בהפניות לתאים)
לדוגמא: בתא A1 הקלדנו:
={100,200,13*89}
התוצאה לפניכם:
עד כאן בקצרה על מערכים.
בצורה כזו ניתן גם להגדיר ערכי ברירת מחדל לתאים, בצורה הבאה.
בתא סמוך מקלידים:
={"","ערך ברירת מחדל"}
ואז אם התא ריק מוזרק לתוכו ערך ברירת המחדל שהגדרנו במערך.
אם מקלידים משהו לתוך התא אז בתא שהוקלדה נוסחת המערך מופיעה שגיאה ובשביל שלא יפריע למשתמש ניתן להסתיר את העמודה או לחילופין להתאים צבע טקסט לצבע רקע כדי שלא יראו כלום (וכמובן להגן על התא).
יש אפשרות לברוח משגיאה זו ע"י שימוש בפונקציית ISBLANK ביחד עם IF ולהגדיר שאם התא ריק אכן יחול מערך כנ"ל ואם לא ריק יוגדר רק ערך ריק או ערך שימושי. לדוגמא:
=IF(ISBLANK(B2),{"הערך שלי:","הכל"},"הערך שלי:")
הערות:
אם רוצים להתייחס לתא שממוקם אנכית לתא צריך להשתמש ב-; במקום בפסיק.
ניתן להציב מערך גם לתאים רחוקים יותר ע"י הרבה פסיקים אך חובה להציב ערכים בכל אחד מהתאים במערך, אפשר גם ערך ריק ע"י מרכאות אך א"א בלי הקלדת ערך.
יש לי שתי טבלאות אחת שמרכזת פרטים על אנשי קשר ואחת שמרכזת פניות של כל אחד מהם. בהמשך מטופלת כל פניה בנפרד לפי אופי הפניה.
לשם פשטות השימוש אני מעוניין שיהיה טופס בו יהיה אפשרות לעדכן פניה חדשה, אך מכיוון שאינני רוצה כפילויות באנשים - הגדרתי כמובן שיהיה ללא כפילויות.
מה שאני רוצה זה שבטופס יוזנו הפרטים המרכזיים כמו שם וטלפון ואז תבוצע בדיקה בפרטי אנשי קשר האם קיים כבר רשומה העונה על הפרטים ואם אין רשומה זהה - שתיווצר רשומה חדשה ואם יש - שפשוט תיקלט הפניה כפניה של אותו איש קשר שכבר נמצא במאגר. ולא שתקפוץ התראה של אקסס ש"אין אפשרות לשמור רשומה מכיוון שהוגדר ללא כפילויות"
אשמח לעזרה או להכוונה בעניין, אפשר גם מראה מקום להתקדם אתו או רעיונות אחרים.
תודה רבה
@OdedDvir ?