vba: מקסימום תווים במשתנה string
-
שלום לכולם
vba מהתל בי בכל פעם שאני מכניס למשתנה מסוג string הרבה מאוד חומר, לא יודע למה, פונקציות תמיד מקבלות יותר מ 255 תווים, משתנים מקומיים לפעמים לא ולפעמים כן. האם יש איזה מידע שיכול לשפוך אור על העירפול הזה. ואיזה אובייקט כן יכול להכיל עד 2 מיליארד תווים?תודה
פורסם במקור בפורום CODE613 ב05/01/2014 17:53 (+02:00)
-
לפי המתואר בעזרה של וורד זה כך:
מחרוזת באורך משתנה יכולה להכיל עד כ -2 מליארד (2 ^ 31) תווים.
מחרוזת באורך קבוע יכולה להכיל 1 עד כ (64K (2 ^ 16 תווים.וזה מדבר על קידוד ASCII אבל אם יש לך תוים בקידוד UTF-8 וכדומה הרי שכל תו לוקח שני ביטים.
בכל מקרה תמיד אתה יכול לחלק את החומר לכמה משתנים למשל למערך שכל איבר יכול חלק מהחומר, או לשמור את הכל בקובץ בדיסק ולקרא כל פעם קטע מהקובץ.
פורסם במקור בפורום CODE613 ב05/01/2014 18:12 (+02:00)
-
רחמים, לקחת לי את המילים, מזל שלפני שלחצתי שלח הלכתי לבדוק אם מישהו הספיק לענות...
המשמעות היא שאם לא הגבלת את הגודל בקוד כך:Dim FS As String * 10
אז יש לך 2 מיליארד בערך.
בכל מקרה,תנסה להגדיר מסוג Object ולא סטרינג ולדעתי אז זה לא אמור לתעתע בך. (אובייקט יושב בתוך הזיכרון והגבול שלו זה הגבול של הזיכרון, משתנים יושבים בתוך הזיכרון אבל הגבול שלהם זה מה שמוגדר בכל שפה)פורסם במקור בפורום CODE613 ב05/01/2014 18:19 (+02:00)