Alter 1 Long Horizontal Block into Vertical Block - excel

I want to be able to print a long list into 1 block in a column (Column G line 8 for example):
The given list:
1 bag of fish 2 bag of fish 3 bag of fish 4 bag of fish 5 bag of fish
In my excel block it will look as printed above in 1 long horizontal line (but it will be considered in Column G line 8).
How do I alter that block so that it can look like this:
1 bag of fish
2 bag of fish
3 bag of fish
4 bag of fish
5 bag of fish
but without extending to line 6, 7, 8 etc..
Any advise would be greatly appreciated!

I have figured out a solution! In the 'Home' selection on Microsoft Excel there is a widget called 'Wrap Text'.
Highlight the block you want 'wrapped' and it will do just that! Hope this helps others!

Related

Excel rotate radar chart

I have been trying to create a windrose that displays the occurence of multiple wind speeds and their respective wind direction. Using other very helpful posts on here I've gotten pretty close to what I want. There is just one thing I can't seem to fix.
As you can see in the figure below the graph starts at 0 degrees while I want the "North" wind direction to start at -11,25 (or +348,75) degrees.
Currently the radial axis labels are added using a pie chart while the rest of the data is plotted in a filled radar chart. It is easy to rotate the pie chart but I can't seem to find a similar function for rotating the radar chart. Any help would be much appreciated. The excel file is attached beneath the figure.
EDIT: Locked excel file against editing
Excel file
I haven't fully digested the netiquette of this website and not sure if it is a good idea to try giving you an answer 6+ months after you posted. Also hope that by this time you found an answer.
If not, this link should be of help:
https://superuser.com/questions/687036/how-to-make-a-pie-radar-chart
In the example the creator made one field for each degree and started the first series, which would be equivalent to your north at 0°. However nothing prevents you from starting at 348.
I have not tested but I also think that nothing prevents you from adding even more "resolution", e.g. half-degree steps.. or even more to your discretion.
EDIT: following L.Guthardt's feedback.
In order to provide you an answer I opted to simplify your table and chart. Mostly for convenience, but also because I struggle to get a full understanding of the original "architecture". Still, the solution should work at any level and is based on two key elements:
first you will have to double the number of rows from 16 to 32 (thus each quadrant being repeated two times, e.g. ... nne - nne - ne - ne...)
second, you have to start and finish with N as showcased here
Direction Cat6
N 6
NNE 4 4
NNE 6
NE 4 4
NE 6
ENE 4 4
ENE 6
E 4 4
E 6
ESE 4 4
ESE 6
SE 4 4
SE 6
SSE 4 4
SSE 6
S 4 4
S 6
SSW 4 4
SSW 6
SW 4 4
SW 6
WSW 4 4
WSW 6
W 4 4
W 6
WNW 4 4
WNW 6
NW 4 4
NW 6
NNW 4 4
NNW 6
N 4 4
which will generate
for the pie chart I used a separate range with alternate gaps in the labels
Direction Dummy
N 1
1
NNE 1
1
NE 1
1
ENE 1
1
E 1
1
ESE 1
1
SE 1
1
SSE 1
1
S 1
1
SSW 1
1
SW 1
1
WSW 1
1
W 1
1
WNW 1
1
NW 1
1
NNW 1
1
Rotating radar charts in Excel can be achieved by building a separate table for plotting the chart. It would have three columns:
Column A: New categories
Column B: Original categories (calculated from A)
Column C: Original data using VLOOKUP() on B
The chart will be plotted using columns B and C. Column B category numbers are offset by the desired number of categories.
If the chart needs to be rotated by other than multiples of a category degree (e.g., 30 degrees for 12 categories), you would need to add rows in between (corresponding to the amount of rotation in relation to the category degree). For example, to rotate a 12-category radar chart by multiples of 15 degrees, one extra row is needed in-between each original category row (to create 24 new categories). In this case, you would need to calculate the intermediate values by linearly interpolating between actual data points.
The trick is that blank category values are not displayed on the chart and the values for these categories blend in smoothly with the real data (because they are interpolated).
I will post an example if the above is not clear enough.
P.S. I cannot look at your new Excel file (in Answers) because it exceeds 5 MB (see screenshot 1).
So I did keep working on this problem and the best solution I've come up with (while using Microsoft Excel) looks as follows:
Currently, the number of sectors in the plot is fixed at 16. If I want to make this number variable, the table required for the plot data requires a very large amount of lookup functions which make the spreadsheet too slow to work with.
I've uploaded the new Excel file here to take a look at:
Excel file

