2 way modification with an array - google-sheets

I have a Google sheet with many tabs representing a location with an inventory. In every tabs, there's a column with a chez box to state if that item as to be moved to a new building. I made an array in another tab (filter tab) that filter all the items that the box is checked. Because it's an array, I can't modify the item in the filter tab, have to go on the original tab where it comes from to modify it. Is there any way I can modify in the filter tab and have that modification change also in the original tab?
Here the array function I use in the filter tab.
=QUERY({'SALLE 1'!A:H;'SALLE 2'!A:H;'SALLE 3'!A:H;'SALLE 4'!A:H;'SALLE 5'!A:H;'SALLE 6'!A:H;'SALLE 7'!A:H;'SALLE 8'!A:H;'SALLE 9'!A:H;'SALLE 10'!A:H};"select Col1,Col2,Col3,Col4,Col5,Col6,Col7,Col8 where (Col5='X' or Col5='x')")

no, that is not possible to do in Google Sheets. you can't reference the reference nor create two-directional references and create paradoxes

Related

Formula for spreadsheet with one main drop-down menu, that then shows relevant information based on selection of menu?

I am very new to Google Sheets. I have a 'Contacts Masterlist', that will continue to grow. It is currently at 2500+ contacts. It has been requested that we be able to filter what shows on the spreadsheet based on column 'A' which is the category the contact belongs to. We want to be able to edit directly into this as well. (Example: I want to add a new contact to the 'Tourism' category, I click 'Tourism' from the drop down menu, all the tourism contacts load, then I can insert row and add a new contact.
Is it possible to have the other categories just hide? I know of the regular filter, however, that has been requested to not be used. Right now, I have all my data to the left, and the drop down menu to the right. I hide the rows containing the main data to just show drop down menu, but this is not ideal for adding new contacts. Can this all be done within one sheet, without having to duplicate data?
Main masterlist
The menu created from the main list

Is cell value on other tabs?

In sheets I have a workbook with several tabs. I need to be able to determine if the value in column A is found on other tabs to hopefully eliminate duplicates.
How can I put a formula on each tab that will point out if the value in column A is found on other tabs so we can remove duplicates? The formula would need to have the name of tab to enable us to go through and cleanup?
I know in Excel we could do a vlookup for each individual tab but it seems like there should be an easier way of not having to type the vlookup for each tab and return the name of the tab.

How to dynamically change a function based on tab and cell in Google Sheets for drops downs

So I can create the dynamic drops downs using IF and Query in Google Sheets and this works great on one sheet. However, I need this to work over multiple sheets. Basically I need to be able to have the drop down menu in multiple cells on multiple tabs. This is the function I use to create the drop down menus:
=IF(Template!H1="6",FILTER(Sheet4!A:A,Sheet4!B:B=Template!G7),Query(Sheet4!A2:C500,"select B where A contains '"&Template!H1&"'"))
Template is one tab where people will find the drop down menus (from data validation pointing to the Sheet4 tab that holds this formula)
The problem is that the variables with Template in them are fixed to that one tab. I need to be able to have this drop down on multiple tabs.
Is there a way to call the tab you are on dynamically? If I have a Template2 tab I want it to be able to pull the lists from Sheet4 using the same type of filtering I am using for Template.

Delphi navigate through the TDBGrid using the TAB

In my DBGRID, i have a field that populated with default name of current configuration when i create new record.
When i set the dgtabs option to true, I can navigate through the grid using the TAB and SHIFT+TAB keys. I need to navigate without create new record or create new record with field populated by the current configuration name.
How can do that?
or create new record with field populated by the current configuration name.
You can do that simply by creating an OnNewRecord event handler for the dataset connected to the DBGrid and saving the configuration name to the relevant field in that.
Regarding how to avoid navigating the grid using Tab & Shift Tab opening the New Record row, a simple way, which may be acceptable (or not) to your situation is to set the DBGrid's Options.dgEditing to False. Then, the grid will not open the New Record row when Tab or Shift Tab is pressed or even if you press the Insert key in the DBGrid.
If that's not appropriate, you might take a look at my answer to this q
Focus cells in reverse order
which may give you a clue if you need it.

How to create a Hierarchical menu in iOS?

In my application, I have a menu that is defined as follows. Each item on the menu is a node that has the following data attributes:
MenuText : (the text that would appear for that item)
isView : Whether this item is a leaf level item or not
subMenus : if isView is false, then there are multiple menu items under this attribute.
Thus, it is a tree structure that can go till any depth. The items in the menu can change periodically and hence the implementation has to be kept flexible. This data is stored in a plist file and read into an NSArray in the code (already implemented).
I now need to create a slide out menu on the left that will be populated by this data hierarchy. I have created the menu pane and added swipe gestures to it, all of which work fine. The menu has to be a collapsible one where clicking on one menu item expands the subViews below it. If the item clicked on is a view, then a new view is loaded on the rest of the screen with appropriate data.
The problem I am facing is the logic to populate the menu (which is a UITableView) from the NSArray data. The following are the two approaches I came up with.
Create a UITableView with as many sections as there are items at the top level of the menu. Then iterate through the menu items recursively. For each menu item that is not a view (i.e. it has subMenus), create a new section with number of rows equal to the number of subMenus under it. When I come across a menu item that is a view and has no further subMenus, add it as a row to the subsection created for the menu one level above it.
Create a menu with one section and as many rows as the number of menu items at the top level. When a menu item is clicked, insert rows under it to represent its sub-menus. When another menu item on the same level is clicked, collapse the previously expanded menu by deleting the inserted rows. When a menu item with no sub menus is clicked, the rest of the screen is populated with data.
I have tried both the approaches and not been able to go beyond the initial steps. For the first method, I understand that I need to add a UITableView as a part of UITableViewCells, which is good, but I need to do that recursively. For the second approach, I need to know the indexPath of each item clicked which can go to many levels.
I would like some suggestions here about which approach I should take and some guidance over how to go about it. Also, if there is any better way to do this, kindly advice. Thanks.
In my opinion, using UINavigationController is the easiest way. You can push as many UITableViews as you want.
If it doesn't fit your design requirement, you can try expandable UITableViews. There are few open sources:
JKExpandTableView
SDNestedTable
iOS-Tree-Component
Thanks for the responses. I ended up doing this using the following control:
Accordion for iOS
It has served my purpose beautifully and I posted it here so that someone with the same requirement may find it.
Take a look at TLIndexPathTools. It has a "Tree" extension that can do this. Try running the Outline sample project. The main task in adapting the sample project would be to write a recursive function to convert your array of nodes into an array of TLIndexPathTreeItem objects. All of the code in the controller:willChangeNode: method is examples of lazy loading and it doesn't sound like you'd need any of that.

Resources