View Single Post
  #4   Report Post  
Posted to microsoft.public.excel.programming
Tom Ogilvy Tom Ogilvy is offline
external usenet poster
 
Posts: 6,953
Default Code to bold names within a cell- With a twist

There isn't a clean way to do what you want unless you want to pad the
characters with spaces and use a monospaced font.

The alternative might be to just write one name in a cell and space your
cells out so each current row will consist of multiple rows. then you hide
gridlines and apply boarderss to make these look like single cells. this
would allow you to stack as many names as you want in a virtual cell. You
could further expand it so that each current column would have 2 or more
columns and that would allow you to use your double (or more) columns of
names and they would be lined up. Again, visually, you use boarders to make
these look like individual large cells if that is the desire.

This would make bolding a name trivial as you would just bold that cell.
You could also make your virtual rows of uniform height and your vitual
columns of uniform width.

--
Regards,
Tom Ogilvy

"macro_guy34345" wrote:

Well, that definitly helps, the problem is that this is going to be seen by a
lot of vice-prez's. So I need to formatting to look really good. Is there any
way to align the first name to the left of the cell and the second name to
the right of the cell?

Tom Jones Bob Denver
Dave Braine Meg Olvie

Something like that. I'll be honest, I am VERY new to vba. I am not really
sure what to do here. My boss definitly wants it to be in a columner format
and very professional looking.

Thanks again!
"Tom Ogilvy" wrote:

Keep a record of who needs to be highlighted by name and location in the grid
(or run it as a separate program)

you can bold a part of a string with

Sub BoldThe()
s = "Running in the Woods is hard"
i = InStr(1, s, "the", vbTextCompare)
ActiveCell.Value = s
ActiveCell.Characters(i, 3).Font.Bold = True
ActiveCell.WrapText = True
ActiveCell.EntireRow.AutoFit
End Sub

as a demonstration. The above is probably applicable for your second
column. Pick a standard column width, just append your names with no
chr(10) and when done, autofit the rows. The names won't necessarily be
lined up in a columnar fashion. If you need columnar, then you two column
approach seems good. You might do better with a mono-spaced font like
courier new. Also using a smaller font size might help.

--
Regards,
Tom Ogilvy


"macro_guy34345" wrote:

I have two problems, but first a little background:

I have a worksheet that lists names, followed by the names are about 5
columns, two of which are a "capabilities" and "results" ranking. Each of
these columns only has 5 possible answers that can be put in. On another page
I have a 5x5 grid with Capabilities Ranking on the Vertical Axis and Results
on the Horiz. My macro loops through the data sheet and the places each
person's name in the appropriate cell on the grid.

The code places the people one on top of another and re-sizes the cell so
that you can see everyone's name. SO, one cell in the grid may look like
this....

John
Sally
Sue
Bob

Here are the problems:

1. There is another column of data that I have added to my array that holds
the employee's "develop on date". If this date is less than a a year away, I
want their name to be bold on the grid. The obvious problem here is bolding
one person's name and not the entire cell.

2. If more than 30 people have the same ranking, the re-sizer will try to
re-size the row greater than 490.5 (not allowed by excel) and it will crash.
I think this is a tougher question than the first. How in the world can I
prevent this. Is there anyway to say if there are more than 29 people who fit
this description, double stack them, ie.
Bob Sally
John David
Stuart Bob

I really don't know, I have no clue as to how I am supposed to solve that
problem.


THANK YYOU SO MUCH IN ADVANCE!!!!!