שילוב נתונים באקסל

שילוב נתונים באקסל

שלום רב
אני צריכה לאחד נתונים מילוליים ומספריים מכ-500 חוברות עבודה של אקסל, ואני מחפשת דרך לאחד את הנתונים שהתקבלו מהן כדי שאוכל לנתח אותם.
אשמח לשמוע על פתרון יותר פשוט מהקלטת מקרו והפעלתו בכל קובץ בנפרד. אם יש צורך, אוכל גם לישם הצעות באמצעות אקסס.
התקווה היא, מעבר ליעילות, לחסוך לי הרבה שעות שינה.

מידע על הקבצים:
כל החוברות שמורות בתיקייה אחת והן באותה תבנית:
גליון 1 - הקדמה. מיותרת לעיבוד הנתונים
גליון 2 כולל שורה אחת של נתונים, שמהווים פרטי המוסד (שורה 1 כותרת; שורה 2 נתונים) הנתונים בטורים A-D מועתקים לעמודות מוסתרות בגליונות 2, 3
בחלק מהתאים יש הגבלה של "בחירה מרשימה". הרשימה נמצאת באותו גליון.
גליון 2 - כולל :
-טורים A-C הם פרטי הזיהוי של המוסד, מועתקים מגליון 1
- טבלה בגודל קבוע, שבה מולאו נתונים שונים מתוך רשימות בגליות (רשימה של פריטים ובכל מוסד שמילא את הטבלה מילאו כמה פריטים יש אצלם, ומאיזה סוג. לגבי פריטים שאין להם, לא מילאו כלל.)
בחלק מהתאים יש הגבלה של "בחירה מרשימה". הרשימה נמצאת באותו גליון.

גליון 3 - כולל:
- טורים A-D בכל אחת מהשורות הם פרטי הזיהוי של המוסד, המועתקים מגליון 1.
- נתונים לגבי אנשים. בכל גליון מופיע מספר אחר של רשומות.(1-20 בערך)
בחלק מהתאים יש הגבלה של "בחירה מרשימה". הרשימה נמצאת באותו גליון.

עובדת עם אופיס 2016 / 2010, WIN7.

מחפשת דרך לכנס את כל הנתונים כך שהתוצר הסופי יהיה:
גליונות 2 מרוכזים בגליון מקובץ
גליונות 3 מאוחדים, כך שכל הנתונים יקובצו לטבלה אחת (ניתן, בשלב זה, לוותר על קיבוץ הפרטים המזהים מגליון 2)
גליונות 4 מאוחדים, כולל הנתונים המזהים שהועתקו מגליון 1 בכל שורה.

לצערי אינני יכולה לצרף קובץ לדוגמה בשלב זה. יתכן שאוכל להעביר ב"פרטי" מחר, אך אני מקווה שפירטתי מספיק.

מודה למראש לכל מי שינסה לסייע
 

ziv98

Member
2 סנט שלי...

ברור לך שבלי דוגמה, ועם סיפור ארוך כל כך, קשה להתייחס לבקשה.

אבל, בספריית "קטעי קוד מוכנים שיהיו לכל מקרה" יש לי קטע קוד שאני משתמש בו לייבוא של קבצים רבים מתוך תיקיה (אקסס).
קל מאוד להמיר את הקוד הזה גם לאקסל.
אם זה מתאים לך - הרווחת.


קוד:
DoCmd.RunSQL "DELETE * FROM XSACAL;"

FileNameFolder = Me.UNZIP_FOLDER

F = Dir(FileNameFolder & "\*SACAL.csv")
While F <> ""
    DoCmd.TransferText acImportDelim, "SACAL", "XSACAL", FileNameFolder & "\" & F
    F = Dir()
Wend

DoCmd.OpenQuery "APPEND_SACAL"
 

ziv98

Member
קובץ דוגמה

לא היה לי זמן לבנות משהו במיוחד בשבילך, וראיתי שלא קיבלת התייחסות, אז:

מצ"ב קובץ שאני משתמש בו (מחקתי לא מעט מהמאקרו, אני מקווה שלא הגזמתי...)
1. בגיליון בוחרים (דרך לחצנים) - תיקיית מקור ותיקיית גיבוי.
2. הקובץ עצמו לא יהיה בתיקיית המקור.
3. בגיליון הריכוז - אני מכין מראש את הכותרות (הן קבועות - העתק הדבק חד פעמי מאחד הקבצים).
4. מה שחסר - אצלך יש 2 שורות כותרת - לא ברור למה. אצלך בקובץ, שהוא פתוח, צריך לעבור על 3 גיליונות ולהעתיק כל אחד מהם לגיליון יעד אחר (בקבצים שלי יש גיליון אחד, אז אני אפילו לא טורח לבדוק באיזה גיליון הקובץ נפתח).

אני מקווה שהשינויים הדרושים פשוטים מספיק שתסתדרי לבד.
 
למעלה