-
@פלורידה אמר בכיצד לגבות ולשחזר טווחים מסויימים מחוברת אקסל?:
כלומר, אני מניח שלא ניתן לקשר תא באקסל בכיוון דו צדדי, לדוג', שבתא a1 יהיה מה שבתא a2, ואם אני משנה כל אחד מהתאים הללו, השני משתנה.
דווקא אפשר. אם התא a1 מכיל נוסחה לשלוף את הערך ב a2, אפשר לקבוע שבלחיצה כפולה על a1 יתעדכן הערך בתא a2. אתה עשית דבר קרוב בקובץ הקיים שלך, אלא ששינית את ערך a1.
-
@odeddvir אז, בינתיים כמו שציינת לצורך פתרון בזק, השתמשתי ברעיון שלך...
אך בעזרת ה' גירסא 4 תשתמש ברעיון של @מנחם. (זה יוכל להועיל בעוד הרבה תחומים, כמו יצירת סיכום ללימוד הכולל. וכדו'.
אשמח לעצה באיזה אופן כדאי ליצור את המסד.
האם לעשות מסד לכל מסכת ועוד מסד בגליון נפרד לכל הגליונות. (שזה אומר ש'תאי ההזנה' יזינו את 'גליון הסיכום', ו'טבלת סיכום המסכת' תשלוף מ'גליון הסיכום', ו'תאי ההזנה' ישלפו מ'טבלת סיכום המסכת' )
או לדלג על השלב של 'טבלת סכום המסכת'...
או אולי באופן אחר?
האופן שעולה לי בראש, הוא להערים את כל הטבלאות אחד על גבי השני לטבלה, אחת. האם עדיף לחלק לטבלאות שונות??
-
@odeddvir אמר בכיצד לגבות ולשחזר טווחים מסויימים מחוברת אקסל?:
להלן הפונקציה החדשה להעתקת החוברת כולה לקובץ גיבוי:
Public Sub BackupTo(targetWorkbook As String) Application.DisplayAlerts = False ThisWorkbook.SaveAs targetWorkbook, xlOpenXMLWorkbookMacroEnabled Application.DisplayAlerts = True End Subלמעשה שיניתי מעט את הקוד.
Sub גיבוי() Application.DisplayAlerts = False ActiveWorkbook.Save BackupTo ActiveWorkbook.Path & "\גיבוי.xlsm" Workbooks.Open Filename:="\הדרן עלך.xlsm" ActiveWorkbook.Close True End Sub
כאשר בשורה 3 הוא שומר את הקובץ לפני שהוא עושה לו שמירה בשם, (מה שעלול היה לבטל את כל השינויים בקובץ המקורי)
בשורה 5 הוא "אמור" לפתוח מחדש את הקובץ הדרן עלך...
ובשורה 6 הוא "אמור" לסגור את הקובץ....
אך למרות שחשבתי את עצמי כבר גאון ב 'vba' עם ותק של חודש... שורה 5 ו 6 לא פועלים כמו שצריך...
בשורה 5 הוא לא מזהה את שם הקובץ
\הדרן עלך
בעוד אני התכוונתי לציין את הנתיב על ידי\
שייפתח באותו תיקייה...ובשורה 6 הוא גם בעייתי, כי הוא סוגר את הקובץ הפעיל, כלומר את הקובץ שפתחתי כעת, בעוד אני מעוניין שיסגור לי את קובץ "גיבוי"
-
@פלורידה אמר בכיצד לגבות ולשחזר טווחים מסויימים מחוברת אקסל?:
ובשורה 6 הוא גם בעייתי, כי הוא סוגר את הקובץ הפעיל, כלומר את הקובץ שפתחתי כעת, בעוד אני מעוניין שיסגור לי את קובץ "גיבוי"
לזה אני חושב שהפיתרון הוא
Workbooks("גיבוי.xlsm").Close True
-
@פלורידה לא צריך להסתבך.
יש פקודה לשמור עותק של החוברת בצורה שקטה. פשוט תחליף את שורה 3 בפונקציהBackupTo
כדלקמן:Public Sub BackupTo(targetWorkbook As String) Application.DisplayAlerts = False ThisWorkbook.SaveCopyAs targetWorkbook Application.DisplayAlerts = True End Sub
-
-
@odeddvir אמר בכיצד לגבות ולשחזר טווחים מסויימים מחוברת אקסל?:
Public Sub BackupTo(targetWorkbook As String) Application.DisplayAlerts = False ThisWorkbook.SaveCopyAs targetWorkbook Application.DisplayAlerts = True End Sub
ניתן לשמור בתבנית שונה מהמקור?
xlsx
משום שבצורה הנוכחית שנשמר עם המאקרו, זה יוצר בעיות מסוימות.
-
כעת גיליתי את הבעיה שלי:
אין אפשרות להשתמש ב
FileFormat
בעת שימוש בSaveCopyAs
יש שם באתר עשרות הצעות איך לפתור את זה (יותר נכון איך לעקוף את זה) רובם עוסקים באפשרות לשמור את הקובץ (
SaveCopyAs
) בתבניתxlsm
, ואח"כ לפתוח אותו ולשמור אותו מחדש (SaveAs
) בתבניתxslx
, וכדו'. מה שלא בדווקא פותר את הבעיה. -
@odeddvir אמר בכיצד לגבות ולשחזר טווחים מסויימים מחוברת אקסל?:
תוכל לפרט מה בדיוק הבעיה בזה?
צפיציפית:
אני יוצר שחזור אוטומטי.
האירוע שמפעיל אותו הוא פתיחת הגליון.הצורה שהוא מופעל:
בכל גליון יש תא שאחראי לדעת אם הגליון מגובה או לא. כלומר בעת סימון התא משתנה ללא מגובה
.
בעת שחזור, התא משתנה למגובה
.בהנחה שפתחתי את הקובץ
הדרן עלך
וסימנתי ולאחר מכן לחצתי על "גיבוי" נשמר לי בקובץגיבוי
המידע שהוא לא מגובה.בעת הפעלת הקובץ
גיבוי
(על ידי לחיצה על "שחזור" או על ידי הפיתרון הזה, שאוטומטית הוא ייפתח כדי להשתנות לxlsx
), הוא יבדוק אם הוא מגובה או לא, ויגלה שלא, ואז הוא ינסה לעשות שחזור מעצמו.מה יקרה אז? אני לא יודע...
באופן כללי:
מכיון שהבריכה שלי די קטנה, ושוחים שם הרבה דגים סומים וחסרי מזל, אני משתדל לפזר כמה שפחות כוסות חד פעמיות.
-