הסרת כפולים "מתקדמת" - אקסל 2010

white shadow 3

New member
הסרת כפולים "מתקדמת" - אקסל 2010

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

תודה ושבוע טוב
 

u333

New member
באמצעות מקרו אפשר לבצע הכל...ואם תצרף קובץ, כנדרש, ניתן יהיה

להתמקד במטרה.
ורצוי הסבר עם דוגמא בקובץ - לפני ואחרי.
 

white shadow 3

New member
הי, בוקר טוב

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

עכשיו כשיצא לי לחשוב על הסוגיה, יכול להיות שהיא קצת יותר מורכבת ממה שחשבתי בהתחלה, אז חילקתי את הקובץ ל-2 מקרים אפשריים שעולים לי כרגע לראש (למרות שאחד מהם הוא קצת מקרה קצה, אבל אם אני כבר עושה עבודה אז מעדיף שהיא תהיה 100% ;-ׂׂ) )

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

לדוגמא,
במקרה א'
בשורה מספר 3 יש אותו הת.ז כמו שורה 5 (והת.ז הזה לא מופיע יותר בקובץ) ולשניהם יש את אותו תאריך זימון לכן הייתי רוצה ששניהם יעלמו.
בניגוד לכך, בשורה 4 ובשורה 6 מופיעה אותה תעודת זהות עם תאריכי זימון שונים, ולכן הייתי רוצה ששתיהן תישארנה.

המצב קצת מסתבך במקרה ב', בו:
בשורה 13 וב-15 יש את אותו הת.ז עם תאריכי זימון שונים,
בשורה 13 וב-16 יש את אותו הת.ז עם תאריכי זימון שווים,
כאן כביכול הייתי רוצה לראות הסרת כפולים רגילה ע"ב השדה (ת.ז, תאריך זימון) כי הייתי רוצה לדעת שלת.ז X יש זימון גם בתאריך 1.1.18 וגם בתאריך 5.1.18.

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

תודה מראש,
 

white shadow 3

New member
הי שוב...

לקחתי את התשובה של ziv98 וניסיתי לשחק איתה קצת כדי להגיע לתוצה (שנראית לי כרגע כ-) רצויה
&nbsp
על הדרך רציתי לנסות ללמוד קצת איך עובד מקרו (לא הכרתי לפני) אז צפיתי בכמה סרטונים ב-youtube, אבל נתקלתי בבעיה מסוימת.
&nbsp
נניח ואני רושם בתא מסוים נוסחא כמו
ZZ = COUNTIF(A:A, A2) ZZ
ואני רוצה להעתיק את הנוסחא הזאת לכל שאר התאים, כמספר השורות שיש בגיליון.
&nbsp
הבעיה - במהלך הרצת המקרו לקחתי את התא עם הנוסחא ולחצתי פעמיים על ה"+" הקטן כדי להעתיק אותה, וזה אכן הועתק, אך לאחר מכן כשהרצתי את המקרו על קלט אחר הוא העתיק את הנוסחא רק ל-X השורות שהיו בהקלטה המקורית (נגיד היו בהקלטה 4 שורות, אז העתיק את הנוסחא רק לתאים שבשורות 2,3,4,5)
&nbsp
השאלה - האם אני יכול להקליט מקרו כך שהוא יעתיק את הנוסחא שיש בתא מסוים לכל השורות שיש בקלט, כאשר אני לא יודע מראש (בהקלטה) כמה שורות כאלה תהיינה?
 

u333

New member
לצערי עשית מיש-מש וסלט שלם עם נוסחאות ו'כאילו' מקרו

  • הנוסחה שרשמת אינה נוסחה. נוסחה בתא מתחילה תמיד בסימן"=" (ללא הגרשיים)
  • מקרו לא מכניסים לתא אלא למודול !!
  • אם תצרף את הקובץ עם כל הנסיונות - כולל הנוסחאות והמקרו - ורצוי שתתן גיליון נוסף עם התוצאה הרצויה - יהיה יותר קל לעזור.
 

ziv98

Member
פעולה חד פעמית ?

אם כן, ונניח שהערך הנבדק בעמודה A, בעמודה B כתוב:
=COUNTIF(A:A,A1)>1
סנן ומחק את כל תוצאות ה - TRUE, מחק את עמודת העזר.
 

white shadow 3

New member
תודה, יכול להיות שיתן מענה קל ומהיר..

ה"בעיה"היא (לא בטוח אם באמת בעיה...) שאני מחפש ערכים כפולים בין 2 עמודות
&nbsp
כלומר נניח ויש לי קובץ עם הרבה עמודות, אבל אני מחפש רשומות בעלות ת.ז+תאריך זימון שווים
כלומר אם יש לי:
1 | 1.1.18
1 | 2.1.18
אז הרשומות בסדר מבחינתי
&nbsp
אבל אם בכל הרשומות יש נניח משהו בסגנון של:
1 | 1.1.18
1 | 1.1.18
אני הייתי רוצה ששתיהן תמחקנה.
&nbsp
האם ניתן להתאים את ה-COUNTIF להתאמת ערכים ביותר מעמודה אחת?
 

ziv98

Member
הבעיה היחידה שאתה לא מגלה את כל הקלפים מראש...

נסה עם counifs
שים לב ל - S בסוף
 

white shadow 3

New member
מה הכוונה "לא מגלה את הקלפים"?

אגב, העלאתי דוגמא עם הסבר קצת יותר מלא על החזון שלי

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