How to sort(move) rows with columns by number included in items title

I have bunch of rows with random ordered words. Some of them have numbers in the end. I need to order them by moving missing items into gaps, for example:
Column A Column B => Column A Column B
Cat 1 Nice kitty => Cat 1 Nice kitty
Cat 2 Normal kitty => Cat 2 Normal kitty
Dog Big Dog => Cat 3 Mouse eater
Turtle 1 Old one => Dog Big Dog
Turtle 2 Young one => Turtle 1 Old one
Bird Small => Turtle 2 Young one
Turtle 3 Dead => Turtle 3 Dead
Cat 3 Mouse eater => Bird Small
Horse Big => Horse Big
Ok, i've solved it.
Solution - use custom sort list.
First I needed to split "Cat 1", "Cat 2" etc. into two columns - "Cat" and "1" , "Cat" and "2", then somewhere in other sheet remove Column A row duplicates.
Then add all filtered(without duplicates) rows to custom sort list. And use that custom sort list to sort Column A.

Excel - Transposing unsorted items

So lets say that I have a table like this..
TID Person Type Name
1 Andy F Orange
2 Andy M Beef
3 Andy V Carrot
4 Andy V Spinach
5 Bobby M Ham
6 Bobby F Apple
7 Bobby V Carrot
I want to transpose it so that it will be sorted according to the Type, I want it to look like so
Person F M V
Andy Orange Beef Carrot
Bobby Apple Ham Carrot
How can I manage to do this? Oh, and I'll also point some stuff in case you guys missed it:
The Types have no particular order, if you notice Andy's, the order is F M V V, but Bobby's is M F V.
Multiple instances of Type may occur, just like in Andy's case, notice the double V. But even so, I want it so that the only V that counts is the first one, thats why in the transposed table, the V is Carrot, because the Carrot occurred first (the Spinach is ignored).
I dont know if I ask too much, but even just the gist of the solution would be very helpful for me. The main point of my question is to ask how can I transpose such unsorted items, whilst paying attention to the 1st point. The 2nd point is important too, but I can wait or ask later if you guys dont feel like answering.
Thanks for reading, please share me your knowledge.
The easisest/quickest way is to create a new column before the TID column which has this formula in it.
=[Person]&"_"&[Type]
For instance say your data started in column B, see screen shots (TID), then the first formula would be:
=C2&"_"&D2 and will result in Andy_F being created. Copy this down for all the names you have.
You should have something like this:
NEW TID Person Type Name
Andy_F 1 Andy F Orange
Andy_M 2 Andy M Beef
Andy_V 3 Andy V Carrot
Andy_V 4 Andy V Spinach
Bobby_M 5 Bobby M Ham
Bobby_F 6 Bobby F Apple
Bobby_V 7 Bobby V Carrot
Next, set up a table like this (using copy unique items, if necessary), with unique names on the vertical and Types along the horizontal:
F M V
Andy [form]
Bobby
Where [form] is a vlookup formula as in the screen shots below:
Resulting in the correct table for you, once the formula is copied to all cells in the new table:
Vlookup will grab the first item that matches its search critera, so multiple matches will be ignored.
The formula for Andy F in the table is VLOOKUP($G2&"_"&H$1,$A$2:$E$8,5,0), with the data as in the screen shots.
A better way might be to use VBA, but this should do the trick.

Selecting Text from an R string to create a new object

I'm relatively new to R, and I'm currently stuck.
I have observations that are made up of legal articles, fe:
BIV:III,XXVIII.1(b);CIV:2.
So I splitted them resulting in a string listing each observation and the legal articles used. This looks like:
ArtAGr list of 400230
chr[1:2] "BIV:III,XXVIII.1(b)" "CIV:2"
chr[1:1] "ILA:2.3(b)"
chr[1:3] "BIV:IB.3(d)" "CIV:7,9" "ILA:VII.1"
The BIV and CIV would need to become my new variables. However, the observations vary, so some observations include both BIV and CIV, while others include other legal articles like ILA:II.3(b)
Now, I would like to create a dataframe from these guys, so I can group all the observations in a column for each major article.
Eventually, the perfect dataframe should look like:
Dispute BIV CIV ILA
1 III, XXVIII.1(b) 2 NA
2 NA NA II.3(b)
3 IV.3(d) 7,9 VII.1
4 II NA NA
So, I will need to create a new object grouping all observations who contain a text like BIV, and a O or N/A for those observations that do not use this legal article. Any thoughts would be greatly appreciated!
Thanks a lot!
Sven
Here's an approach:
# a vector of character strings (not the splitted ones)
vec <- c("BIV:III,XXVIII.1(b);CIV:2",
"ILA:II.3(b)",
"BIV:IB.3(d);CIV:7,9;ILA:VII.1")
# split strings
s <- strsplit(vec, "[;:]")
# target words
tar <- c("BIV", "CIV", "ILA")
# create data frame
setNames(as.data.frame(do.call(rbind, lapply(s, function(x)
replace(rep(NA_character_, length(tar)),
match(x[c(TRUE, FALSE)], tar), x[c(FALSE, TRUE)])))), tar)
The result:
BIV CIV ILA
1 III,XXVIII.1(b) 2 <NA>
2 <NA> <NA> II.3(b)
3 IB.3(d) 7,9 VII.1

Excel - get the highest number in a certain column, that contains text

I have these two sheets, that I'm using to keep track of my work. In one of the sheets, I have my overview, where I can see all of my tasks at hand. In other sheets, I have the different jobs I'm currently doing.
Now... I'm looking for at formula for Microsoft Excel, where I can do the following:
="GET THE HIGHEST ROW-NUMBER, IN A CERTAIN COLUMN, THAT ISN'T EMPTY, AND PUT THE TEXT FROM THAT COLUMN INTO ANOTHER CELL" (see examples of it further down)
Examples:
Let's say, that I insert this formula into D10, and to check the entire A-column, then this would be the result
Ex.1
A B C D
1 Foo
2 Bar
3 Is
4 An
5 Apple
6 From
7 Chile
8
9
10 Chile
Ex.2
A B C D
1 Foo
2 Bar
3 Is
4 An
5 Apple
6
7
8
9
10 Apple
Ex.3
A B C D
1 Foo
2 Bar
3 Is
4
5
6
7
8
9
10 Is
Ex.4
A B C D
1 Foo bar is
2 Also an
3 Egyptian God
4 Of pie
5
6
7
8
9
10 Of pie
On a last remark... Then I'm using this stupid danish version of Excel, so if you're a dane trying to solve this, then a danish formula would be 'B-E-A-UTIFUL'.
And remember, that it has to work across different sheets.
MY ATTEMPTS:
I Google around for about an hour... I found this, which I tried to understand:
=INDIRECT(CONCATENATE("R",MATCH(MAX(S4:S5),S4:S5,0)+3))
But I couldn't get it to work, because of this stupid danish Excel. I tried to understand it, then - and figured out, that it parsed and concatenated area as text and inserted that into the field - so I guess that wouldn't do the trick anyways.
Then my idea was to try to loop through all the cells in a column and check each of the cells, if they weren't empty, and if their row-number where higher than then previous. I quickly gave up on that one, because I couldn't find a way to make a for loop in Excel.
Then I've tried all other sorts of things (mainly experimenting with the MAX()-function).
If your data is in a sheet called data then try this formula to get the last text value in column A of that sheet
=LOOKUP(REPT("z";255);Data!A:A)
In Danish that should be
=SLÅ.OP(GENTAG("z";255);Data!A:A)

Resources