תוכנה לסימון חזרות
-
@פלורידה אמר בתוכנה לסימון חזרות:
א. האם אפשר לעשות שלחיצה על התיבה, תתן ערך (של 1/2) בתא אחר?
אפשר לאגד את התיבה לתא אחר, שישתנה לTrue/False בהתאמה. ניתן אחר כך לסכם את התאים המאוגדים וכו'.
ב. האם אפשר לשלוט בגודל של התיבה ובעיצוב שלה?, (אני לא מצליח להגדיל את הריבוע)
לא. זו אחת מתעודות העניות של מיקרוסופט, שלא שינו את הפקד במשך דורות.
-
@odeddvir אמר בתוכנה לסימון חזרות:
ב. האם אפשר לשלוט בגודל של התיבה ובעיצוב שלה?, (אני לא מצליח להגדיל את הריבוע)
לא. זו אחת מתעודות העניות של מיקרוסופט, שלא שינו את הפקד במשך דורות.
מצאתי את התבנית הזו לוח מטלות שבועי.xlsm יש בה תאים שעל ידי לחיצה על התא פעמיים, הוא כותב "בוצע" ונותן ערך לתא 1, אני מאמין שזה יוכל לעזור לי.
מה שהצלחתי להבין, שהתא מוגדר ב"מותאם אישית", שערך מספרי כלשהו = בוצע
"בוצע";" ";" "
ובעיצוב מותנה כשהערך גבוה מ=1 התא מקבל סימון v
כמובן שאם אני מוחק את המילים בוצע, הרי מתקבל לי פקד תוכן שנותן v עם ערך 1
מה שאני עדיין לא מבין, איך עושים שעל ידי לחיצה כפולה הוא נותן לתא ערך = 1 (וכשאלה נגזרת, האם אפשר לעשות שייוצר על ידי לחיצה בודדת)
-
@פלורידה אמר בתוכנה לסימון חזרות:
מה שאני עדיין לא מבין, איך עושים שעל ידי לחיצה כפולה הוא נותן לתא ערך = 1 (וכשאלה נגזרת, האם אפשר לעשות שייוצר על ידי לחיצה בודדת)
מצאתי כאן את הקוד הזה
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) On Error Resume Next If Not Intersect(Target, Range("A1")) Is Nothing Then Range("A1").Value = Range("A1").Value + 1 Cancel = True End If End Sub
בכל פעם שאלחץ על תא
a1
הוא יקבל תוספת של 1 אם נניח הערך שקיים בו הוא 173, על ידי לחיצה הוא יהיה 174.מה שאני רוצה לעשות שכאשר אני לוחץ פעם שנייה הוא יהיה 0, כלומר פעם אחת הוא יהיה 0 פעם שניה 1 וכן הלאה.
כמו כן מצאתי את הקוד הזה, שאמנם עושה v בלחיצה כפולה, ומסיר אותו בפעם השניה, אך לא נותן ערך לתא.
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) If Not Intersect(Target, Range("B1:B10")) Is Nothing Then Application.EnableEvents = False If ActiveCell.Value = ChrW(&H2713) Then ActiveCell.ClearContents Else ActiveCell.Value = ChrW(&H2713) End If Cancel = True End If Application.EnableEvents = True End Sub
אולי ניתן ליצור נוסחה
v=1
???? -
@פלורידה אמר בתוכנה לסימון חזרות:
אך לא נותן ערך לתא.
זה לא מדויק. למעשה הוא נותן ערך לתא, התא מכיל את התו
ChrW(&H2713)
.@פלורידה אמר בתוכנה לסימון חזרות:
אולי ניתן ליצור נוסחה v=1????
לא. אבל אפשר לסכם לפי תנאי, אם התא ריק אז להוסיף 0, ואם יש בו ערך כלשהוא (או ליתר דיוק את התו הנ"ל) להוסיף 1.
ואפשר גם להכניס בפועל את הערך True/False ולהשתמש בעיצוב מתנה כדי להציג V. -
@odeddvir אמר בתוכנה לסימון חזרות:
לא. אבל אפשר לסכם לפי תנאי, אם התא ריק אז להוסיף 0, ואם יש בו ערך כלשהוא (או ליתר דיוק את התו הנ"ל) להוסיף 1.
זה ממש רעיון מבריק. איך עושים את זה?
כלומר: איך מסכמים לפי תנאי? או לחילופין מה שם הנוסחה??.
למתעניינים צירפתי את הפיתרון שאני בחרתי לצורך המסמך שאני עורך
הכנסתי את הקוד הזה:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Intersect(Target, Range("B1:B10")) Is Nothing Then
Application.EnableEvents = False
If ActiveCell.Value = Date Then
ActiveCell.ClearContents
Else
ActiveCell.Value = Date
End If
Cancel = True
End If
Application.EnableEvents = True
End Subהמשמעות שלו, שלחיצה תתן את התאריך
[אני כבר יעלים אותו על ידי התאמת אישית לסוג" ";" ";" "
ככה:
ובכך אני מרויח שניתן לחקור את התאריך שבו ניתן הסימון.
כמובן שהבעיה שלי שהערך של התא באופן אוטומטי כערך התאריך, מה שאני צריך לעשות הוא סיכום שכל ערך שנמצא בתא באופן אוטומטי נחשב ל 1 -
@פלורידה אז תשתמש פשוט ב CountA:
COUNTA(E1:E10)
תוספת:
אם אתה משתמש רק בתאריכים, אתה יכול להשתמש גם ב-Count הרגילה, ההבדל הוא ש-CountA תספור גם טקסט, ערכים לוגיים כמו True/False, ואפילו שגיאות ושאר מרעין בישין, בעוד ש Count תספור רק תאים עם ערך מספרי (כולל תאריכים) -