In LibreOffice, how to do a numbered and subnumbered list - indentation

This is ridicilous that LibreOffice wouldn't have this, I need simply this:
a
1.1. a - first subsection
1.2. a - second s.
something else
2.1. asdv
2.2.abgt
2.3.arv
2.4.ar
How do I do that automatically? As in - that libre office indents it automatically, and numerates it accordingly?

You might need to switch on the automatic, see Creating Numbered or Bulleted Lists as You Type.
Additionally you can change the paragraph's formatting with Bullets and Numbering.

Related

How to automatically feed a cell value from a range of values, based on its matching condition with other cell value

I'm making a time-spending tracker based on the work I do every hour of the day.
Now, suppose I have 28 types of work listed in my tracker (which I also have to increase from time to time), and I have about 8 significance values that I have decided to relate to these 28 types of work, predefined.
I want that, as soon as I enter a type of work in cell 1 - I want the adjacent cell 2 to get automatically populated with a significance value (from a range of 8 values) that is pre-definitely set by me.
Every time I input a new or old occurrence of a type of work, the adjacent cell should automatically get matched with its relevant significance value & automatically get populated in real-time.
I know how to do it using IF, IFS, and IF_OR conditions, but I feel that based on the ever-expanding types of work & significance values, the above formulas will be very big, complicated, and repetitive in the future. I feel there's a more efficient way to achieve it. Also, I don't want it to be selected from a drop-down list.
Guys, please help me out with the most efficient way to handle this. TUIA :)
Also, I've added a snapshot and a sample sheet describing the problem.
Sample sheet
XLOOKUP() may work. Try-
=XLOOKUP(D2,A2:A,B2:B)
Or FILTER() function like-
=FILTER(B2:B,A2:A=D2)
You can use this formula for a whole column:
=INDEX(IFERROR(VLOOKUP(C14:C,A2:B9,2,0)))
Adapt the ranges to your actual tables in order to include in the second argument all the potential values and their significances
This is the formula, that worked for me (for anybody's reference):
I created another reference sheet, stating the types of work & their significance. From that sheet, I'm using either vlookup, filter, xlookup.Using gforms for inputting my data.
=ARRAYFORMULA(IFS(ROW(D:D)=1,"Significance",A:A="","",TRUE,VLOOKUP(D:D,Reference!$A:$B,2,0)))

Bring all values in filter except the ones in the condition

I have a list of items which I want to filter.
I created a filter that includes a regexmatch with multiple criteria e.g. mo|oa (so it will bring any item that has either mo (like mouse) or oa (goat) in the string).
=filter(A2:A10,regexmatch(A2:A10,C1))
What I want is to bring the remainder of the list. i.e. all the items that don't fall in the criteria I mentioned (do not include mo or oa).
I have 2 questions:
Is it possible to get the filter to bring the remainder of the items? If so, how?
While trying to figure it out, I used <>&C1 (the cell with the condition mo|oa).
=filter(A2:A10,regexmatch(A2:A10,"<>"&C1))
Surprisingly, it just disregarded the first part mo and showed only result that contain oa. I'm curious for the reason.
Here's a demo file:
https://docs.google.com/spreadsheets/d/1gvTN2p2W7Agw9tIfo4ZcsBlujl0Iq0Ft8h9aYuSH4NQ/edit#gid=0
Thanks!
You can use NOT for REGEXMATCH:
=filter(A2:A10,NOT(regexmatch(A2:A10,C1)))

How can I resolve INDEX MATCH errors caused by discrepancies in the spelling of names across multiple data sources?

I've set up a Google Sheets workbook that synthesizes data from a few different sources via manual input, IMPORTHTML and IMPORTRANGE. Once the data is populated, I'm using INDEX MATCH to filter and compare the information and to RANK each data set.
Since I have multiple data inputs, I'm running into a persistent issue of names not being written exactly the same between sources, even though they're the same person. First names are the primary culprit (i.e. Mary Lou vs Marylou vs Mary-Lou vs Mary Louise) but some last names with special symbols (umlauts, accents, tildes) are also causing errors. When Sheets can't recognize a match, the INDEX MATCH and RANK functions both break down.
I'm wondering how to better unify the data automatically so my Sheet understands that each occurrence is actually the same person (or "value").
Since you can't edit the results of an IMPORTHTML directly, I've set up "helper columns" and used functions like TRIM and SPLIT to try and fix instances as I go, but it seems like there must be a simpler path.
It feels like IFS could work but I can't figure how to integrate it. Also thinking this may require a script, which I'm just beginning to study.
Here's a simplified example of what I'm trying to achieve and the corresponding errors: Sample Spreadsheet
The first tab is attempting to pull and RANK data from tabs 2 and 3. Sample formulas from the Summary tab, row 3 (Amelia Rose):
Cell B3: =INDEX('Q1 Sales'!B:B, MATCH(A3,'Q1 Sales'!A:A,0))
Cell C3: =RANK(B3,$B$2:B,1)
Cell D3: =INDEX('Q2 Sales'!B:B, MATCH(A3,'Q2 Sales'!A:A,0))
Cell E3: =RANK(D3,$D$2:D,1)
I'd be grateful for any insight on how to best index 'Q2Sales'!B3 as the correct value for 'Summary'!D3. Thanks in advance - the thoughtful answers on Stack Overflow have gotten me this far!
to counter every possible scenario do it like this:
=ARRAYFORMULA(IFERROR(VLOOKUP(LOWER(REGEXREPLACE(A2:A, "-|\s", )),
{REGEXEXTRACT(LOWER(REGEXREPLACE('Q2 Sales'!A2:A, "-|\s", )),
TEXTJOIN("|", 1, LOWER(REGEXREPLACE(A2:A, "-|\s", )))), 'Q2 Sales'!B2:B}, 2, 0)))

EXCEL How to iterate and add iterator to double entries

I have an Excel list which does contain a certain number of double entries.
eg.
enter image description here
What I want to do is to search each doublette and add an iterator to it. So that the result looks something like this:
enter image description here
I've absolutly no idea where to start with this.
Any ideas!?
Put this in B2:
=IF(A2=A1,A2&"."&COUNTIF($A$1:A2,A2)-1,A2)
And drag down. Let me know if it helps...
Thanks a lot to Black.Jack! You were right all along!
My own stupidity was in my way. ;) I am running a German version of Libre Office, which brings two subtle, but important changes. First conditions etc. must be named German!!! (as a colleague pointed out ;))
Secondly the parameters must be seperated by ; and not by , in Libreoffice...
So the working formula for a German Libre Office version is this one:
=WENN(A2=A1;A1&"."&ZĂ„HLENWENN($A$1:A2;A2)-1;A2)
again: Thank you very much Black.Jack. Wouldn't have figured it out without your help!!!

