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

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

שאפו ענק
יש לי פונקציה באקסס שמסתירה ומציגה פקדים בטופס
זה הקוד
Public Function vb_HidesFieldsDonates(TrueOfFalse As Integer)
'ñëåí úøåîä
Forms.board.TextBoxDonationAmount.Visible = TrueOfFalse
Forms.board.LabelDonationAmount.Visible = TrueOfFalse
'ñåâ îèáò
Forms.board.TextBoxCurrency.Visible = TrueOfFalse
'àåôï äúøåîä
Forms.board.TextBoxDonationType.Visible = TrueOfFalse
Forms.board.LabelDonationType.Visible = TrueOfFalse
'äòøåú úøåîä
Forms.board.TextBoxRemarksDonates.Visible = TrueOfFalse
Forms.board.LabelRemarksDonates.Visible = TrueOfFalse
'ô÷ã ÷áìú îñ
Forms.board.CheckboxTaxReceipts.Visible = TrueOfFalse
Forms.board.LabelTaxReceipts.Visible = TrueOfFalse
End Function
ומשום מה בשורה 8 קופצת לו שגיאה כזו


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

זה העזרה שאקסס מביא אבל גם שם לא הצלחתי להבין למה מגיעה השגיאה הזו
אשמח להבין מן המומחים למה ומהי השגיאה הזו...
תודה רבה מראש 
@odeddvir אמר באקסס למתחילים: תגובות:
@אוריי לא הבנתי כוונתך.
הפונקציות Nz ו-IsNull הן פונקציות VBA ולא SQL. לכן יש להמנע מהם בשאילתות.

זה לא היה נשמע כך מדבריך שם
בכל אופן אין ביהמ"ד ללא חידוש... 
ואינו דומה החוזר 100 ל 101 ...
@odeddvir
כפי איך שהבנתי משם
שים לב שאפילו בפונקציות טריוויאליות, כמו Nz() או IsNull() עדיף לרשום בSQL טהור ולא לבצע קריאה ל-VBA
אני מבין שיש הבדל בין ה SQL ל VBA בקריאת הקוד
אבל כאשר גם ה IF וגם הNZ נמצאים ב SQL טהור ואין קריאה ל VBA האם גם אז יש הבדל?
@odeddvir
כמו כולם מי לא עוקב
אני מרגיש כמו איזה נוסטלגיה מלפני... (פחות משנה..)
מחכה בשקיקות לעוד איזה מדריך...
כן, מצוין! (שאר התלמידים ישארו בסוף השיעור לנקות את הכיתה
)
ועם כאלו מדריכים אני מוכן לנקות את הכיתה (ולא שאני פרעייר..) אלא פשוט לא השארת שום בלאגן... 
שאלה קטטנטנה לגבי מה שכתבת כאן..
שימו לב שהסכום של ישראל הוא ריק ולא מכיל 0.
הערה: כאשר שאילתת צירוף חיצוני לא מוצאת רשומה עם מפתח תואם בטבלת המשנה, היא מחזירה ערך מיוחד שנקרא NULL, שפירושו = כלום, שום דבר, גורנישט, וכו'.
אם ברצוננו להציג שם אפס, צריך ליצור שדה מחושב:
TotalAmount: IIf(TotalAmount Is Null, 0, TotalAmount)
אני התרגלתי במצבים כאלו לכתוב כך
TotalAmount: nz(TotalAmount , 0)
האם אני טועה או שאין הבדל?
@odeddvir אמר בעזרה באקסס | שגיאה 13 אי התאמת נתונים:
שאלת תם, תמהני, מה התועלת שאתה משיג ב:
Like ' * 'אם להסיר רווחים - תשתמש בפונקציה Trim()
א. תודה רבה זה פתר את השגיאה
ב. באמת זה לא עזר לי תכלס טעיתי קצת בקוד אבל ב"ה הסתדר..
הייתי צריך לכתוב Is Not Null במקום Like ' * '
@OdedDvir הרבה תודה
כתבתי פונקציה ב VBA עם כמה שאילתות
תכלס בדקתי את כל המשפטי SQL באשף והכל עובד ..
הבעיה היא כאשר אני מריץ את זה ב vba הוא נתקל בשגיאה 13 של אי התאמת נתונים
המוזר הוא שאת השאילתה הראשונה הוא עובר בקלות ואילו את השניה הוא נתקע בה (והרי שניהם עובדים באשף של אקסס)
ניסיתי לחפש ברשת משהו מעין זה ומה שניסיתי לא כזה הועיל לי
זה הקוד
Public Function vb_status() As Integer
Dim rs As Recordset
Set rs = CurrentDb.OpenRecordset("SELECT DnoriId,status,DialDate " & _
"FROM DonorManagement " & _
"WHERE (((DonorManagement.status)=5) And ((DonorManagement.DialDate)<Now()))" & _
"ORDER BY DonorManagement.DialDate;")
If rs.EOF Then
Set rs = CurrentDb.OpenRecordset("SELECT DnoriId, status, HomePhone,Phone1,Phone2 FROM DonorManagement WHERE (((status)=1) AND ((HomePhone) Like " * ")) OR (((status)=1) AND ((Phone1) Like " * ")) OR (((status)=1) AND ((Phone2) Like " * "));")
If rs.EOF Then
Set rs = CurrentDb.OpenRecordset("SELECT DnoriId,status,DialDate " & _
"FROM DonorManagement " & _
"WHERE (((status)=8) And ((HomePhone) Like " * ")) Or " & _
"(((status)=8) And ((Phone1) Like " * ")) Or " & _
"(((status)=8) And ((Phone2) Like " * "));")
Else
vb_status = rs!DnoriId
End If
Else
vb_status = rs!DnoriId
End If
End Function
השגיאה היא בשורה 8


