View Single Post
  #6   Report Post  
Posted to microsoft.public.excel.worksheet.functions
monir monir is offline
external usenet poster
 
Posts: 215
Default Transfer Multiple-Font Cells ??

Rick;

Wow ... Works perfectly and as desired!
Please allow me some time to continue testing to make sure there's no
conflict with the other macros and events.

I hope you don't mind me posting at some point your solution (with the
appropriate acknowledgement) on the other Excel Forum .

Thanks again for your tremendous help.


"Rick Rothstein" wrote:

Try this out. Right click the tab at the bottom of the CheckCirc worksheet
and select View Code from the popup menu that appears, then copy/paste the
following code into the code window that appeared...

Private Sub Worksheet_Change(ByVal Target As Range)
Dim X As Long
If Target.Count 1 Then Exit Sub
If Target.Address = "$J$41" Then
For X = 45 To 74
If Target.Value = "Vortex" Then
Cells(X, "M").Value = Cells(X, "G")
Else
Cells(X, "M").Value = Cells(X, "S")
End If
If Len(Cells(X, "M")) 0 Then
Cells(X, "M").Font.Name = "Arial"
Cells(X, "M").Characters(1, 1).Font.Name = "Wingdings 3"
End If
Next
End If
End Sub

Now, go back to your worksheet and change the value in J41 to Vortex and
then to something else and tell me if it works the way you want.

Note: Before you start, you can clear out the contents of M45:M74 as the
above code will now be handling what is placed in those cells.

--
Rick (MVP - Excel)


"monir" wrote in message
...
Rick and Sheeloo;

Thank you for your prompt and encouraging replies!

Here's the info. you need:
--Excel:: 2003 (Win XP SP 3)
--Worksheet name:: CheckCirc
--cells with a "Wingdings 3" Font char:: G45:G74, S45:S74
--"Wingdings 3" char is always the 1st char followed by a space followed
by
a one- or two-digit number in "Arial" Font
--M45 formula:: = IF($J$41= "Vortex", G45, S45)
--formula in M45 is copied down to M74

Kind regards.


"Rick Rothstein" wrote:

If the value in a cell is the result of a formula, then you cannot make
parts of the result different, font-wise, from other parts of the
result...
it is an all-or-nothing result only. You will need to use Change event
code
to perform what your functions are performing in order that it can place
pure text in the cell which it can then apply different font treatments
to
parts of it. If you supply more details about the worksheet's layout and
contents and formula requirements (don't just give a single cell example
if
more than one cell will need this treatment), then someone here could
create
some event code for you to try out.

--
Rick (MVP - Excel)


"monir" wrote in message
...
Hello;

I did post this question earlier (with the same Subject) at MrExcel
forum.
A single respondent DaveMeade (who has put a considerable effort and
still
trying) and myself have tested few ideas but nothing has worked so far.
The lack of responses suggests the solution is either too simple or too
complex!!
By reposting in this MS Excel DG (and I apologise if this is considered
by
some as cross-posting!) the chances of a MS expert providing the
solution
increases considerably.
My earlier thread is located at:
http://www.mrexcel.com/forum/showthr...9&goto=newpost

Here's the problem description:
1) Numerous cells in columns A and B on a w/s have a combination of two
fonts each.
For example, cell A5 shows: & 15 on the Formula Bar. The & sign is in
"Wingdings 3" Font code 38, and 15 is in "Arial".
Cell A5 correctly displays: | 15 (i.e.; north east arrow,space,15).
The "wingdings 3" char is always the first char followed by a space
followed
by a single- or double-digit number.

2) Other cells on the w/s reference those cells.
For example, cell C5:: = IF($J$41= "Vortex", A5, B5)

Q: When the above condition is true: Is there a way to return | 15
(i.e.;
north east arrow,space,15) in C5, exactly as displayed in A5 ??

3) DaveMeade suggested the following, but it didn't work!!
C5:: =IF($J$41="Vortex",WingDingFormat(A5), B5)

Function WingdingFormat(rng As Range)
WingdingFormat = rng.Value
ActiveCell.Characters(Start:=1, Length:=1).Font.Name = "Wingdings 3"
End Function

4) The above approach appears to have the potential of solving the
problem
with some expert tweaking!

Your help would be greatly appreciated.

Thank you kindly.