Excel dynamic offset table with results criteria - arrays

I am looking for a way to make a dynamically updated table in excel using a linked data source with filtered results.
What I currently have is a form control scrollbar that is linked to a random cell. That random cell drives an offset function (below) to pull results from the linked data table in another worksheet. All of this works wonderful but I am looking to strip out rows that meet a certain criteria, which I already have calculating to a true/false result in the table itself to make it simple. What I cannot figure out is how to modify my current offset lookup to filter out the results that are false in my calculated column.
=OFFSET(Sheet1!$C2,$I$99,0,1,1)
Sheet1 is where the linked data table is located.
$I$99 is where the cell link for my scrollbar is.
As the scrollbar moves the value in the cell link changes thus updating the offset lookup down the table. I should also state there are 14 rows in my table as well. I will need to filter out the false results but also in turn omit the blank rows as there are over 400 rows in the source table and only about 30 true results in the calculated column.
I unfortunately cannot provide the workbook I am using as it has company sensitive data in it but if it is absolutely needed I can create a filler document with made up data to provide something to work with.
I have looked at advanced filters already and they will not do the trick as they are not dynamic in nature. I would like a non VBA solution as this is a dashboard project that I will be distributing to my team here at work and macros are disabled on our network for security reasons every time an excel is opened so it will become a nuisance.
Let me know if you all need anything else from me.

Figured it out with a little help from a friend, coded each cell to function as an array part and it works like a charm.
{=IFERROR(INDEX(Dashboard_Data[Summary],SMALL(IF(LEFT(Dashboard_Data[Stale],1)="T",IF(Dashboard_Data[Visible],ROW(Dashboard_Data[Visible])-1,""),""),ROW(A1)+$K$18)),"")}

Related

Making manually-added cells automatically move along with imported ranges in Google Sheets?

For data analysis purposes, I need to manually add information in the columns right beside an imported range. It generally doesn't cause any issues and works well. However, whenever the imported data shifts rows (i.e. a new row was added in the middle of the original sheet), the manually-added info no longer matches the data -it either ends up in one row above or below. Basically, it's not in-sync with the needed data.
Is there a way to kind of "fixate" the manually-added information to the same row as the imported data? So that if the order changes in the original sheet, it won't mess up the new one.
I've been using the code shared by #Mogsdad here. However, it is only syncing the info on the "key column" and not the rest of the data in the columns after it.
Attaching screenshots for reference:
This is how it usually looks (the third column is the "key")2
And this is what happens when the rows in the imported range change:3
The code seems to be working, just not for all the columns.

Can I Fix the a lookup field in Access database based upon a calculation or another field?

I am trying to create a database with field descriptions for a very large excel file that I have at work. I have created 3 tables- List of sheets, list of variables(including a lookup field pointing at the List of sheets table, so that I can select the sheet to which the variable belongs), and a third table which specify some validation rule.
In this third table, I want to see two lookup fields, one specifying the sheet in which the rule applies(say, 'Select Sheet'), and another specifying the variable(say, 'Select Variable'). I can point to the two different tables, but I want to do something a bit more nuanced than that. When I give a particular sheet name to 'Select Sheet', I want the lookup field for the variable('Select Variable') to show me only those variables which exists in that sheet.
I know that there probably will be solutions using forms, but this database is going to be very detailed and there are things to do afterwards, so I do not want to get into queries and forms before all data has been recorded in tables in a neat manner.
I have a good grasp of VBA in the context of excel and I am given to understand that I can extend the applications of Access using VBA. I am ready to do that, but I want to see before that whether this is some functionality of access that I am missing. Had anyone done anything similar before, and if so, did it take VBA to do it?

SSRS Dynamic Reports for Key Value Pairs

I need to use SSRS to create many different reports, and I have been trying to find the best way for me to easily create them as need, and for users to navigate them and use them for their needs.
To give you and idea of the two sets of data I am dealing with:
EDI file from our customer
Raw data output from hardware configuration
Now the EDI data is fairly consistent, so these columns are static.
The hardware data is usually a massive list of different configuration. I receive them in different flat files formats and using SSIS or other tools I get the data into Key Value Pairs. Now in a report, I use matrix to keep EDI columns static, it matches with the hardware on serial number, and Hardware data pivots.
So the report does not break, and so I don't give the user too much information, it matches up on another table where I specify what keys I want to be columns.
Here is a small example of one of my reports:
The green columns are EDI, while the orange is the hardware.
My question is, is there a better way for me to be doing this? Some reports can get complicated like needing total for certain hardware (counting hardrive space, ram total etc.) which is difficult to do dynamically.
I have tried creating in reports in this fashion, with these parameters:
This way I can create the Key columns per project and user can select what report they want to run. The default is All Data.
Is there a better way for me to create these reports? SSRS really doesn't seem to play well with dynamic pivots.
Is there a better tool that will handle these reports dynamically, or let users pick and choose what they want to see in a report?
I can't visualise your data but if I understand correctly, you could have a dropdown list showing all the unique values that are in the column you are using in the column group. Set this to be multi-value and then simply have the WHERE clause read something like
SELECT * FROM myTable WHERE myColumnGroupField IN (#myColumnChoiceParameter)
This way the user could select whichever columns they would like.
You could extend this by adding another parameter that has some preset groups of columns (I think you might have one of these already if I understand correctly) that would set the default value of the main #myColumnChoiceParameter parameter.
If you want something more flexible then you might want to look at Power BI but depending on how you intend to deploy that might not be a simple option.
You cannot dynamically create columns in SSRS but you can control the visibility of the columns.
1) Create a list in table that contains the names of all the columns that yo want to toggle and include a column titled 'All'.
2) Create a parameter that is based on this table and make sure multi-select is turned on.
3) Right click on every column that you want to toggle, select visibility and then create a condition that checks if the user either selected All or selected the column from the parameter list.
4) Train users that by selecting and deselecting from the dropdown they control whats visible.

How to build a column using data from another table with contraints

I have a very-badly done Excel Database that I have to repair. To do that, I need to get specific data from a table and put it in another table, if certain cells in each rows equals cells from rows in the first table.
Here is a screenshot to explain what I need.
I tried with advanced filters but I can't get it to work.
I got an answer.
The trick here is to use a vertical search (=VLOOKUP(cell; tableToSearch; cellToSearchLocation) and IF conditionning.
Sadly, my example isn't valid because the cell we search (in "hey" column) is a in a column before the "ho" and "hi" columns.
If anyone has any questions about this solution, feel free to ask.

Hide row of data in matrix by field value

I need to know how to code this. I am working with program numbers and there is one that I do not want to be displayed. I am trying:
=Fields!NoProg.Value="08007"
But then I do not know how to tell it:
(pseudocode)
if NoProg = 08007, then do not display.
As I see it, you have two options:
Filter out the row you don't want in your resulting dataset at the database side. This has the advantage of using indexes if you have them set up. This involves putting a WHERE clause into your query. If you cannot change the query or need the row to be in the resulting dataset but simply hidden, choose this option.
SELECT ...
FROM ...
WHERE NoProg <> '08007'
Hide the row in the report, as you are already doing. This has the advantage of keeping the data in the resulting dataset but hiding it from that section of the report. If you are performing aggregation and need to include the row elsewhere but just hide the detail from view, choose this option. Keep in mind, this will not use any database indexes, so it requires one comparison for every row in the resulting dataset.
<Hidden>=Fields!NoProg.Value="08007"</Hidden>

Resources