אשמח אם תעירו את
היכן תעיתי...
@בערל אמר במערכת לניהול תורמים:
אוקי
אז אני חושב אכן לקבל את המלצתכם ו"ללכת על זה" בעז"ה.
אודה מאוד לעזרה, כרגע אני לא מתחיל מאפס אלא ממינוס, בגדר "אינו יודע לשאול".
אשמח לקבל לינק למדריך מומלץ בכדי להשלים את הפערים.
תודה רבה רבה!
@בערל שיהיה בהצלחה!!! 
בכל אופן אני אשמח גם לעזור מזמני הפנוי (אם @OdedDvir ילך לישון
... האמת נראה לי שזה לא קורה... )
@קינג-קומפיוטר אמר במענה לצינתוקים:
@nigun החוצפה גדולה בין השאר שהם מתקשרים ממספר כשר רגיל 05276
זה יכול להיות גם זיוף שיחה מאיזה מרכזיה ( @mgm-ivr לאוו דווקא חברה)
@dovid כל מילה בסלע שום דבר לא מיותר
אני הייתי חושב להוסיף עוד משפט קטן
כשהתחלתי לכתוב קוד vab היה לי מאד קשה לזכור את השפה כך שכל פעם הייתי צריך לחפש מה עשיתי בפרוייקט אחר ולהעתיק משם את הקוד עד שלאט לאט קלטתי מה כל פקודה עושה (פשוט ללמוד ארמית בגמ')
גם כאן בעברית הזו זה לא יקל כי סו"ס אני יצטרך לזכור מה כל מילה אומרת (לא פחות אם זה היה אנגלית)
@פוחצ-בסקי זה מזכיר לי שכאשר התחלתי לבנות באקסס כתבתי שמות של שדות בעברית
ואז.... כל פעם הייתי צריך להחליף בקוד בין עברית לאנגלית וקוד לא קריא
אולי את זה זה פותר אבל את כל השגיאות של האימות על סמך אותיות בעברית זה נראה לי קצת יותר מידי מסוכן....
@בערל אמר בשליפת נתונים מתוך מסמך אקסל:
והכי יעזור לי אם זה יכול לשלוף את הנתונים מקובץ שונה לגמרי ולא מגיליון נוסף באותו קובץ.
אני לא זוכר אם אפשרי ואיך להעביר נתונים משני קבצי אקסל באותו המחשב (צריך לראות אם זה אפשרי) אם אתה רוצה שלא יוכלו לשחק בנתונים אתה יכול להסתיר את הגיליון
@בערל אמר בשליפת נתונים מתוך מסמך אקסל:
כי אני רוצה לשחק עם זה יותר, לא רק לקבל את כל השורה לפי הסדר.
לדוגמה:
עמודה D תקבל נתונים מעמודה I
עמודה F תקבל נתונים מעמודה G
וכו'
וכל זה ע''י הזנת ה-ID בעמודה A
זה פשוט מאד
בפרמטר השלישי במקום COLUMN() תחזיר כל פעם מספר של העמודה שאתה רוצה להחזיר אם זה A תכתוב 1 ואם אתה רוצה להחזיר את B תכתוב 2 וכן הלאה. (יותר מדוייק: כלומר העמודה השניה בטבלה שבפרמטר 2 שאם הטבלה מתחילה בעמודה B אז מס' 1 הוא B ו 2 הוא C)
כמו שכתבתי קודם
@אוריי אמר בשליפת נתונים מתוך מסמך אקסל:
איזה עמודה להחזיר (אם הערך נמצא) בד"כ מכניסים מספר עמודה (אבל אני הכנסתי נוסחה המחזירה את מס' העמודה כדי שיהיה אפשר לגרור שמאלה בלי לשנות)
@בערל
תפתח גיליון חדש בתא A1 תכתוב את הid
בתא b2 תכתוב את הנוסחה הבאה
=VLOOKUP($A$1,גיליון1!$A:$I,COLUMN(),0)
ותגרור לצד שמאל עד סוף העמודות
ואני אסביר מה אומר כל פרמטר לפי הסדר
סימני ה $ הם כדי לקבע את הנוסחה ולא תשתנה בגרירה.
@בערל
אתה רוצה לקבל את הנתונים בהודעה קופצת msgbok או לקבל בתוך תאים?
@mgm-ivr אמר במענה לצינתוקים:
אגב
אני באופן קבוע כשיש צינתוק עונה
ובחיים לא חוזר
שירד להם עוד יחידות או עוד כסף.....
אני גם בעבר חשבתי כך...
עד שהבנתי שמי ששולח את הצינטוקים ואת ההודעות מחשבן את כל האלו כמוך שעונים לטלפון בלי או עם להקשיב כי בסוף כל האלו שחוזרים (או נופלים בפח....) מכסים להם בקלות את העלות של המענה שלך... אע"פ שאתה אולי קצת יותר חכם ולא נופל בפח..
@בערל אמר במיזוג קבצי אקסל ע"י השוואת נתונים:
יש כעת דרך למחוק את הנתונים שהועתקו? אני לא צריך אותם יותר ברשימה השנייה, ואני כן רוצה לעבור ידנית על אלו שנותרו בכדי להחליט מה לעשות איתם.
אתה יכול פשוט לכתוב בטבלה השניה בעמודה נפרדת את הנוסחה הבאה
=COUNTIF('גיליון1'!C:C,A1)
פרמטר ראשון: לסמן את כל המספרי טלפונים שיש בעמודה הראשונה.
פרמטר שני לסמן את מספר הטלפון שיש באותה השורה
ואז מה שיוצא 1 זה אומר שהוא נכנס לטבלה הראשית ומה שיוצא 0 הוא לא נמצא בטבלה הראשית
כמובן שאתה יכול לסנן את העמודה רק לפי 0
בהצלחה
@בערל אמר במיזוג קבצי אקסל ע"י השוואת נתונים:
@אוריי
איך זה שאין את האופציה באקסל?
תמיד חשבתי שאקסל יותר משוכלל, לא?
@בערל יש את זה באופיס בענן של מייקרוסופט (שזה בתשלום)
אבל גוגל שחררו לנו את זה בחינם.... (חלק מהתחרות
)
חוץ מזה תמיד ששאלו אותי מה יותר טוב
אני תמיד עונה שזה תלוי מה הצרכים יש מקומות שצריך להשתמש בקוד vba וחייבים את מייקורוסופט (לעבוד בגוגל בסקריפט גם אפשרי.. בכל אופן אני אישית לא כזה התחברתי כ"כ ויהיו שיחלקו....)
ולפעמים יש כל מיני נוסחאות שיש בגוגל אבל אין אותם באקסל רגיל (כמו זה, או כמו עבודה משותפת עם כמה משתמשים)
ויש מעלה שאתה יכול להתחבר אליו מכל מחשב (כולל שמירת גירסאות ושינויים) ומונע את כל הגירסאות שיש בכל מחשב בדרך כלל.
בנוסף שניתן דרכו להשתמש בשירות הנפלא של גוגל (גוגל פורומס) וכמובן לשלב בין זה לנוסחאות וכו' (לי יצא להשתמש עם זה בעבר הרבה מאד)
@dovid
זה מאד נחמד כאשר אני עושה את זה
אבל כאשר אני מביא את השימוש בתוכנה לאנשים אחרים אני רוצה שיהיה הדפסה כזו אוטומטית ללא פרוצדורות מיותרות....
אני רוצה ליצור דו"ח באקסס בגודל A4 מחולק ל4 באותו באותו הדף
כזה

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