חילוף בהעתקה באקסל

EY555

New member
חילוף בהעתקה באקסל

שלום לכולם

יש לי סדרת מחרוזות בעמודה (לכל מחרוזת מצורף פסיק)
אני מעוניין לבצע חילוף של כולן לתא אחד (מחרוזת משורשרת) כדי לשתול אותו בשאילתת sql.
(<המחרוזת המשורשרת>)where X in ..
יש דרך אלגנטית לעשות זאת בלי ליצר את המחרוזת המשורשרת באופן ידני ?

צירפתי אקסל להמחשה

תודה רבה לעונים
 

u333

New member
הגדר את ה-UDF בתמונה למודול....

והשתמש בפונקציה החדשה - במקרה הזה, בתא A2
כאשר - במקרה שנתתי - הטווח המשורשר הוא A3:A53 והמפריד הוא רווח

 

מיכאל אבידן

Member
מנהל
'גימיק' קליל ונחמד אבל לא יותר מזה . . .


כי ברגע שתבקש לשנות את ערכו של תא A43, למשל, או למחוק מספר תאים בסוף הטווח - התוצאה לא תשתנה ויהיה עליך לשנות/למחוק את הערך בתוך
הנוסחה - פעולה ש'אקסליסטים' לא ממש אוהבים...
 

ziv98

Member
SQL

גם ב - SQL SERVER וגם ב - ORACLE (אתה עובד באורקל ?) אני לא מכיר בעיה עם:
קוד:
where field in(xxx,
yyy,
zzz,
...)
ולכן אתה צריך פשוט להעתיק את העמודה.

בכל מקרה מעל 50 ערכים ב - in יותר ממרמז שאתה צריך איכשהו לסמן את הרשומה אחרת. למשל where על כל חלק מה - concat בנפרד (or/and בינהם).
כמובן שהכוונה ל - concat:
CONCAT(TO_CHAR(A.MISPAR_AZMANA*1000+A.MISPAR_SHORAT_AZMANA,'9999999999'),',')--A.TARICH_PIRSUM,A.TEOR_MODA,A.YOETZ_PIRSUM,A.MISPAR_MOTAG,A.NETO
 

EY555

New member
צודק בהחלט .. העתקת העמודה מייתרת את השאלה :)

אבל בכל זאת החכמתי מהתשובות.

האמת שמדובר בשאילתא חד פעמית.
אם היה מדובר בפיתוח הייתי חושב על אופציה אחרת.
 
למעלה