אחת הדרכים לעשות זאת היא...
באמצעות נוסחה (זה קצת מורכב...)
לאקסל אין פונקציה מובנית שניתן להפעיל כנוסחת מערך כדי להחזיר עבור תחום של תאים אם הוא כולל שורות מוסתרות.
לאור זאת כתבתי פונקציה כזאת בשם Ishidden. הפונקציה מקבלת תחום תאים ומחזירה מערך של True או False לגבי השורות המוסתרות. להלן קוד הפונקציה:
קוד:
Function IsHidden(rng As Range)
ReDim h(1 To rng.Count)
For i = 1 To rng.Count
If rng(i).EntireRow.Hidden Then h(i) = True Else h(i) = False
Next i
IsHidden = WorksheetFunction.Transpose(h)
End Function
שילוב של הפונקציה בנוסחת מערך יכול לתת את התוצאה המבוקשת.
את הנוסחה בגיליון2 בתא D4 צריך להעתיק שמאלה ולמטה.
להלן הנוסחה ב-D4
=IFERROR(INDEX(גיליון1!E$4:E$50,SMALL(IF(Ishidden(גיליון1!E$4:E$50)=FALSE,ROW($E$4:$E$50)-3),ROW()-3)),"")
זאת נוסחת מערך. יש לסיים את הכנסתה בצירוף המקשים Ctrl+Shift+Enter
מצורף קובץ הדגמה