![]() |
One range inside another, Intersect
After I had the same situation, and reading some posts about checking to see
if the cells in one range were contained in another range, I wrote the function below. It returns the boolean True or False value, and optionally, if range A is not entirely within range B, the first failing cell is returned. Public Function bRngAinRngBF(RngA As Range, RngB As Range, _ Optional FailedRng As Range = Nothing) As Boolean 'True if every cell in RngA is in RngB. 1 Area is OK in either. 'When False, the 1st cell in RngA not found in RngB is returned in FailedRng. Dim CellA As Range Dim IxB As Integer, IxA As Integer Set FailedRng = Nothing If RngA Is Nothing Or RngB Is Nothing Then Exit Function For IxA = 1 To RngA.Areas.Count For Each CellA In RngA.Areas(IxA) For IxB = 1 To RngB.Areas.Count If Not Intersect(CellA, RngB.Areas(IxB)) Is Nothing Then Exit For 'found Next IxB If IxB RngB.Areas.Count Then Set FailedRng = CellA Exit Function End If Next CellA Next IxA bRngAinRngBF = True ' Both loops complete, function is true End Function -- Neal Z |
All times are GMT +1. The time now is 06:13 AM. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com