העתקת עמודה....

מייקL

New member
העתקת עמודה....

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

0 אור 0

New member
האם אפשרי לעשות את העיבוד באקסל?

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

מייקL

New member
תשובה...

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

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

מקווה שהייתי ברור, תודה מראש.
 

0 אור 0

New member
האמת שלא דיברתי על קוד באקסל אלא פעולה ידנית

הדרישה שלך ממי שמכין לך את הקובץ צריכה להיות שהטורים יהיו בסדר הקבוע, ותכין לו טבלה ריקה באקסס שאליה הוא מעתיק בהעתק הדבק את התוכן מהאקסל.
ובמחשבה שניה אם הטורים הם בסדר קבוע, אז ב 99% בטוחה שהשם יהיה F1 והכתובת F2 כי הספרות האלו מייצגות את מס' הטור באקסל.
 

מייקL

New member
במילים אחרות...

האם יש דרך (VBA) להעתיק שדה בטבלה לפי התוכן של הרשומה ולא לפי שם השדה.
תודה מראש
 

כלליים

New member
אני באופן אישי

לא הבנתי את השאלה. אולי תעלה קובץ דוגמא. הוא יחסוך הרבה מאמץ.
 

מייקL

New member
פשוט!...

להעתיק שדה (מטבלת "מקור") שמופיע באחת הרשומות שלו: ישראל ישראלי, לשדה "שם תלמיד" בטבלת "יעד"
 

מייקL

New member
מצו"ב קובץ דוגמא...

אני צריל להעתיק את כל העמודה שמופיע בה "שם תלמיד" בטבלת tblSource (במקרה הנוכחי השם שלה הוא F2) לשדה "FirstName" בטבלת tblDes.
כנ"ל סטטוס ל "Status" וגיל ל "Age".
תודה רבה
 

כלליים

New member
תמונה אחת שווה יותר מאלף מילים

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

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