Skip to content

Using the Rose Excel Add-in for Mac

This an overview of the functions you can use to view data on Rose through Excel. If you haven't already, please install the Rose Excel Add-in for Mac first.

There are six basic functions in Rose that communicate between Rose and Excel to store data so that users or companies can always come back to it and be able to specifically access who, where, what, when, and how the data has been changed.

The six functions can be divided into two groups: push and pull; each group contains three functions.

From Rose to Excel:

  • pull
  • pull_map
  • pull_logic

From Excel to Rose:

  • push
  • push_map
  • push_logic


This can be used for both logic and timeseries.

In Excel, type in the name of the dataset you would like to view; we will show a demo here using, which is the long rates in the United States for the last 10 years.

In the cell next to your dataset's name, type =pull(reference to rosecode cell), and hit enter.

pull example

As you can see, in the example above, first the metadata appears, then the range of dates, then the data contained in that timeseries as a table of two columns: date and value.

To pull several timeseries at once, write all the names in different Excel cells and pull the range selection of the cells. Here we demo with usa.gdp, chn.gdp.usd. =pull(reference to range of rosecodes)

pull multiple example


The push function can only take in one parameter, which is the rosecode you want to push. In the exact same format as pull, call the function in the cell next the cell containing the rosecode(s).

push example

push with metadata

To push a timeseries with metadata, follow the same format as the previous step but this time add the metadata table above your rosecode name.

push with metas example

Now that timeseries will appear in the search results, on the left:

search results aapl

pull_map & push_map

Both of these functions only work on datasets of type map.


This function can only take one parameter: the name of the map you want to pull. As with pull for timeseries, type in the pull_map command in the cell below the cell containing the map's name.

pull map example


This function can take three parameters: the map name, the actual map, and the metadata. The metadata is an optional parameter; you can push a map just using its name and its contents, as below:

push map

If you choose to add metadata for your map, you can add the range of the metadata as the third parameter.

pull_logic & push_logic

These functions help efficiently view data transformed (e.g. on a monthly scale, from monthly to monthly scale) so that it can easily be accessible.

These functions work only on data of type logic. They can both be used on several rosecodes.


The only parameters needed to pull logic from rose are the rosecodes. As usual, first type in the names of the data you would like to pull, and below these, call on pull_logic. You can pull multiple logics at the same time.

This function will show you the name of the data contained in the next node of the tree. Here is an example:

pull logic


To push logic, type in the name you have chosen (not the same as the one you previously pulled). Call on pull_logic on the cell below this name, select the new name and the old name as parameters. This will create a pointer and allow you to rename your data as you please.

The function push_logic creates a connection between two datasets; the more one uses it the more connections, and eventually it builds a tree. The tree is rooted in ‘logic’ because all the nodes are essentially based on logic. Other examples include updating yield curve, or renaming a dataset.

push logic

The logic itself contains no data, it only points to where the data is. If there is more data input into existing nodes, it updates the existing data so that graphs and any analysis done on those graphs can be updated as well.

The logic function allows you to take transformations of data, assign this a new value or name, and then push or pull it onto Rose database, which helps create clean and efficient data that is easily traceable.