VBA Dynamic Range Till First Blank But Cells Contain Formula?

Jul 22, 2014

I've normally just dynamically selected a range using the xldown feature but because this row contains formula it goes always down to the bottom of the formula instead of the last cell which isn't blank.

How would i go about generating this dynamic range that stops at the first cell that contains no value (but has a formula)? Perhaps a do while loop which looped down until it hit the first blank and then assigned the cells it had looped through as the range?

I am having the same problem as this thread Dynamic Ranges with blank cells.

I've recently been pointed in the direction of dynamic ranges (named ranges that use OFFSET and COUNTA to expand to cover the whole of a list, even if the number of rows used is frequently changed).

They seem to have a big drawback, in that the range will not go to the bottom of the list if the list has blank cells in (because the COUNTA for the column of interest does not equal the number of rows in the list).

I have been to the link posted in that thread about advanced dynamic named ranges but inserting a row with numbers in it and then hiding it is not suitable for me as i deal with other peoples spreadsheets so need to always be working with the Active Sheet.

Attached is a spreadsheet I am working on that has a series of graphs with defined dynamic ranges. I am having 2 separate issues on 2 different tabs.

1) Ranges named AirRecBra4 (and Bra10); AirComBra4 (and Bra10); AirRemBra4 (and Bra10) are not pulling in data from the correct data points. Instead of using the last 26 data point, they are currently beginning at the top of the column (currently cells 11 to 36 is their respective columns). The formulas are copy and pasted from working offset ranges in the same tab but are reading differently.

2) On the last 6 tabs beginning with Stn Backlog, I want to have defined formulas beginning in cell B119 and continuing downward to at least F200. However, when I add the formulas, the offset reads the formulas as being data and adjusts for that. I do not know how to adjust the dynamic range to ignore formulas in blank cells.

Global Demand-Capacity Management_working (version 3).xlsm

I have a spreadsheet where I want to filter out a row if the entire row has zeros across all the columns. I cannot just use a Sum() formula because some of the numbers are negative and there is a chance it could zero the sum out.

Currently to do this I am using the following to tell if there are values in each of my rows:

I am try to get the following VBA macro to work; however, I keep getting hung up on errors regarding the formula I am trying to input. It is getting hung up on the apostrophes and dollar signs. I am fairly new to VBA so I am lost when it come to converting my sheet formulas to VBA.

Code:

With ActiveSheet.UsedRange.SpecialCells(xlCellTypeBlanks) .Formula = "=RAND()*0+VLOOKUP(INDIRECT(ADDRESS(1,COLUMN(),3),TRUE),INDIRECT("'"&TEXT(INDIRECT("$A"&ROW(),TRUE),"DD-MMM-YYYY")&" Inv'!"&"$J:$K",TRUE),2,FALSE)" .Value = .Value End With

I need a formula that will search the range D8-D100 to confirm that all cells within that range are either 11 characters in length or blank. I will use it inside of an error message that will look something like this:

=IF(****formula that checks to make sure all of the cells in that range are blank or 11 characters****=TRUE, "", "Please make sure that all cells are 11 digits or blank")

I have a named dynamic range with the source =OFFSET(Data!$J$2,0,0,COUNTA(Data!$J:$J),1) Thia is set up as the data validation list in a cell with a drop down list It is set so that once the drop down is activated there is the option of selecting a blank from the bottom of the list so that if you activate the cell in error you don't have to delete any entry you are forced to make, you can select the blank and leave the cell blank. This works fine until the list gets quite long at which time there is no option of a blank.I don't know the number in the list where this starts but certainly a list over 100 has this problem. On shorter lists the blank is selectable. The selection is correct as when you check the named list it shows the correct range. I would welcome any views on solving this if it can be resolved.

I am setting up a questionnaire which needs to be dynamic. The questions in the questionnaire are pulled from a 'baseline sheet' using check boxes and an if statement, i.e. each question in the baseline sheet has a tickbox next to it, and if it is checked then the question is populated into the questionnaire sheet.

Im wondering if there anyway for the worksheet to populate the input cell with the next cell value from the baseline sheet if the first is blank? So if a box is not ticked, it will intelligently seek out the next box that has been ticked and retrieve that value. Essentially, my goal is to not have any blank spaces in the questionnaire which is what is happening now.

I have what I thought was going to be a simple function to create and, after a week of getting more error messages than I've had in a year, I'm ready to throw in the towel. Situation: There are two worksheets in the same workbook [Excel 2003]. One is for "Posting" details about technicians and their work orders. The other is a "Report" that summarizes the number of workorders open, closed, etc.