GTK TextView - creating a static display format

I am trying to simulate a piece of hardware, and this hardware has a static ribbon display.
to do this, I'd like to use a TextView. My display has 10 rows, with 25 columns. So I figured that a TextView should be easy enough.
basically, I would like to be able to say "insert/replace string S at row X, starting at column Y". i may need to only update a specific row, or even a single column within a row.
I have not been successful at getting this to work though. the best I have been able to do is to fill the TextView with 10 lines of 25 spaces when i create it, and then use the get_iter_at_line_offset to get the iterator of a line, and then push the new text onto that line.
but this will start appending text to the line, rather than replacing the existing one.
I need both row and column control (i.e. need to be able to set text at a specific (X,Y) coordinate).
I'm assuming this is somehow possible using marks.
Can anyone give me a quick example of how i can do this? Unfortunately, there isn't a whole lot of documentation on this sort of thing.
You'll have to get an iter at a specific line, row X, and then use the iterator's forward_chars() method to move forward Y characters. Then delete the number of characters you are replacing, and finally insert the text you want to insert. You can do it all with iterators, I think - iterators are invalidated when you change the buffer, but when you delete text, one of your iterators is revalidated to point to the place where the text was.
If you're targetting GTK+ 3.x, you should really look into using Cairo. Since you don't actually need a text buffer, it seems like overkill and a bit of a mis-alignment to use the GtkTextView.
Look at the very basic introduction on how to draw with Cairo in GTK+. Then look at the text-rendering Cairo APIs, that should be enough to get you started.