在此文中
With the Temporary Row Filter of Banana Accounting Plus, you can display only the rows that match a keyword (or other search criteria), quickly finding the desired transactions.
The big advantage is the direct editing of data and significant time saving , without altering the permanent order of the table. Once the Filter is removed, the rows return to their original order.
The Temporary Row Filter function is only available in the Advanced plan of Banana Accounting Plus.
The most common uses of the Temporary Row Filter are the following:
Note: the Temporary Row Filter is different from the Sort Rows command (from the Data menu), which permanently changes the order of the rows.
Find rows with a keyword
Enter any text (or amount). The Temporary Row Filter immediately displays all rows that contain it.
The text highlighted in green is for explanatory purposes only; it does not appear in the software.
After making the necessary checks and edits, you can simply remove the Filter (delete the text or click the X icon next to the Filter field) and the transactions return to their previous order.
The editable account card
One of the most common uses of the Filter in Banana Accounting Plus is the ability to obtain an editable account (or category) card. In practice, you can view transactions related to a specific account and make the necessary changes directly.
How to obtain an editable account card
In the Temporary Filter field, enter the following combination:
!=account code
For example, if you enter !=1020 you will obtain an editable account card for account 1020. The != sequence tells the Filter to display all rows where a cell contains the code 1020.
Edit and return to full view
Within the editable account card you can perform checks and correct the transactions.
Once the verifications are complete, you can remove the Filter:
- by deleting the entered text, or
- by clicking the X icon next to the Filter field.
This way, all transactions will be shown again in their original order.
Highlight colored rows
Rows are often colored when you want to return to them later, for double-checking, for review by someone else, or because they are transactions to be completed. The ability to highlight them all at once avoids scrolling through the Transactions table and gives a clear overview. The time savings and work convenience are evident.
How to highlight colored rows
In the Temporary Filter field, enter the following combination:
!_col! or !_color!
The program displays all colored rows.
It is also possible to display only rows of a certain color. The program assigns each color a style number (from number 2 onward) based on when the color was first applied. You can therefore use, for example:
- !_co!2 to see rows with style color 2 (in the example, light blue)
- !_co!2|3 to see rows with style color 2 and 3 (in the example, light blue and green rows).
After making the necessary checks and edits, you can simply remove the Filter (delete the text or click the X icon next to the Filter field) and the transactions return to their previous order.
Basic syntax for the Filter
The Filter allows you to find rows simply by entering a text as a search criterion. When you enter the text to search, the program filters all rows that contain the specified text, separated by spaces.
Here are some examples of Filters:
- invoice mario
Shows rows that contain the words "mario" and "invoice" in any position. - mar inv
Depending on the number of rows, the same result can be achieved by entering abbreviated text. - "invoice mario"
Search for text including spaces: if the text is enclosed in quotes, the program considers it as a single word. - "!~Mario"
Normally, the search is case-insensitive.
You can make the search case-sensitive by inserting a special character.
Spaces are always considered as an AND command separator.
- A space means the conditions are additive.
- Never include spaces in the search unless they are within quotes, for example: "invoice mario".
- Examples:
- invoice mario
The program includes rows that contain both "mario" and "invoice".- "invoice mario"
The program considers the quoted text as a single word, including the space. Therefore, it searches all rows that contain exactly "invoice mario" (in that order).
Special characters
You can use almost any character in the search.
Only the exclamation mark "!" and the vertical bar "|" at the beginning of a text sequence have special meaning.
- "|" means OR
At least one of the elements preceded by "|" must be present in the row.
In the following case, the search will display rows that include "mario" and "invoice" or "fee".
mario |invoice |fee
The vertical bar is the Alt-124 character. If you can't find it on your keyboard, search on Google- "Windows/mac keyboard layout Italy/Switzerland/US" and look in the image section.
- Command specifier "!".
Any text preceded by the exclamation mark is considered a command and has a specific meaning.
For example, to exclude a text, use the command sequence "!-".
mario !-invoice
Advanced Filter syntax
The advanced search syntax is experimental and may be subject to changes and improvements.
The character "!" at the beginning of a text indicates a special search command.
- !
When placed before or after a space, it starts a command sequence. - !!
Is treated as a simple "!" and not as a command sequence. - !-
The minus sign "-" is used to exclude content and can be combined with any other operator.
!-mario !-1000 !-=1000 !-^payment !-~10 - !~
The tilde "~" must be placed immediately after "!" or "!-".
With "~", the search becomes case-sensitive.
!~mario
!-~mario
Command characters
These are the characters that immediately follow the start of the command "!", "!-", "!~", or "!-~".
They can also be used with "-" to exclude and "~" to make the search case-sensitive.
- !=
Finds exactly the specified text in the cell.
!=1000
Can be used with multiple values separated by the "|" character.
!=1000|2000|30000
Empty cell.
Starting from version 10.1.16 selects cells with empty values.
!= - !+
Contains the specified text. Equivalent to a normal search but allows combinations with other characters.
!-+mario excludes rows that contain "mario".
!~+mario excludes rows with "mario" respecting case sensitivity. - !<>
Different from the provided text.
!<>1000 - !.
Wildcard characters (*, ?) for search with special characters.
!.100*
!.100*|2?0* - !^
Starts with the specified text.
^mar
^mar|hom - !$
Ends with the specified text.
!$rio - !_
Search by whole word.
!_100
!_100|200 - !:
Regular expression.
!:\bmario\b
Greater than, Less than, and Ranges
Characters used to compare numeric values or dates.
- Date format: yyyy-mm-dd
2024-12-31 - Amount with "." as decimal separator and no thousands separator.
1999.99
Comparison commands:
- !> Greater than.
!>100 - !>= Greater than or equal.
!>=100 - !< Less than.
!<100 - !<= Less than or equal.
!<=100 - !<> Not equal to.
- !>< Exclusive range.
!><99.99|200 - !>=< Inclusive range.
!>=<100|199.99
Column specification
Allows you to specify the column in which to perform the search.
- !description!
Search in the "description" column.
!description!mario
!description!=
!des*!mario
!des*;doc!mario
!description:xml!mario
!debit*!=1000
Show rows with formatting
- !_fo! Show rows with specific formatting.
- !_fo!b Show rows in bold.
- !_fo!i Show rows in italic.
Show rows with errors
- !_er! Show rows with errors or warnings.
- !_er!e Show rows with errors.
- !_er!w Show rows with warnings.
Filter combinations
You can enter multiple search terms. For example, you can search for rows from account 1020 that include the word Rent or Electricity:

