@OdedDvir זה אכן עזר.
האם זה שהפכת את פקודת הפתיחה למשתנה זה סייע בעניין המהירות, או שנקטת כך רק בגלל נוחות?
@OdedDvir זה אכן עזר.
האם זה שהפכת את פקודת הפתיחה למשתנה זה סייע בעניין המהירות, או שנקטת כך רק בגלל נוחות?
@אוריי כתב בהאטת ריצת קוד vba:
איפה בדיוק שמת את הקוד של ההמתנה (באיזו שורה)???
ולכמה זמן נתנת לו המתנה ומה יקרה אם תתן לו דקה שלימה להמתין.
עשיתי ממש עכשיו כמה ניסיונות,
בסופו של דבר...
העתקתי את השורת קוד כמו שהיא (5 שניות) והדבקתי 4 פעמים לאורך הקוד. והופ.. רץ יפה והאקסל לא נכנס לקיפאון; אמנם זמן העיבוד ממושך קצת (20 שניות זה המון) אבל מה שחשוב לי שהוא לא קורס.
תודה לכל המסייעים.
אגב, שלחתי את הקוד ל-@dovid באישי, ואצלו זה כן עבד יפה מלכתכילה. אני מניח שאחד הרכיבים במחשבים שלי קורס, אולי כרטיס מסך לא מספק.
@אוריי כתב בהאטת ריצת קוד vba:
להכניס לאחר הקוד של פתיחת הקובץ קוד של טיימר של לולאה שמחכה זמן מסויים לאחר פתיחת הקובץ עד שבוודאות הקובץ נפתח ואז תוכל לגשת לקובץ ולעשות בו פעולות.
תוכל לתת דוגמה?
כי עשיתי מה ש @mekev כתב לעיל:
ניתן להוסיף השהיה
באמצעות הקוד הבא
(הפוקנציה עוצרת עד לשעה המבוקשת, ע"מ להשיג השהיה של זמן נוכחי תוך כדי הרצת הקוד מוסיפים את הnow+)Application.Wait (Now + TimeValue("00:00:05"))
ולא עזר כ"כ.
@OdedDvir
זה לא מבטל את מצב Scroll-Lock, אלא רק מבטל את השפעתו על אקסל.
עדיף אם כבר, להפוך אותו ללא פעיל (זה מקש בחלק העליון של המקלדת, -אצלי צמוד לprint screen)
אם אתם לא מוצאים את הכפתור במקלדת, תוכלו להפעיל "לוח מקשים על המסך"
וללחוץ כאן:
@צדיק-תמים @אביי תודה על השיתוף של הטיפים.
יש לי כרטיס של "אשראי יש"
נכנסתי עכשיו לפירוט, וראיתי שאני משלם כל חודש 12.90.
התקשרתי מיד לשירות לקוחות וביקשתי להתנתק, שאלו למה, אמרתי שאני מופתע שאני משלם כל חודש דמי כרטיס (הנציג בסניף אמר שבהתחלה לא משלמים).
התגובה היתה: קודם כל אתה מקבל זיכוי רטרואקטיבי של שנה אחורה מיד לכרטיס +פטור לשנה קדימה. (ללא התניה בהישארות).
אמרתי תודה יפה ועשיתי לי תזכורת ביומן להתקשר בשנה הבאה...
@H19 הגודל ממש סביר.
בהורדה של דפי בנק, (למשל מרכנתיל) הגודל הוא 506KB לעמוד. (בשמירה כPDF, לא כהדפסה לPDF).
@avi-rz כתב בהאטת ריצת קוד vba:
במידה והוא עובר על לולאה מסויימת
הוא לא.
@avi-rz כתב בהאטת ריצת קוד vba:
כמובן היה יותר טוב להסביר יותר מה הקוד עושה
אכן, קשה לי להסביר מה הוא עושה כיוון שאני לא יכול להעלות אותו בשלמותו (מכמה סיבות)
אבל שמתי לב שהוא נתקע דוקא מיד בתחילת הקוד בשורה שהוא מבצע פעולת פתיחת קובץ.
זה תחילת הקוד:
' משתנה - שם +נתיב תיקיית הקובץ
Dim קובץ_מקור As String
קובץ_מקור = ActiveWorkbook.Path & "\" & ActiveWorkbook.Name
' שמירה בשם, אותו שם, אותו נתיב קובץ, הוספת שם הסיומת, החלפת הפורמט
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs קובץ_מקור & "x", 51
Application.DisplayAlerts = True
' סגירת הקובץ הישן
ActiveWindow.Close
' מחיקת הקובץ הישן
Kill קובץ_מקור
' פתיחת הקובץ החדש
Workbooks.Open קובץ_מקור & "x"
(בשלבים הבאים הקוד מעתיק נתונים ומחיל עליהם עיצוב נוסחאות וסינונים מסוימים)
זו התמונה של המסך מתי שהוא מגיע לנקודה של פתיחת קובץ:
ואז:
לאחר מכן, לפעמים הוא משלים את פעולתו - אבל חוזר לחיים רק לאחר דקה וחצי. ולפעמים הוא פשוט סוגר את התוכנה ומפעיל מחדש.
@איש-ימיני אשמח אם תוכל להרחיב לגבי מילת הקוד שהבאת, איך אני מכניס אותה. תודה!
@avi-rz כתב בהאטת ריצת קוד vba:
אתה יכול לפתוח טופס קטן ו(או להכניס ערך באן שהוא של האינדקס או להכניס במקור הנתונים של הטופס את השאילתה המדוברת וכדו'.)
ושם לעשות אירוע פסיקת שעון שיעבור כל שניה או יותר על אינדקס / רשומה אחת.
נשמע מעניין, תוכל להדגים את זה בקוד?
@dovid כתב בהאטת ריצת קוד vba:
@מטעמים מאוד מפתה אותי כמתכנת לראות את הקוד, יש סיכוי?
כן. אשלח לך אותו במייל. הקבצים מכילים פרטים שאני לא יכול להעלותם לפורום (גם הקוד).
@mekev כתב בהאטת ריצת קוד vba:
שים לב:
בזמן ההשהיה
לא ניתן לבצע שום דבר בקובץ (האקסל קופא לחלוטין עד לסיום ההמתנה)
יש אפשרות לתת לו השהיה שבוחנת אם השורה הקודמת בוצעה ורק אז לעבור למטלה הבאה?
יש לי קוד vba שאני מריץ אותו מדי יום על קובץ אקסל מאוד כבד.
הקוד עצמו עובד מצוין. הבעיה איתו שהמחשב פשוט קורס באמצע שהוא מריץ אותו. לפעמים הוא פשוט קופא לדקה וחצי ולפעמים הוא פשוט סוגר לי את כל האקסלים הפתוחים ומפעיל אותם מחדש.
ניסיתי להריץ את הקוד במתינות שורה אחר שורה (פתיחת העורך ולחיצה על F8 בסיום כל שורה שהוא רץ). ובאופן כזה לא היו שום בעיות. הקוד השלים את פעולתו.
אני מניח שהבעיה היא שהקוד זורק את פעולותיו אחד אחרי השני ללא הפסקה והמחשב לא מסוגל להתמודד עם העומס.
אשמח לדעת אם יש דרך לתת לקוד השהיות בפעולה שלו מדי פעם.
[יש לציין שניסיתי גם להריץ את הקוד על מחשב סופר מהיר (מעבד i9 דור 13, זיכרון 64gb) והבעיה צצה בדיוק כמו במחשב שלי.]
@dovid כתב בהמלצות על תוכנה לאוטומציה:
נזכרתי שפעם @MusiCode המליץ פה על תוכנה https://tchumim.com/topic/4316/
@מטעמים כתב בהמלצות על תוכנה לאוטומציה:
(תוכנה של פעולות אמיתיות, לא תוכנה שרק מקליטה את תזוזת העכבר)
זו אכן תוכנה מצוינת לפעולות פשוטות ובסיסיות.
החיסרון הגדול של התוכנה הזאת שאין לך מושג מה היא עושה. (היא לא כותבת קוד בהקלטה שלה)
ואם שינית מעט את גודל החלונות... הוא גם יכול תיאורטית להעביר לך את כל הקבצים לסל המיחזור....
שלום.
יש לי סדרת פעולות שאני מבצע במחשב מידי שבוע ואני מחפש תוכנה להקלטת אוטומציה על מנת שאפעיל את סדרת הפעולות בלחיצת כפתור אחת.
ראיתי ברשת כמה תוכנות, שלכל אחת מהן שיטות פעולה אחרות. ואני מעוניין להתעסק עם הכלי הכי פשוט, אבל הכי יעיל (קצת סותר...)
הערה קטנה: ההבנה שלי בתחום טעונה שיפור, אבל כיוון שזה דבר שאני ממש צריך על מנת לקצר לי משמעותית את העבודה לטווח הארוך, שווה לי להשקיע בזה שבועיים שלושה כדי ללמוד תוכנה כזו. אשמח לדעתכם האם זה אפשרי, ואם כן איזו תוכנה מומלצת.
(תוכנה של פעולות אמיתיות, לא תוכנה שרק מקליטה את תזוזת העכבר)
הפעולות שאני מעוניין שיתבצעו אוטומטית הן בעיקר הפעלת תוכנת חישוב שכר (תוכנה על הDesktop לא ברשת), הנפקת דוחות מסוימים, יצוא לאקסל, ושמירתן במחשב.
@amik יפה!
החיסרון היחיד הוא שהתא הנ"ל צריך להישאר לנצח בגיליון.
(בנוסף, יש בזה העמסה מסוימת על ההבנה של הנוסחאות. (בגיליון החישוב יש לי נוסחאות שמגיעות ל-5 שורות קוד..))
בכל אופן, המידע שהבאת כאן (ובאופן כללי המידע מכל הפורום המיוחד הזה) מאוד עזר לי.
לא הכרתי את הפונקציה הזו.
@mekev הצורך שלי הוא בהפניה לפי סדר נומרי של הגיליונות מתחילת חוברת העבודה.
אני אסביר את הצורך שלי:
יש לי דוח כלשהו שאני בונה עליו ניתוח נתונים על ידי מאקרו.
הדוח הנ"ל מגיע אליי בצורה של טבלה ענקית עם נתונים יבשים ועליו אני "מלביש" כמה נוסחאות.
הדוח משתנה כל כמה ימים, וכל פעם הוא מגיע עם שם גיליון שונה. (חשוב לי כן לשמר את שם הגיליון)
אני יכול להגדיר בכל פעם שם לתא מסוים, אבל זו פעולה שתאריך לי מאוד את העבודה.
אני מתעכב על הבעיה הזאת כבר כמה שבועות, בינתיים יצרתי פיתרון שהוא כמו פלסתר.
יש אפשרות לעשות מניפולציה על שם הגיליון, לשנות לו את השם בתחילת המאקרו, ואז להחזיר לו את השם המקורי בסוף פעולת המאקרו, (כאמור, האקסל ממיר אוטומטית בתוך התאים את שם הגיליון) זה פתרון חמוד אבל קצת אידיוטי..:
'שמירת שם הגיליון המקורי במיקום כלשהו בתוך הגיליון
Range("CT3").Value = ActiveSheet.Name
'החלפת שם הגיליון
ActiveSheet.Name = "אאא"
'כתיבת הנוסחה עם שימוש בשם החדש
Sheets("2").Select
ActiveCell.FormulaR1C1=Sheets("אאא").Range("B2")
'החזרת השם המקורי ומחיקת תוכן התא ששמר את שמו
Sheets("1").Select
ActiveSheet.Name = Range("CT3")
Range("CT3").ClearContents
אני מחפש פתרון יותר סביר.
(אני יוצא מנקודת הנחה, שאם יצרו אפשרות כזו במאקרו, אין סיבה שלא תהיה אפשרות באקסל עצמו.)
כשרוצים להחזיר נתון שנמצא בתא של גיליון אחר (לדוגמה: נתון שנמצא בתא B2 בגיליון 1) כותבים כך:
=גיליון1!B2
מה קורה ששם הגיליון משתנה? (נניח שיניתי את שמו של גיליון אחד ל- "פתיח") - אקסל ממיר אוטומטית את שם הגיליון בתוך הנוסחה:
=פתיח!B2
בכתיבת קוד מאקרו, ניתן גם להפנות לתא בגיליון ייעודי ללא שימוש בשם הגיליון אלא במספור הגיליון:
או בשם :
ActiveCell.FormulaR1C1=Sheets("פתיח").Range("B2")
או לפי מספור:
ActiveCell.FormulaR1C1=Sheets(1).Range("B2")
וכעת לשאלה שלי:
האם ניתן להפנות נוסחה באקסל רגיל (לא מאקרו) לגיליון אחר ללא שם הגיליון אלא לפי מספר הגיליון?
יעזור לי ממש לדעת אם כן איך ניתן לעשות זאת.
תודה לעונים!
חשוב לתקן את הבלבול שנוצר כאן.
WD-40 זה שם של יצרן. לא של חומר.
המוצר הנפוץ הוא חומר לשחרור ברגים וחלודה (שהוא ממש לא שמן מכונות רגיל כפי שעלולים לטעות) שהשם המסחרי שלו הוא "WD-40".
בנוסף, היצרן הזה משווק עוד חומר בשם "ספריי מגעים" (WD-40 SPECIALIST- CONTACT CLEANER) ראו כאן.
(באתר של KSP כאן ג"כ כתוב מפורש שגם הוא לא מוליך חשמל)
אני לא מאמין שהם יסתכנו לכתוב כזה דבר על הצד הקלוש שהחומר הזה כן מוליך...
@יעקב2 כתב במקלדת שנשפך עליה מים ומתנהגת מוזר:
הייתי מפרק מייבש ומעביר אלכוהול על הכל
לי היה פעם מכשיר שלא היה לי שום גישה לחלקים הפנימיים שלו, (עם עין אלקטרונית שהפסיקה לזהות)
קניתי ב-35 ש"ח ספריי מגעים (יש בכל טמבור), שפריץ אחד קטן, וראיתי ישועות.
אם כי, אני לא בטוח ב-100% שזה טוב גם לקורוזיה כזו, כי יכול להיות שצריך גם לעבור על זה עם עיפרון מסיר קורוזיה.
@one1010 כתב בהתקנת אסלה תלויה:
ואם אני יעשה את זה לבד יש מקום לבעיות?! שלא יהיה מחובר טוב? נזילות?! בעיות אחרות?
כנראה שלא, אא"כ ידיך שמאליות.
אגב, בתחומי אינסטלציה יש כאלו דווקא שלא מצליחים לעשות כלום למרות שהם DIY מעולים בכל התחומים.
@אף-אחד-3 כתב בהתראה של ווינדוס בהעתקת קובץ לתוך תיקיה משותפת ברשת פנימית:
ל NTFS יש אפשרות להגדיר יותר מאפיינים לקובץ (כמו הרשאות) שאי אפשר להגדיר במערכות אחרות שנתמכות בווינדוס
לפי מה שאתה אומר, את ההגדרות אני יהיה צריך לשנות בכל מקרה במחשב המשתף ולא במחשב שלי. הבנתי נכון?