הרבה משתמשי Excel מסתירים שורות ועמודות כשיש להם נתונים שהם לא צריכים לראות.
זוהי דרך לשמור רק על נתונים שימושיים גלויים, ובמקביל לא צריך למחוק את הנתונים שאתה לא צריך להיות גלוי.
ואם יש לך הרבה שורות/עמודות נסתרות כאלה, זה יכול להיות כאב למצוא ולמחוק את השורות והעמודות הנסתרות האלה (במקרה שאתה לא צריך אותן).
במדריך זה אראה לך כמה דרכים בקלות מחק שורות ועמודות נסתרות ב- Excel.
יש שיטה מובנית המאפשרת לך למחוק את כל השורות והעמודות הנסתרות בבת אחת, ותוכל גם להשתמש בקודי מאקרו של VBA למקרה שתרצה להחיל זאת על טווח התאים שנבחר.
אז בואו נתחיל!
מחק את כל השורות והעמודות הנסתרות ב- Excel
אם ברצונך למחוק את כל השורות והעמודות הנסתרות בחוברת עבודה שלמה ב- Excel, תוכל להשתמש בשיטה המוצגת כאן.
זכור כי הוא עומד להסיר שורות ועמודות נסתרות אלה מחוברת העבודה כולה ולא מהגיליון הפעיל בלבד.
להלן השלבים למחיקת כל השורות והעמודות הנסתרות מחוברת העבודה ב- Excel:
- לחץ על האפשרות קובץ
- באפשרויות משמאל, לחץ על 'מידע'
- לחץ על האפשרות 'בדוק בעיות'
- לחץ על האפשרות 'בדוק מסמך'. פעולה זו תפתח את תיבת הדו -שיח מפקח מסמכים
- בתיבת הדו -שיח 'מפקח מסמכים', לחץ על הלחצן 'בדוק'. פעולה זו תבדוק את חוברת העבודה כולה ותתן לך את המידע על חוברת העבודה
- גלול מטה לאפשרות 'שורות ועמודות נסתרות'. תראה שהוא מציג את המספר הכולל של שורות ועמודות מוסתרות שמצא בחוברת העבודה.
- לחץ על הלחצן 'הסר הכל'
השלבים שלעיל ימחקו את כל השורות והעמודות החבויות בחוברת העבודה.
שים לב שעליך לשמור חוברת עבודה זו לפני הפעלת האפשרות מפקח מסמכים. אם חוברת העבודה לא נשמרה כבר, Excel יאלץ אותך תחילה לשמור אותה. כמו כן, הוא יראה לך הודעת אזהרה המבקשת לשמור את הקובץ פעם אחת, מכיוון שלא ניתן לשחזר את הנתונים שהשתנו בשלבים אלה.
במקרה ואין שורות ועמודות נסתרות, תראה סימן ירוק לפני האפשרות מוסתר ושורות ועמודות (בתיבת הדו -שיח מפקח מסמכים).
מלבד שורות ועמודות נסתרות, תיבת הדו -שיח 'מפקח מסמכים' מספקת לך גם מידע רב שימושי אחר - כגון מספר ההערות, גליונות עבודה מוסתרים או מסמכים מוטבעים וכו '.
הערה: לא ניתן לבטל את השינויים שביצע מפקח המסמכים. אז וודא שיש לך עותק גיבוי של הנתונים המקוריים (למקרה שאולי תזדקק להם בעתיד)זוהי שיטה מצוינת אם ברצונך למחוק את כל העמודות והשורות הנסתרות עבור חוברת העבודה כולה.
אך למקרה שתרצה למחוק אותו רק בגיליון ספציפי או בטווח ספציפי, לא תוכל להשתמש באפשרות זו.
במקרה זה, תוכל להשתמש בשיטת VBA המכוסה בהמשך.
מחק שורות ועמודות נסתרות באמצעות VBA
אם יש לך רק כמה שורות ועמודות נסתרות, אפשר לבטל אותן באופן ידני ולאחר מכן למחוק אותן.
אבל אם זה משהו שאתה צריך לעשות לעתים קרובות למדי, או אם יש לך מערך נתונים גדול עם מספר רב של שורות/עמודות מוסתרות, עדיף להשתמש בקודי מאקרו של VBA כדי להפוך תהליך זה לאוטומטי.
הבה נבחן תרחישים שונים בהם תוכל להשתמש ב- VBA כדי למחוק את השורות והעמודות הנסתרות הללו.
מתוך דף עבודה שלם (טווח משומש)
למרות שאני יכול לגרום לקוד VBA לבדוק את כל גליון העבודה החל ממספר השורה האחרונה ומספר העמודה האחרון בגליון העבודה, זה יהיה בזבוז משאבים.
שיטה טובה יותר תהיה לראות מהו הטווח המשמש ולאחר מכן לבדוק רק את הטווח המשמש עבור כל השורות והעמודות הנסתרות.
להלן קוד VBA שימחק את כל השורות הנסתרות בטווח המשמש:
Sub DeleteHiddenRows () Dim sht As גליון עבודה Dim LastRow Set sht = ActiveSheet LastRow = sht.UsedRange.Rows (sht.UsedRange.Rows.Count) .Row For i = LastRow לשלב -1 אם שורות (i) .Hidden = True לאחר מכן שורות (i) .EntireRow.Delete Sub Next Sub
קוד VBA לעיל מגלה תחילה את מספר השורה האחרונה בטווח המשמש ומקצה את מספר השורה למשתנה 'LastRow'.
מספר השורה האחרונה הזה משמש לאחר מכן בלולאה For Next, שם הוא מתחיל מהשורה האחרונה ובודק אם הוא מוסתר או לא.
במקרה שהוא מוסתר, השורה כולה נמחקת. ואם זה לא מוסתר, הקוד עוזב את השורה כפי שהיא ועובר לשורה שמעליה. לולאה זו בודקת את כל השורות ומוחקת כל שורה מוסתרת שהיא נתקלת בה בתהליך.
אם ברצונך למחוק את כל העמודות הנסתרות בטווח המשמש, השתמש בקוד VBA להלן:
Sub DeleteHiddenColumns () Dim sht As גליון עבודה Dim LastCol כמספר שלם sht = ActiveSheet LastCol = sht.UsedRange.Columns (sht.UsedRange.Columns.Count) .Column For i = LastCol לשלב -1 אם עמודות (i) .Hidden = True ואז עמודות (i) .EntireColumn.Delete Sub Next End
זה שוב עובד באותו אופן שבו במקום שורות, אנו בודקים אם יש עמודות.
אז הוא מגלה את מספר העמודה האחרון בטווח המשמש, מקצה אותו למשתנה, ואז משתמש בלולאה כדי לעבור מהעמודה האחרונה לעמודה הראשונה ולמחוק את כל העמודות הנסתרות בתהליך.
ואם תרצה שיהיה לך קוד שימחק את כל השורות הנסתרות, כמו גם את העמודות הנסתרות, השתמש בקוד VBA להלן:
Sub DeleteHiddenRowsColumns () Dim sht As גליון עבודה Dim LastRow כמספר שלם Dim LastCol as Integer Set sht = ActiveSheet LastRow = sht.UsedRange.Rows (sht.UsedRange.Rows.Count) .Row LastCol = sht.UsedRange.Columns (sht.UsedRange. Columns.Count) .Column For i = LastRow לשלב -1 אם שורות (i) .Hidden = True ואז שורות (i) .EntireRow.Delete הבא עבור i = LastCol לשלב -1 אם עמודות (i). מוסתר = True ואז עמודות (i) .EntireColumn.Delete Sub End בסוף
זהו רק הקוד המשולב לשורות ולעמודות ועובד באותו אופן.
במקום לולאה אחת, היא משתמשת בשתי לולאות נפרדות, שבהן היא עוברת תחילה בכל השורות, ואז עוברת בכל העמודות. ובתוך כך הוא מוחק את כל השורות והעמודות הנסתרות שהוא נתקל בהן.
שים לב שעליך למקם קוד VBA זה במודול רגיל בעורך Visual Basic. לאחר מכן תוכל להריץ את הקוד ישירות מעורך VB, באמצעות תיבת הדו -שיח מאקרו, או על ידי הוספת מאקרו זה לסרגל הכלים לגישה מהירה.
אם זה משהו שאתה צריך לעשות לעתים קרובות למדי, תוכל גם להוסיף את הקוד הזה לחוברת העבודה המאקרו האישית כך שתהיה לך גישה אליו מכל חוברות העבודה במערכת שלך.
ממגוון תאים ספציפי
במקרה שיש לך טווח ספציפי שממנו ברצונך להסיר שורות ועמודות נסתרות, עליך לציין זאת בתוך הקוד.
זה מוודא שהקוד רק עובר בין השורות והעמודות בטווח שצוין ומשאיר את האזורים האחרים בגליון העבודה ללא נגיעה
מתחת לקוד VBA שיעשה זאת:
משנה DeleteHiddenRowsColumns () Dim sht As גליון עבודה Dim Rng כטווח Dim LastRow As Integer Dim RowCount As Integer Set sht = ActiveSheet Set Rng = Range ("A1: K200") RowCount = Rng.Rows.Count LastRow = Rng.Rows (Rng. Rows.Count) .Row ColCount = Rng.Columns.Count LastCol = Rng.Columns (Rng.Columns.Count) .Column For i = LastRow To LastRow - RowCount שלב -1 אם שורות (i) .Hidden = True ואז שורות ( i) .EntireRow.Delete Next For j = LastCol To LastCol - ColCount שלב -1 אם עמודות (j) .Hidden = True ואז עמודות (j) .EntireColumn.Delete Sub End Next Sub
בקוד לעיל ציינתי את הטווח כ- A1: K200.
זה גורם לקוד לעבור בין כל השורות והעמודות בטווח שצוין ולהסיר את כל השורות והעמודות הנסתרות שהוא נתקל בהן.
אם יש לך שורות או עמודות מוסתרות מחוץ לטווח זה, אלה לא יישארו מושפעות.
אז ככה אפשר למחוק שורות ועמודות נסתרות ב- Excel.
אם אתה רוצה לעשות את זה בכל חוברת העבודה כולה, תוכל להשתמש באפשרות מפקח המסמכים. ואם אתה צריך יותר שליטה, אתה יכול להשתמש בקודי VBA כפי שמוצג למעלה.
אני מקווה שמצאת הדרכה שימושית!