The text highlighted in green is for explanatory purposes only; it does not appear in the software.
Other examples of filter combinations:
- 2022 !des*!mario !debit*!=1000
Shows rows with "2022", "mario" in columns "des" and exact "1000" in the "debit" columns. - |!PeriodTotal_?_C:xml!<> |!PeriodEnd_?_C:xml!<>
Shows rows with an amount in columns whose XML name starts with PeriodTotal_ and ends with _C
or whose XML name starts with PeriodEnd_ and ends with _C
Reasoning behind the Filter syntax
The advanced search syntax may seem unusual, but we aim for a syntax that:
- Does not interfere with natural searching, allowing users to search intuitively by combining words as they are used to in smartphone apps.
- Is not tied to a specific language, using only symbols.
- Supports all possible searches, so it can be used to express user filters similar to Excel.
- Opens the possibility to include specific Banana commands, such as color, errors, etc.
We evaluated several other search syntaxes, but they all use common characters like the minus sign "-", or the "+" or others like "\", "(", "*", "?", which are frequently used in accounting.
So we decided to create a spe
Banana Accounting Plus GPT for using the Filter
This Banana Accounting GPT Assistant was created using ChatGPT and is designed to generate advanced search syntax for filtering rows in the Transactions table.
The GPT command generator for advanced search syntax (Filter) is experimental and may be subject to changes and improvements.
Requirements
To use this GPT, you need:
- Download and install the latest version of Banana Accounting Plus
- Have a ChatGPT account.
- To use this GPT, you need a ChatGPT Plus subscription. Without it, you can try the service for free for up to ten requests. After that, you must upgrade to ChatGPT Plus or wait a few hours before making more requests.
How it works
- Open the Banana Accounting Plus GPT from this link:
- In+the Message field below, enter a sentence that describes what you want to search for within the Transactions table using the Filter. In general, the more specific your request, the better the results.
- The GPT will process your request and return the corresponding result.
Based on the input given to the GPT, a text string will be generated containing the necessary command to filter the rows in the Transactions table. - Copy the generated text string.
- Paste the copied string into the Filter of the Transactions table in Banana Accounting Plus.
Examples of messages to enter in the GPT
Below are examples of messages to enter in the GPT chat, along with the corresponding generated results:
- "Find all transactions from the third quarter of 2024"
- Result: "!date:xml!>=2024-07-01 !date:xml!<=2024-09-30"
- "Search for rows with an amount of 450.00"
- Result: "!amount:xml!=450.00"
- "Search for rows with an amount greater than 200"
- Result: "!amount:xml!>200"
- "Search for rows with the value 3001 in the Credit Account column"
- Result: "!accountcredit:xml!=3001"
- "Give me the rows with value 1020 in the Credit Account column and an amount between 1500 and 4000"
- Result: "!accountcredit:xml!=1020 !amount:xml!>=<1500|4000"