תופעות
בעת הפעלת מאקרו Visual Basic for Applications ב- Microsoft Excel, ייתכן שתקבל את הודעת השגיאה הבאה או דומה:
שגיאת זמן ריצה '1004':
פעולת השירות 'SaveAs' של האובייקט '_Worksheet' נכשלהסיבה
אופן פעולה זה עשוי להתרחש כאשר שני התנאים הבאים מתקיימים:
-
אתה משתמש במאקרו Visual Basic for Applications כדי לשמור גליון עבודה.
-and- -
עליך לציין את תבנית הקובץ כ- xlWorkbookNormal הקבוע.
לדוגמה, הקוד הבא גורם לשגיאה זו להתרחש:
Sub A()
Dim myNewSheet As Worksheet Set myNewSheet = ActiveSheet FileNameBin = "c:\ABC" myNewSheet.SaveAs Filename:=FileNameBin, FileFormat:=xlWorkbookNormal End Sub
פתרון
Microsoft מספקת דוגמאות תיכנות להמחשה בלבד, ללא אחריות המבוטאת או משתמעת, כולל, אך לא מוגבל, אחריות משתמעת של יכולת סחר ו/או כושר למטרה מסוימת. מאמר זה מניח שאתה מכיר את שפת התיכנות המדגימה ואת הכלים המשמשים ליצירת הליכים ולאתר באגים. מומחי תמיכה של Microsoft יכולים לסייע בהסברת הפונקציונליות של הליך מסוים, אך הם לא יתנו דוגמאות אלה כדי לספק פונקציונליות נוספת או לבנות הליכים כדי לספק את הצרכים הספציפיים שלך. https://partner.microsoft.com/global/30000104 Microsoft Advisory Services - http://support.microsoft.com/gp/advisoryservice לקבלת מידע נוסף אודות אפשרויות התמיכה הזמינות ואופן יצירת קשר עם Microsoft, בקר באתר האינטרנט הבא של Microsoft:http://support.microsoft.com/default.aspx?scid=fh;EN-US;CNTACTMS כדי לעקוף אופן פעולה זה, שנה את מפרט תבנית הקובץ מתוך הקבוע xlWorkbookNormal ל- 1. הקוד לדוגמה פועל כרגיל אם הוא השתנה ל:
אם יש לך חוויית תיכנות מוגבלת, ייתכן שתרצה לפנות לשותף מוסמך של Microsoft או לשירותי היידוע של Microsoft. לקבלת מידע נוסף, בקר באתרי אינטרנט אלה של Microsoft: Microsoft Certified Partners -Sub A()
Dim myNewSheet As Worksheet Set myNewSheet = ActiveSheet FileNameBin = "c:\ABC" myNewSheet.SaveAs Filename:=FileNameBin, FileFormat:=1 End Sub
הערה למרות שאתה שומר גליון עבודה, כל גליונות העבודה בחוברת העבודה שנבחרה נשמרים כאשר תבנית הקובץ מוגדרת ל- xlWorkbookNormal או 1.
מצב
Microsoft אישרה כי זוהי בעיה במוצרי Microsoft המפורטים בתחילת מאמר זה.