In the "Posting" sheet, I have created dynamic name ranges for two columns: Technician (4-digit text field) and InDate (date field that, if blank, means that the technician has not closed this work order. My ranges are set up like this:

So all I need to do is to total all the blank InDates for each Technician by employee number. I've tried COUNT to SUMPRODUCT. A co-worker got it to work with using...=SUMPRODUCT((ISBLANK(Posting!$D$2:$D$65307))*(Posting!$B$2:$B$65307=4288)) His solution was to list almost every available cell in each column. I just can't help but think that the dynamic name range should be able to work but I can't get it right. I think I'll choke if I get one more "N/A" or "VALUE! error.

I am running a formatting excel, and I will also need to select from cell P30 till last row, then sort alphabetically by moving the other rows data too.

However, I want to ignore the "" cells and the truly blank cells... However, I think all of them will have "" since I have this formula in all of the ones I'm putting in the range:

[Code]....

How do I go about getting these results into a named range so I can use it on validation since validation only seems to ignore truly blank cells and not the "" ones.

But I dont want it to count the cells if the entire row, within that cell, i.e. C6:AD6, is blank.

It should only count the blank cells within a row if there has been some data entered on that row..provided it has been entered within the specified range.

If Cell "B55" Cell is selected and I want to Select all the above rows to select till Row 1. Selected Row mught change Say B66 or B82 (Dynamic)

Whatever may be the Cell Selected, The result should be The above rows should get seleted. So that I want to delete the rows easily

HTML Code: ws.Range("B55").Select Range(ActiveCell, Activecell.Offset(-55,15)).Select 'This cannot work if the selected Cell is 65, So this should be Dynamic till above Range 1)

I can't modify my formula to leave blank cells blank when dragging it down, Also, I've got two formulas that i need to combine. Please view the comments I've put in cells E4, F2,F3,H2 and I2 to understand clearly what am seeking. See the attached worksheet.

How can I FILTER a range and display the unique items, one below the other, WITHOUT blank cells - with only a FORMULA. What I came up with is shown in the attached WB. I would like to present the countries like in C11:C15.

Dim MyData As Range Dim MyResult As Range Set MyData = Range("E1:E1000000") Set MyData2 = Range("F1:F1000000") Set MyResult = Range("J4") MyResult.Select Selection.Formula = "=COUNTIFS(" & MyData.Address & ",""=Kim""," & MyData2.Address & ",""=done"" )"

Is there any way I can change the code so that it automatically finds the last cell as Im using Range("E1:E1000000") and Range("F1:F1000000") because there will not be more than 1000000 entries.

I have a dynamic range formula that refers to a list that I've set up in row 65 of my sheet. Each time I go to the cell the has the data validation referred to in this range, the drop down list shows the list from the last entry and with more spaces than needed. =OFFSET('GROCERIES AMEX'!$E$65,0,0,COUNTA('GROCERIES AMEX'!$E:$E)-15,1)

The " -15" is the number that varies all the time. Is there any way to remedy this so the formula behaves as if the list was located in Row 1?

I want the dynamic sum to change to given two criterias that is

1 row in index formula needs to lookup codes in a2:a5(match function do no good cause i got multiple values) 2 column in index formula refers days in b1:d1

I am working with a dynamic range on sheet name "DataPrep", the named range is "TGSDataSourceRange". I need a formula that will look from row 2 down to the last row for columns "A-H".

The purpose is to identify the active range. I think the function is "Counta", but I can't get it right.

I got a range of data on sheet2, size changes everyday (dynamic) And in sheet1. I got a range of data and the size changes everyday as well. I need to copy the range in sheet2 to sheet1. The position would be at the cell after the last data in sheet1. e.g.

sheet1 got 105 data I need to paste data of sheet2 start of row106 in sheet1

I am using the CountIf function (in column B) to count the number of events called "EVENT1" from columns C (Time) and D (Events), but the range needs to include all cells which, at the current B row, have the same value as in row A. I want to use a dynamic range so that I can account for the repeats.

The table above will vary in row numbers every month so I would like to use dynamic range. I will be calculating total downtimes for each configuration item every month and would like those totals reflected on a separate Excel sheet. .

I use the function OFFSET for names in order to be able to add new rows below the table without the need of changing the range of the name.

However, there are error produced if I work it this method. I am not sure whether it is due to the formula but maybe because of the data or format validation ? Generally, in my cells I include

if(CellRef="";"";formula)

in order to copy the formula down. Pls also look at the defined names ....

I am trying to insert a formula into the cells in a column dynamic range.

I never know how long the column will be from instance to instance.

I have been trying to use the following code,

Sub insertf() ' ' insertf Macro ' Macro recorded 10/11/2007 by bbactadmin '

' Do Until myrange.Value = "" ActiveCell.Range("f10").Select ActiveCell.Offset(1, 0).Range("f1").Select Range.Formula = _ "=VLOOKUP(LEFT(E11,3),fam,2,FALSE)" ActiveCell.Offset(1, 0).Range("f1").Select Loop End Sub

I am trying to insert the lookup in all of the cells in the column within the dynamic range.

I have a row of dates going across in row 2, and random values going across in row 3 from D3 onwards. I want to return the average of values in row 3 until the third last non-blank cell in row 2 and do a similar thing for maximum row but just for the last 30 cells from the right (so latest 30 days). I have attached screenshot of part of spreadsheet for better illustration.

Capture.PNG

In my macro I can come up with a range for both, as below. Both lines of macro below select the correct range I am looking for.

[Code] .....

However when I try to apply them into an average/maximum function they returned an error 1004, Application defined or object define error:

[Code] .....

When I put it as following it returned me the value of Cells (3, 4) (Cell D3) instead of the average: