My question is how to make cells in one column subordinate to a cell in another column? Let me explain...
I'm using Excel to enter information from various dictionaries, in order to 1) make the information digital and 2) be able to sort the information in various ways, such as by Italian headwords, thus Italian - English, or by English headwords, thus English - Italian.
Note that there are also many other columns, not only the HEADWORD, but also DEFINITION, PART OF SPEECH, PRONUNCIATION, ETYMOLOGY, etc.
The problem arises when a certain headword has several definitions, and thus several different parts of speech and etymologies as well, among other things. Therefore, because of this individuality of each definition, I've decided to give each definition its own row. HOWEVER, these definitions in their respective rows all still belong to the headword, and thus need to be sorted by that headword, that is "subordinate" to that headword.
Perhaps an example might help:
1 | COLUMN A .............|............ COLUMN B .............|........... COLUMN C
2 | HEADWORD ...........|............ DEFINITION .............|........... PART OF SPEECH
3 | ................................|.............................................|..................... ......
4 | PICCIOTTU ..............|........... BOY ........................|........... NOUN
5 | ............................... |........... YOUNG MAN ..........|........... NOUN
6 | ................................|............ YOUNG ..................|........... ADJECTIVE
7 | CHIANU ..................|............ FLAT ......................|........... ADJECTIVE
8 | ...............................|............. SLOW ....................|........... ADVERB
9 | ...............................|............. OUTSIDE ...............|............ PREPOSITION
Now, if I want to sort by HEADWORD, I can do so but it will put CHIANU (row 7) first, then PICCIOTTU (row 4), followed by the empty rows. It will not associate the subordinate rows 5 and 6 with the headword to which they relate, same for rows 8 and 9.
So again, my question is:
- How can I make cells in one column subordinate to cells in another column, so that this will sort properly?
THANKS!!
Micheli Scalisi
Last edited by VBA Noob; 02-02-2009 at 07:37 AM.
Fill in the gaps in column 1...
HTH
I concur with CC... note you can do this quite quickly...
Highlight Column containing Headwords --> Edit -> GoTo -> Special -> Blanks -> OK
Now type in:
=
up arrow
Hold CTRL and press ENTER
My Recommended Reading:
Volatility
Sumproduct & Arrays
Pivot Intro
Email from XL - VBA & Outlook VBA
Function Dictionary & Function Translations
Dynamic Named Ranges
Fill them with what?
I thought of that, but I wasn't sure what to put in, nor did I want to clutter the HEADWORD column.
But I decided to add another column before the headword column, and copy all the headwords into that column, including the blanks. And then to fill in the blanks by adding the headword plus a number for each extra definition.
So I'd have:
1 | COLUMN A......|.....COLUMN B........|.......COLUMN C
2 | HIDDEN............|.....HEADWORD......|.......DEFINITION
3 | PICCIOTTU.......|.....PICCIOTTU.........|.......BOY
4 | PICCIOTTU1.....|...............................|.......YOUNG MAN
5 | PICCIOTTU2.....|...............................|.......YOUNG
6 | CHIANU...........|......CHIANU.............|.......FLAT
7 | CHIANU1.........|...............................|........SLOW
8 | CHIANU2.........|...............................|........OUTSIDE
So then all I have to do is sort by COLUMN A, and it will put PICCIOTTU first, then PICCIOTTU1 (second definition), and PICCIOTTU2 (third definition) last. Then I can hide the column. This works, but it's definitely not the ideal way of doing things, because I have to duplicate columns (B to A) and then fill in the blanks with the headword and add numbers to each of these. A bit much.
So I was hoping there was some way to just group these second and third blank rows to the headword, so that when sorted they act subordinately.
But maybe there's not a way to do this? I'll follow up with the next comment as well.
THANKS,
MICHELI SCALISI
I'd really like to try this, as it sounds like it might save time. However, I don't understand the directions.
I'm using Microsoft Excel 2007, so at the top it doesn't have FILE, EDIT, etc. like the older versions. So I can't find EDIT > GO TO and so forth, as per your instructions.
Are you familiar with the 2007 version, and is it possible to get these instructions for that version, and possibly in a little more detail, because I didn't understand
Now type in:
=
up arrow
I would greatly appreciate it!!
MICHELI SCALISI
Also, please see my reply to HTH. Perhaps you can add something to that, or it will provide further understanding of what I'm trying to do.
Just fill them in with the same headword instead of assigning a number to it. It should only sort by the headword itself & leave the rest in whatever order you put it in. Then you can show all definitions for the headword by using the Auto Filter function. Doing this, you would just select PICCIOTTU in the auto filter & see all corresponding definitions.
How would Excel know in what order to sort the definitions? Keep in mind, they won't necessarily be in the correct order as I enter them. So sorting three headword cells by PICCIOTTU would not necessarily have the definitions in the correct order, right?
I also don't know what the auto filter is, nor where to find it. Can you help?
By the way, I had another idea and wonder what you think of it. I thought of adding another small column before the definition, titled #. Here I would number the definitions. So COLUMN A (headword) rows 1 - 3 would be PICCIOTTU, blank, blank. Then COLUMN G (#) rows 1 - 3 would be 1, 2, 3. And COLUMN H (DEFINITIONS) would be the first definition, the second and then the third.
So sorting, I would choose COLUMN A, A-Z, and COLUMN G, Smallest to Largest. So it would put the row with Picciottu and (1) the first definition automatically, followed by the two blank rows with (2) and (3) in the # column.
Hopefully that makes sense. It works now, but this is because everything is in order anyway. So it's hard to say whether this will work in the future. The problem is some of these headwords will be taken from different sources, so their definitions, parts of speech, etymologies will all differ depending on the sources. So there will eventually be duplicates and additions to each headword, and I'm not sure if it will sort them correctly.
Let me know!
Micheli Scalisi
Take a look at the attachment. You'll see the arrows up top - try selecting a headword in the drop-down. Is that what you're after?
1. You can use conditional formatting to make repeated headwords appear invisible
2. You can use a custom sort order (Tools > Options > Custom Lists) to sort parts of speech however you wish.
Last edited by shg; 02-02-2009 at 09:21 PM.
Microsoft MVP - Excel
Entia non sunt multiplicanda sine necessitate
See attached.
1. I removed the leading spaces in your entries. Don't do that.
2. Headword cells have conditional formatting (select one and do Format > Conditional formatting to see); relAbv always refers to the cell above the cell in which it appears).
3. There is a custom list (Tools > Options > Custom Lists to see it) that controls the sort order of the Part of Speech Column. The cells in C2:C5 were used to create it.
4. There is a dynamic named range tbl (Insert > Name > Define to see) that refers to the list of words. The range will automatically adapt as you list additional words. Don't put anything extraneous below the list. You can copy the formatting down as necessary.
5. The Sort button is linked to a macro, SortIt, that sorts tbl first by Part of Speech using the custom list, then by Headword. Do Alt+F11 to see the macro.
Microsoft MVP - Excel
Entia non sunt multiplicanda sine necessitate
There are currently 1 users browsing this thread. (0 members and 1 guests)
Bookmarks